module Callback:Caml の値の C ランタイムへの登録sig
..end
このモジュールを使うと Caml の値を C ランタイムに名前付きで登録することができます。
C のコードからは、登録した Caml の関数を呼んだり、登録した Caml の例外を発生させることができるようになります。
val register : string -> 'a -> unit
Callback.register n v
は値 v
を名前 n
で登録します。
C のコードからは caml_named_value(n)
として v
へのハンドルを取り出すことができます。val register_exception : string -> exn -> unit
Callback.register_exception n exn
は例外値 exn
に格納されている例外を名前 n
で登録します。
C のコードからは caml_named_value(n)
としてその例外へのハンドルを取り出すことができます。
これによって取り出された例外値は raise_constant
や raise_with_arg
の第一引数に渡すのに適切な値になります。