sig
type 'a t
val copy : 'a Hash_set.t -> 'a Hash_set.t
val add : 'a Hash_set.t -> 'a -> unit
val strict_add : 'a Hash_set.t -> 'a -> unit
val remove : 'a Hash_set.t -> 'a -> unit
val strict_remove : 'a Hash_set.t -> 'a -> unit
val clear : 'a Hash_set.t -> unit
val fold : 'a Hash_set.t -> init:'b -> f:('b -> 'a -> 'b) -> 'b
val iter : 'a Hash_set.t -> f:('a -> unit) -> unit
val length : 'a Hash_set.t -> int
val mem : 'a Hash_set.t -> 'a -> bool
val is_empty : 'a Hash_set.t -> bool
val to_list : 'a Hash_set.t -> 'a list
val equal : 'a Hash_set.t -> 'a Hash_set.t -> bool
val filter : 'a Hash_set.t -> f:('a -> bool) -> 'a Hash_set.t
val diff : 'a Hash_set.t -> 'a Hash_set.t -> 'a Hash_set.t
type 'a hash_set = 'a Hash_set.t
module Poly :
sig
type 'a t = 'a Hash_set.hash_set
type 'a sexpable = 'a t
val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a sexpable -> Sexplib.Sexp.t
val t_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a sexpable
val create :
?growth_allowed:bool -> ?size:int -> unit -> 'a Hash_set.Poly.t
val of_list : 'a list -> 'a Hash_set.Poly.t
end
module Make :
functor (H : Core_hashtbl.Key) ->
sig
type elem = H.t
type t = Hash_set.Make.elem Hash_set.hash_set
val create :
?growth_allowed:bool -> ?size:int -> unit -> Hash_set.Make.t
val of_list : H.t list -> Hash_set.Make.t
type sexpable = t
val sexp_of_t : sexpable -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> sexpable
end
module Make_binable :
functor
(H : sig
type t
val compare : t -> t -> int
val hash : t -> int
type sexpable = t
val sexp_of_t : sexpable -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> sexpable
type binable = t
val bin_size_t : binable Bin_prot.Size.sizer
val bin_write_t : binable Bin_prot.Map_to_safe.writer
val bin_write_t_ : binable Bin_prot.Unsafe_write_c.writer
val bin_read_t : binable Bin_prot.Read_ml.reader
val bin_read_t_ : binable Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> binable) Bin_prot.Unsafe_read_c.reader
val bin_writer_t : binable Bin_prot.Type_class.writer
val bin_reader_t : binable Bin_prot.Type_class.reader
val bin_t : binable Bin_prot.Type_class.t
end) ->
sig
type elem = H.t
type t = Hash_set.Make_binable.elem Hash_set.hash_set
val create :
?growth_allowed:bool ->
?size:int -> unit -> Hash_set.Make_binable.t
val of_list : H.t list -> Hash_set.Make_binable.t
type sexpable = t
val sexp_of_t : sexpable -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> sexpable
type binable = t
val bin_size_t : binable Bin_prot.Size.sizer
val bin_write_t : binable Bin_prot.Map_to_safe.writer
val bin_write_t_ : binable Bin_prot.Unsafe_write_c.writer
val bin_read_t : binable Bin_prot.Read_ml.reader
val bin_read_t_ : binable Bin_prot.Unsafe_read_c.reader
val bin_read_t__ : (int -> binable) Bin_prot.Unsafe_read_c.reader
val bin_writer_t : binable Bin_prot.Type_class.writer
val bin_reader_t : binable Bin_prot.Type_class.reader
val bin_t : binable Bin_prot.Type_class.t
end
end