Module Js_parser.Flow_set
module type S = sig ... end
type 'elt t0 =
| Empty
| Leaf of 'elt
| Node of {
h : int;
v : 'elt;
l : 'elt t0;
r : 'elt t0;
}
type 'elt partial_node = {
h : int;
v : 'elt;
l : 'elt t0;
r : 'elt t0;
}
type ('elt, 't) enumeration0 =
| End
| More of 'elt * 't * ('elt, 't) enumeration0
val height : 'a t0 -> int
val singleton : 'a -> 'b t0
val unsafe_node : l:'a t0 -> v:'b -> r:'c t0 -> 'd t0
val create : 'a t0 -> 'b -> 'c t0 -> 'd t0
val of_increasing_iterator_unchecked : (unit -> 'a) -> int -> 'b t0
val of_sorted_array_unchecked : 'a array -> 'b t0
val bal : 'a t0 -> 'b -> 'a t0 -> 'c t0
val add_min_element : 'a -> 'b t0 -> 'c t0
val add_max_element : 'a -> 'b t0 -> 'c t0
val join : 'a t0 -> 'b -> 'a t0 -> 'c t0
val min_elt : 'a t0 -> 'b
val min_elt_opt : 'a t0 -> 'b option
val max_elt : 'a t0 -> 'b
val max_elt_opt : 'a t0 -> 'b option
val remove_min_elt : 'a t0 -> 'b t0
val merge : 'a t0 -> 'a t0 -> 'a t0
val concat : 'a t0 -> 'a t0 -> 'a t0
val cardinal : 'a t0 -> int
val elements_aux : 'a list -> 'b t0 -> 'a list
val elements : 'a t0 -> 'a list
val is_empty : 'a t0 -> bool
val of_sorted_list : 'a list -> 'a t0
type 'a t1 = private 'a t0 =
| Empty
| Leaf of 'a
| Node of {
h : int;
v : 'a;
l : 'a t0;
r : 'a t0;
}