module Callback: 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
の第一引数として与えることができます。