Module type Set.Creators_genericSource
val empty : ('a, 'cmp, ('a, 'cmp) t) create_optionsval singleton : ('a, 'cmp, 'a elt -> ('a, 'cmp) t) create_optionsval union_list : ('a, 'cmp, ('a, 'cmp) t list -> ('a, 'cmp) t) create_optionsval of_list : ('a, 'cmp, 'a elt list -> ('a, 'cmp) t) create_optionsval of_sequence :
('a, 'cmp, 'a elt Base.Sequence.t -> ('a, 'cmp) t) create_optionsval of_array : ('a, 'cmp, 'a elt array -> ('a, 'cmp) t) create_optionsval of_sorted_array :
('a, 'cmp, 'a elt array -> ('a, 'cmp) t Base.Or_error.t) create_optionsval of_sorted_array_unchecked :
('a, 'cmp, 'a elt array -> ('a, 'cmp) t) create_optionsval of_increasing_iterator_unchecked :
('a, 'cmp, len:int -> f:(int -> 'a elt) -> ('a, 'cmp) t) create_optionsval stable_dedup_list : ('a, _, 'a elt list -> 'a elt list) create_optionsval map :
('b, 'cmp, ('a, _) set -> f:('a -> 'b elt) -> ('b, 'cmp) t) create_optionsThe 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 filter_map :
('b, 'cmp, ('a, _) set -> f:('a -> 'b elt option) -> ('b, 'cmp) t)
create_optionsval of_tree : ('a, 'cmp, ('a, 'cmp) tree -> ('a, 'cmp) t) create_options