module type S = 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 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