Module type Set_intf.Creators_and_accessors_generic
include Accessors_generic
include Set.Accessors_generic
val length : ('a, 'b) t -> intval is_empty : ('a, 'b) t -> boolval iter : ('a, 'b) t -> f:('a elt -> unit) -> unitval fold : ('a, 'b) t -> init:'accum -> f:('accum -> 'a elt -> 'accum) -> 'accumval fold_result : ('a, 'b) t -> init:'accum -> f:('accum -> 'a elt -> ('accum, 'e) Base.Result.t) -> ('accum, 'e) Base.Result.tval exists : ('a, 'b) t -> f:('a elt -> bool) -> boolval for_all : ('a, 'b) t -> f:('a elt -> bool) -> boolval count : ('a, 'b) t -> f:('a elt -> bool) -> intval sum : (module Base__.Container_intf.Summable with type t = 'sum) -> ('a, 'b) t -> f:('a elt -> 'sum) -> 'sumval find : ('a, 'b) t -> f:('a elt -> bool) -> 'a elt optionval find_map : ('a, 'c) t -> f:('a elt -> 'b option) -> 'b optionval to_list : ('a, 'b) t -> 'a elt listval to_array : ('a, 'b) t -> 'a elt array
val invariants : ('a, 'cmp, ('a, 'cmp) t -> bool) optionsval mem : ('a, 'cmp, ('a, 'cmp) t -> 'a elt -> bool) optionsval add : ('a, 'cmp, ('a, 'cmp) t -> 'a elt -> ('a, 'cmp) t) optionsval remove : ('a, 'cmp, ('a, 'cmp) t -> 'a elt -> ('a, 'cmp) t) optionsval union : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> ('a, 'cmp) t) optionsval inter : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> ('a, 'cmp) t) optionsval diff : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> ('a, 'cmp) t) optionsval symmetric_diff : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> ('a elt, 'a elt) Base.Either.t Base.Sequence.t) optionsval compare_direct : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> int) optionsval equal : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> bool) optionsval is_subset : ('a, 'cmp, ('a, 'cmp) t -> of_:('a, 'cmp) t -> bool) options
module Named : sig ... endval fold_until : ('a, 'c) t -> init:'b -> f:('b -> 'a elt -> ('b, 'final) Base__.Set_intf.Continue_or_stop.t) -> finish:('b -> 'final) -> 'finalval fold_right : ('a, 'c) t -> init:'b -> f:('a elt -> 'b -> 'b) -> 'bval iter2 : ('a, 'cmp, ('a, 'cmp) t -> ('a, 'cmp) t -> f:([ `Both of 'a elt * 'a elt | `Left of 'a elt | `Right of 'a elt ] -> unit) -> unit) optionsval filter : ('a, 'cmp, ('a, 'cmp) t -> f:('a elt -> bool) -> ('a, 'cmp) t) optionsval partition_tf : ('a, 'cmp, ('a, 'cmp) t -> f:('a elt -> bool) -> ('a, 'cmp) t * ('a, 'cmp) t) optionsval elements : ('a, 'b) t -> 'a elt listval min_elt : ('a, 'b) t -> 'a elt optionval min_elt_exn : ('a, 'b) t -> 'a eltval max_elt : ('a, 'b) t -> 'a elt optionval max_elt_exn : ('a, 'b) t -> 'a eltval choose : ('a, 'b) t -> 'a elt optionval choose_exn : ('a, 'b) t -> 'a eltval split : ('a, 'cmp, ('a, 'cmp) t -> 'a elt -> ('a, 'cmp) t * 'a elt option * ('a, 'cmp) t) optionsval group_by : ('a, 'cmp, ('a, 'cmp) t -> equiv:('a elt -> 'a elt -> bool) -> ('a, 'cmp) t list) optionsval find_exn : ('a, 'b) t -> f:('a elt -> bool) -> 'a eltval nth : ('a, 'b) t -> int -> 'a elt optionval remove_index : ('a, 'cmp, ('a, 'cmp) t -> int -> ('a, 'cmp) t) optionsval to_tree : ('a, 'cmp) t -> ('a elt, 'cmp) treeval to_sequence : ('a, 'cmp, ?order:[ `Decreasing | `Increasing ] -> ?greater_or_equal_to:'a elt -> ?less_or_equal_to:'a elt -> ('a, 'cmp) t -> 'a elt Base.Sequence.t) optionsval binary_search : ('a, 'cmp, ('a, 'cmp) t -> compare:('a elt -> 'key -> int) -> [ `First_equal_to | `First_greater_than_or_equal_to | `First_strictly_greater_than | `Last_equal_to | `Last_less_than_or_equal_to | `Last_strictly_less_than ] -> 'key -> 'a elt option) optionsval binary_search_segmented : ('a, 'cmp, ('a, 'cmp) t -> segment_of:('a elt -> [ `Left | `Right ]) -> [ `First_on_right | `Last_on_left ] -> 'a elt option) optionsval merge_to_sequence : ('a, 'cmp, ?order:[ `Decreasing | `Increasing ] -> ?greater_or_equal_to:'a elt -> ?less_or_equal_to:'a elt -> ('a, 'cmp) t -> ('a, 'cmp) t -> ('a elt, 'a elt) Base__.Set_intf.Merge_to_sequence_element.t Base.Sequence.t) options
val to_map : ('a, 'cmp, ('a, 'cmp) t -> f:('a elt -> 'b) -> ('a elt, 'b, 'cmp cmp) Base.Map.t) optionsval quickcheck_observer : 'a elt Quickcheck.Observer.t -> ('a, 'cmp) t Quickcheck.Observer.tval quickcheck_shrinker : ('a, 'cmp, 'a elt Quickcheck.Shrinker.t -> ('a, 'cmp) t Quickcheck.Shrinker.t) options
include Creators_generic with type ('a, 'b, 'c) options := ('a, 'b, 'c) options with type ('a, 'b) t := ('a, 'b) t with type ('a, 'b) tree := ('a, 'b) tree with type 'a elt := 'a elt with type 'cmp cmp := 'cmp cmp
include Set.Creators_generic
type ('a, 'cmp) ttype ('a, 'cmp) settype ('a, 'cmp) treetype 'a elttype ('a, 'cmp, 'z) optionstype 'cmp cmp
val empty : ('a, 'cmp, ('a, 'cmp) t) optionsval singleton : ('a, 'cmp, 'a elt -> ('a, 'cmp) t) optionsval union_list : ('a, 'cmp, ('a, 'cmp) t list -> ('a, 'cmp) t) optionsval of_list : ('a, 'cmp, 'a elt list -> ('a, 'cmp) t) optionsval of_array : ('a, 'cmp, 'a elt array -> ('a, 'cmp) t) optionsval of_sorted_array : ('a, 'cmp, 'a elt array -> ('a, 'cmp) t Base.Or_error.t) optionsval of_sorted_array_unchecked : ('a, 'cmp, 'a elt array -> ('a, 'cmp) t) optionsval of_increasing_iterator_unchecked : ('a, 'cmp, len:int -> f:(int -> 'a elt) -> ('a, 'cmp) t) optionsval stable_dedup_list : ('a, 'b, 'a elt list -> 'a elt list) optionsval map : ('b, 'cmp, ('a, 'c) set -> f:('a -> 'b elt) -> ('b, 'cmp) t) optionsval filter_map : ('b, 'cmp, ('a, 'c) set -> f:('a -> 'b elt option) -> ('b, 'cmp) t) optionsval of_tree : ('a, 'cmp, ('a elt, 'cmp) tree -> ('a, 'cmp) t) options
val of_hash_set : ('a, 'cmp, 'a elt Hash_set.t -> ('a, 'cmp) t) optionsval of_hashtbl_keys : ('a, 'cmp, ('a elt, _) Hashtbl.t -> ('a, 'cmp) t) optionsval of_map_keys : ('a elt, _, 'cmp cmp) Base.Map.t -> ('a, 'cmp) tNever requires a comparator because it can get one from the input
Map.t.
val quickcheck_generator : ('a, 'cmp, 'a elt Quickcheck.Generator.t -> ('a, 'cmp) t Quickcheck.Generator.t) options