X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2Fhcons.mli;fp=src%2Fhcons.mli;h=2e18f82446c541a096ce3027ddf6e590245f56fe;hb=4b52da1a20a4fe031930bb96d2ca46bec06dc529;hp=0000000000000000000000000000000000000000;hpb=a223af3254fb51c279cfbccdc18c59484fdca74e;p=SXSI%2Fxpathcomp.git diff --git a/src/hcons.mli b/src/hcons.mli new file mode 100644 index 0000000..2e18f82 --- /dev/null +++ b/src/hcons.mli @@ -0,0 +1,27 @@ +module type SA = + sig + type data + type t + val make : data -> t + val node : t -> data + val hash : t -> int + val uid : t -> Uid.t + val equal : t -> t -> bool + val stats : unit -> unit + end + +module type S = + sig + type data + type t = private { id : Uid.t; + key : int; + node : data } + val make : data -> t + val node : t -> data + val hash : t -> int + val uid : t -> Uid.t + val equal : t -> t -> bool + val stats : unit -> unit + end + +module Make (H : Hashtbl.HashedType) : S with type data = H.t