10 val equal : t -> t -> bool
12 val with_id : Uid.t -> t
19 type t = private { id : Uid.t;
26 val equal : t -> t -> bool
29 val with_id : Uid.t -> t
32 module Make (H : Hashtbl.HashedType) : S with type data = H.t =
34 let uid_make = Uid.make_maker()
36 type t = { id : Uid.t;
42 let equal t1 t2 = t1 == t2
43 module WH = Weak.Make( struct
47 let equal a b = a == b || H.equal a.node b.node
49 let pool = WH.create MED_H_SIZE
51 let cell = { id = uid_make(); key = H.hash x; node = x } in
57 WH.iter (fun r -> if r.id == id then raise (Found r)) pool;