package hardcaml
Module Flags.Set
module Elt : sig ... endmodule Diff : sig ... endtype t = (Elt.t, Elt.comparator_witness) Base.Set.tinclude Diffable.S_plain with type t := t and module Diff := Diff
include Base.Set.Creators_generic
with type ('a, 'b) set := ('a, 'b) Base.Set.t
with type ('a, 'b) t := t
with type ('a, 'b) tree :=
(Elt.t, Elt.comparator_witness) Base.Set.Using_comparator.Tree.t
with type 'a elt := Elt.t
with type 'c cmp := Elt.comparator_witness
with type ('a, 'b, 'c) create_options :=
('a, 'b, 'c) Base.Set.Without_comparator.t
val empty : ('a, 'cmp, t) Base.Set.Without_comparator.tThe types of map and filter_map are subtle. The input set, ('a, _) set, reflects the fact that these functions take a set of *any* type, with any comparator, while the output set, ('b, 'cmp) t, reflects that the output set has the particular 'cmp of the creation function. The comparator can come in one of three ways, depending on which set module is used
Set.map-- comparator comes as an argumentSet.Poly.map-- comparator is polymorphic comparisonFoo.Set.map-- comparator isFoo.comparator
val of_tree :
('a,
'cmp,
(Elt.t, Elt.comparator_witness) Base.Set.Using_comparator.Tree.t ->
t)
Base.Set.Without_comparator.tval of_map_keys : (Elt.t, _, Elt.comparator_witness) Base.Map.t -> tNever requires a comparator because it can get one from the input Map.t.
module Provide_of_sexp (Elt : sig ... end) : sig ... endmodule Provide_bin_io (Elt : sig ... end) : Bin_prot.Binable.S with type t := tmodule Provide_hash (Elt : Base.Hasher.S with type t := Elt.t) : sig ... end