Safety before Techfest
[SXSI/xpathcomp.git] / hcons.mli
index ceb33c2..dcdcb69 100644 (file)
--- a/hcons.mli
+++ b/hcons.mli
@@ -1,21 +1,25 @@
+module type SA =
+  sig
+    type data
+    type t 
+    val make : data -> t
+    val node : t -> data
+    val hash : t -> int
+    val uid : t -> int
+    val equal : t -> t -> bool
+  end
+
 module type S =
   sig
     type data
-    type t
+    type t = private { id : int;
+                      key : int;
+                      node : data }
     val make : data -> t
     val node : t -> data
     val hash : t -> int
     val uid : t -> int
     val equal : t -> t -> bool
   end
-module Make :
-  functor (H : Hashtbl.HashedType) ->
-sig
-  type data = H.t
-  type t
-  val make : data -> t
-  val node : t -> data
-  val hash : t -> int
-  val uid : t -> int
-  val equal : t -> t -> bool
-end
+
+module Make (H : Hashtbl.HashedType) : S with type data = H.t