sig
type t = (Elt.t, Elt.comparator) Core_set_intf.S.tree
type ('a, 'b) t_ = Core_set_intf.S.Tree.t
val empty : ('a, 'comparator, ('a, 'comparator) t_) without_comparator
val singleton :
('a, 'comparator, 'a elt_ -> ('a, 'comparator) t_) without_comparator
val union_list :
('a, 'comparator, ('a, 'comparator) t_ list -> ('a, 'comparator) t_)
without_comparator
val of_list :
('a, 'comparator, 'a elt_ list -> ('a, 'comparator) t_)
without_comparator
val of_array :
('a, 'comparator, 'a elt_ array -> ('a, 'comparator) t_)
without_comparator
val of_sorted_array :
('a, 'comparator, 'a elt_ array -> ('a, 'comparator) t_ Or_error.t)
without_comparator
val of_sorted_array_unchecked :
('a, 'comparator, 'a elt_ array -> ('a, 'comparator) t_)
without_comparator
val stable_dedup_list :
('a, 'b, 'a elt_ list -> 'a elt_ list) without_comparator
val map :
('b, 'comparator,
('a, 'c) tree -> f:('a -> 'b elt_) -> ('b, 'comparator) t_)
without_comparator
val filter_map :
('b, 'comparator,
('a, 'c) tree -> f:('a -> 'b elt_ option) -> ('b, 'comparator) t_)
without_comparator
val of_tree :
('a, 'comparator, ('a elt_, 'comparator) tree -> ('a, 'comparator) t_)
without_comparator
val length : ('a, 'b) t_ -> int
val is_empty : ('a, 'b) t_ -> bool
val iter : ('a, 'b) t_ -> f:('a elt_ -> unit) -> unit
val fold :
('a, 'b) t_ -> init:'accum -> f:('accum -> 'a elt_ -> 'accum) -> 'accum
val exists : ('a, 'b) t_ -> f:('a elt_ -> bool) -> bool
val for_all : ('a, 'b) t_ -> f:('a elt_ -> bool) -> bool
val count : ('a, 'b) t_ -> f:('a elt_ -> bool) -> int
val find : ('a, 'b) t_ -> f:('a elt_ -> bool) -> 'a elt_ option
val find_map : ('a, 'c) t_ -> f:('a elt_ -> 'b option) -> 'b option
val to_list : ('a, 'b) t_ -> 'a elt_ list
val to_array : ('a, 'b) t_ -> 'a elt_ array
val invariants :
('a, 'comparator, ('a, 'comparator) t_ -> bool) without_comparator
val mem :
('a, 'comparator, ('a, 'comparator) t_ -> 'a elt_ -> bool)
without_comparator
val add :
('a, 'comparator,
('a, 'comparator) t_ -> 'a elt_ -> ('a, 'comparator) t_)
without_comparator
val remove :
('a, 'comparator,
('a, 'comparator) t_ -> 'a elt_ -> ('a, 'comparator) t_)
without_comparator
val union :
('a, 'comparator,
('a, 'comparator) t_ -> ('a, 'comparator) t_ -> ('a, 'comparator) t_)
without_comparator
val inter :
('a, 'comparator,
('a, 'comparator) t_ -> ('a, 'comparator) t_ -> ('a, 'comparator) t_)
without_comparator
val diff :
('a, 'comparator,
('a, 'comparator) t_ -> ('a, 'comparator) t_ -> ('a, 'comparator) t_)
without_comparator
val compare_direct :
('a, 'comparator, ('a, 'comparator) t_ -> ('a, 'comparator) t_ -> int)
without_comparator
val equal :
('a, 'comparator, ('a, 'comparator) t_ -> ('a, 'comparator) t_ -> bool)
without_comparator
val subset :
('a, 'comparator, ('a, 'comparator) t_ -> ('a, 'comparator) t_ -> bool)
without_comparator
val fold_until :
('a, 'c) t_ ->
init:'b -> f:('b -> 'a elt_ -> [ `Continue of 'b | `Stop of 'b ]) -> 'b
val fold_right : ('a, 'c) t_ -> init:'b -> f:('a elt_ -> 'b -> 'b) -> 'b
val iter2 :
('a, 'comparator,
('a, 'comparator) t_ ->
('a, 'comparator) t_ ->
f:([ `Both of 'a elt_ * 'a elt_ | `Left of 'a elt_ | `Right of 'a elt_ ] ->
unit) ->
unit)
without_comparator
val filter :
('a, 'comparator,
('a, 'comparator) t_ -> f:('a elt_ -> bool) -> ('a, 'comparator) t_)
without_comparator
val partition_tf :
('a, 'comparator,
('a, 'comparator) t_ ->
f:('a elt_ -> bool) -> ('a, 'comparator) t_ * ('a, 'comparator) t_)
without_comparator
val elements : ('a, 'b) t_ -> 'a elt_ list
val min_elt : ('a, 'b) t_ -> 'a elt_ option
val min_elt_exn : ('a, 'b) t_ -> 'a elt_
val max_elt : ('a, 'b) t_ -> 'a elt_ option
val max_elt_exn : ('a, 'b) t_ -> 'a elt_
val choose : ('a, 'b) t_ -> 'a elt_ option
val choose_exn : ('a, 'b) t_ -> 'a elt_
val split :
('a, 'comparator,
('a, 'comparator) t_ ->
'a elt_ -> ('a, 'comparator) t_ * bool * ('a, 'comparator) t_)
without_comparator
val group_by :
('a, 'comparator,
('a, 'comparator) t_ ->
equiv:('a elt_ -> 'a elt_ -> bool) -> ('a, 'comparator) t_ list)
without_comparator
val find_exn : ('a, 'b) t_ -> f:('a elt_ -> bool) -> 'a elt_
val find_index : ('a, 'b) t_ -> int -> 'a elt_ option
val remove_index :
('a, 'comparator, ('a, 'comparator) t_ -> int -> ('a, 'comparator) t_)
without_comparator
val to_tree : ('a, 'comparator) t_ -> ('a elt_, 'comparator) tree
val t_of_sexp : Sexplib.Sexp.t -> Core_set_intf.S.Tree.t
val sexp_of_t : Core_set_intf.S.Tree.t -> Sexplib.Sexp.t
val compare : Core_set_intf.S.Tree.t -> Core_set_intf.S.Tree.t -> int
end