Module CamlInterface.Univ

module Univ: sig .. end

type t 

The universal type

type 'a key 

Conversion between the universal type and 'a

val new_key : ?eq:('a -> 'a -> bool) ->
?hash:('a -> int) ->
?print:('a -> string) -> unit -> 'a key

Create a new key. Values packed with a given key can only be unpacked by the same key.

print : a printing function to print the content of a universal value. Default just returns "opaque".
val pack : key:'a key -> 'a -> t
val unpack : key:'a key -> t -> 'a option
val compatible : key:'a key -> t -> bool
val eq : t -> t -> bool
val hash : t -> int
val print : t -> string
val string : string key
val int : int key
val float : float key
val bool : bool key
val unit : unit key
val pair : 'a key ->
'b key -> ('a * 'b) key
val list : 'a key -> 'a list key
val array : 'a key -> 'a array key