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