Module Hash_set_gen

type 'a bucket =
  1. | Empty
  2. | Cons of {
    1. mutable key : 'a;
    2. mutable next : 'a bucket;
    }
type 'a t = {
  1. mutable size : int;
  2. mutable data : 'a bucket array;
  3. initial_size : int;
}
val create : int -> 'a t
val clear : 'a t -> unit
val reset : 'a t -> unit
val length : 'a t -> int
val resize : ('a t -> 'b -> int) -> 'a t -> unit
val iter : 'a t -> ('b -> 'c) -> unit
val fold : 'a t -> 'b -> ('c -> 'd -> 'e) -> 'f
val to_list : 'a t -> 'b list
val small_bucket_mem : ('a -> 'b -> bool) -> 'c -> 'd bucket -> bool
val remove_bucket : 'a t -> int -> 'b -> prec:'c bucket -> 'd bucket -> ('e -> 'f -> bool) -> unit
module type S = sig ... end