Merge branch 'local-ocamlbuild' into local-trunk
[SXSI/xpathcomp.git] / src / hcons.mli
diff --git a/src/hcons.mli b/src/hcons.mli
new file mode 100644 (file)
index 0000000..2e18f82
--- /dev/null
@@ -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