Module Stable.V1

type nonrec ('a, 'b) t = ('a'b) t
module type S = sig ... end
include Set_intf.For_deriving with type ('a, 'b) t := ('a'b) t
include Base.Set.For_deriving with type ('a, 'b) t := ('a'b) t
module type Sexp_of_m = sig ... end
module type M_of_sexp = sig ... end
module type Compare_m = sig ... end
module type Equal_m = sig ... end
module type Hash_fold_m = Base.Hasher.S
val sexp_of_m__t : (module Sexp_of_m with type t = 'elt) -> ('elt'cmp) t -> Base.Sexp.t
val m__t_of_sexp : (module M_of_sexp with type comparator_witness = 'cmp and type t = 'elt) -> Base.Sexp.t -> ('elt'cmp) t
val compare_m__t : (module Compare_m) -> ('elt'cmp) t -> ('elt'cmp) t -> int
val equal_m__t : (module Equal_m) -> ('elt'cmp) t -> ('elt'cmp) t -> bool
val hash_fold_m__t : (module Hash_fold_m with type t = 'elt) -> Base.Hash.state -> ('elt_) t -> Base.Hash.state
val hash_m__t : (module Hash_fold_m with type t = 'elt) -> ('elt_) t -> int
module M = Base.Set.M

The following *bin* functions support bin-io on base-style sets, e.g.:

type t = Set.M(String).t [@@deriving bin_io] 
val bin_shape_m__t : ('a'b) Set_intf.Elt_bin_io.t -> Bin_prot.Shape.t
val bin_size_m__t : ('a'b) Set_intf.Elt_bin_io.t -> ('a'b) t Bin_prot.Size.sizer
val bin_write_m__t : ('a'b) Set_intf.Elt_bin_io.t -> ('a'b) t Bin_prot.Write.writer
val bin_read_m__t : ('a'b) Set_intf.Elt_bin_io.t -> ('a'b) t Bin_prot.Read.reader
val __bin_read_m__t__ : ('a'b) Set_intf.Elt_bin_io.t -> (Base.Int.t -> ('a'b) t) Bin_prot.Read.reader

The following quickcheck* functions support deriving quickcheck on base-style sets, e.g.:

type t = Set.M(String).t [@@deriving quickcheck] 
module type Quickcheck_generator_m = sig ... end
module type Quickcheck_observer_m = sig ... end
module type Quickcheck_shrinker_m = sig ... end
val quickcheck_generator_m__t : (module Quickcheck_generator_m with type comparator_witness = 'cmp and type t = 'a) -> ('a'cmp) t Quickcheck.Generator.t
val quickcheck_observer_m__t : (module Quickcheck_observer_m with type comparator_witness = 'cmp and type t = 'a) -> ('a'cmp) t Quickcheck.Observer.t
val quickcheck_shrinker_m__t : (module Quickcheck_shrinker_m with type comparator_witness = 'cmp and type t = 'a) -> ('a'cmp) t Quickcheck.Shrinker.t
module Make (Elt : sig ... end) : S with type elt := Elt.t with type elt_comparator_witness := Elt.comparator_witness