Module Core_kernel__Core_int.Set.Tree

include Core_kernel.Core_set_intf.Make_S_plain_tree(Elt).S
val sexp_of_t : t ‑> Sexplib.Sexp.t
val compare : t ‑> t ‑> Core_kernel__.Import.int
val length : t ‑> int
val is_empty : t ‑> bool
val iter : t ‑> f:(Elt.t ‑> unit) ‑> unit
val fold : t ‑> init:'accum ‑> f:('accum ‑> Elt.t ‑> 'accum) ‑> 'accum
val fold_result : t ‑> init:'accum ‑> f:('accum ‑> Elt.t ‑> ('accum'eBase.Result.t) ‑> ('accum'eBase.Result.t
val exists : t ‑> f:(Elt.t ‑> bool) ‑> bool
val for_all : t ‑> f:(Elt.t ‑> bool) ‑> bool
val count : t ‑> f:(Elt.t ‑> bool) ‑> int
val sum : (module Base.Commutative_group.S with type t = 'sum) ‑> t ‑> f:(Elt.t ‑> 'sum) ‑> 'sum
val find : t ‑> f:(Elt.t ‑> bool) ‑> Elt.t option
val find_map : t ‑> f:(Elt.t ‑> 'a option) ‑> 'a option
val to_list : t ‑> Elt.t list
val to_array : t ‑> Elt.t array
val invariants : t ‑> bool
val mem : t ‑> Elt.t ‑> bool
val add : t ‑> Elt.t ‑> t
val remove : t ‑> Elt.t ‑> t
val union : t ‑> t ‑> t
val inter : t ‑> t ‑> t
val diff : t ‑> t ‑> t
val symmetric_diff : t ‑> t ‑> (Elt.tElt.tBase.Either.t Base.Sequence.t
val compare_direct : t ‑> t ‑> int
val equal : t ‑> t ‑> bool
val is_subset : t ‑> of_:t ‑> bool
val subset : t ‑> t ‑> bool
val fold_until : t ‑> init:'b ‑> f:('b ‑> Elt.t ‑> ('b'stopCore_kernel.Core_set_intf.Set_intf.Continue_or_stop.t) ‑> ('b'stopCore_kernel.Core_set_intf.Set_intf.Finished_or_stopped_early.t
val fold_right : t ‑> init:'b ‑> f:(Elt.t ‑> 'b ‑> 'b) ‑> 'b
val iter2 : t ‑> t ‑> f:([ `Both of Elt.t * Elt.t | `Left of Elt.t | `Right of Elt.t ] ‑> unit) ‑> unit
val filter : t ‑> f:(Elt.t ‑> bool) ‑> t
val partition_tf : t ‑> f:(Elt.t ‑> bool) ‑> t * t
val elements : t ‑> Elt.t list
val min_elt : t ‑> Elt.t option
val min_elt_exn : t ‑> Elt.t
val max_elt : t ‑> Elt.t option
val max_elt_exn : t ‑> Elt.t
val choose : t ‑> Elt.t option
val choose_exn : t ‑> Elt.t
val split : t ‑> Elt.t ‑> t * Elt.t option * t
val group_by : t ‑> equiv:(Elt.t ‑> Elt.t ‑> bool) ‑> t list
val find_exn : t ‑> f:(Elt.t ‑> bool) ‑> Elt.t
val find_index : t ‑> int ‑> Elt.t option
val nth : t ‑> int ‑> Elt.t option
val remove_index : t ‑> int ‑> t
val to_tree : t ‑> t
val to_sequence : ?order:[ `Decreasing | `Increasing ] ‑> ?greater_or_equal_to:Elt.t ‑> ?less_or_equal_to:Elt.t ‑> t ‑> Elt.t Base.Sequence.t
val merge_to_sequence : ?order:[ `Decreasing | `Increasing ] ‑> ?greater_or_equal_to:Elt.t ‑> ?less_or_equal_to:Elt.t ‑> t ‑> t ‑> (Elt.tElt.tCore_kernel.Core_set_intf.Set_intf.Merge_to_sequence_element.t Base.Sequence.t
val to_map : t ‑> f:(Elt.t ‑> 'data) ‑> (Elt.t'dataElt.comparator_witnessCore_kernel.Core_set_intf.Map.t
val empty : t
val singleton : Elt.t ‑> t
val union_list : t list ‑> t
val of_list : Elt.t list ‑> t
val of_array : Elt.t array ‑> t
val of_sorted_array : Elt.t array ‑> t Base.Or_error.t
val of_sorted_array_unchecked : Elt.t array ‑> t
val of_increasing_iterator_unchecked : len:int ‑> f:(int ‑> Elt.t) ‑> t
val stable_dedup_list : Elt.t list ‑> Elt.t list
val map : ('a'bCore_kernel.Core_set_intf.Tree.t ‑> f:('a ‑> Elt.t) ‑> t
val filter_map : ('a'bCore_kernel.Core_set_intf.Tree.t ‑> f:('a ‑> Elt.t option) ‑> t
val of_tree : t ‑> t
val of_hash_set : Elt.t Core_kernel.Hash_set.t ‑> t
val of_hashtbl_keys : (Elt.t'aCore_kernel__.Core_hashtbl.t ‑> t
module Provide_of_sexp : functor (Elt : sig ... end) -> sig ... end
include Core_kernel.Sexpable.S with type t := t
type t
val t_of_sexp : Base__.Sexplib.Sexp.t ‑> t
val sexp_of_t : t ‑> Base__.Sexplib.Sexp.t