type ('k, 'a) map = | Empty| Node of ('k, 'a) map * 'k * 'a * ('k, 'a) map * int
type 'k compare = 'k -> 'k -> inttype ('k, 'a) t = {map : ('k, 'a) map;compare : 'k compare;
}Internal functions with compare parameter
*********************************************
val height_ : ('a, 'b) map -> intval create_ : ('a, 'b) map -> 'a -> 'b -> ('a, 'b) map -> ('a, 'b) mapval singleton_ : 'a -> 'b -> ('a, 'b) mapval bal_ : ('a, 'b) map -> 'a -> 'b -> ('a, 'b) map -> ('a, 'b) mapval empty_ : ('a, 'b) mapval is_empty_ : ('a, 'b) map -> boolval is_singleton_ : ('a, 'b) map -> boolval add_ : ('a -> 'a -> int) -> 'a -> 'b -> ('a, 'b) map -> ('a, 'b) mapval find_ : ('a -> 'b -> int) -> 'a -> ('b, 'c) map -> 'cval find_opt_ : ('a -> 'b -> int) -> 'a -> ('b, 'c) map -> 'c optionval mem_ : ('a -> 'b -> int) -> 'a -> ('b, 'c) map -> boolval min_binding_ : ('a, 'b) map -> 'a * 'bval max_binding_ : ('a, 'b) map -> 'a * 'bval remove_min_binding_ : ('a, 'b) map -> ('a, 'b) mapval remove_ : ('a -> 'b -> int) -> 'a -> ('b, 'c) map -> ('b, 'c) mapval map_ : ('a -> 'b) -> ('c, 'a) map -> ('c, 'b) mapval mapi_ : ('a -> 'b -> 'c) -> ('a, 'b) map -> ('a, 'c) mapval fold_ : ('a -> 'b -> 'c -> 'c) -> ('a, 'b) map -> 'c -> 'cval for_all_ : ('a -> 'b -> bool) -> ('a, 'b) map -> boolval exists_ : ('a -> 'b -> bool) -> ('a, 'b) map -> boolval filter_ :
('a -> 'a -> int) ->
('a -> 'b -> bool) ->
('a, 'b) map ->
('a, 'b) mapval partition_ :
('a -> 'a -> int) ->
('a -> 'b -> bool) ->
('a, 'b) map ->
('a, 'b) map * ('a, 'b) mapval join_ :
('a -> 'a -> int) ->
('a, 'b) map ->
'a ->
'b ->
('a, 'b) map ->
('a, 'b) mapval concat_ : ('a -> 'a -> int) -> ('a, 'b) map -> ('a, 'b) map -> ('a, 'b) mapval concat_or_join_ :
('a -> 'a -> int) ->
('a, 'b) map ->
'a ->
'b option ->
('a, 'b) map ->
('a, 'b) mapval of_list_ : ('a -> 'a -> int) -> ('a * 'b) list -> ('a, 'b) mapval cut_ :
('a -> 'b -> int) ->
'a ->
('b, 'c) map ->
('b, 'c) map * 'c option * ('b, 'c) mapval for_all2zo_ :
('a -> 'a -> int) ->
('a -> 'b -> bool) ->
('a -> 'b -> bool) ->
('a -> 'b -> 'b -> bool) ->
('a, 'b) map ->
('a, 'b) map ->
boolval map2zo_ :
('a -> 'a -> int) ->
('a -> 'b -> 'b) ->
('a -> 'b -> 'b) ->
('a -> 'b -> 'b -> 'b) ->
('a, 'b) map ->
('a, 'b) map ->
('a, 'b) mapval split_ :
('a -> 'a -> int) ->
'a ->
('a, 'b) map ->
('a, 'b) map * 'b option * ('a, 'b) mapval merge_ :
('a -> 'a -> int) ->
('a -> 'b option -> 'c option -> 'd option) ->
('a, 'b) map ->
('a, 'c) map ->
('a, 'd) mapval bindings_aux_ : ('a * 'b) list -> ('a, 'b) map -> ('a * 'b) listval bindings_ : ('a, 'b) map -> ('a * 'b) listval cardinal_ : ('a, 'b) map -> intval fold2zo_ :
('a -> 'a -> int) ->
('a -> 'b -> 'c -> 'c) ->
('a -> 'b -> 'c -> 'c) ->
('a -> 'b -> 'b -> 'c -> 'c) ->
('a, 'b) map ->
('a, 'b) map ->
'c ->
'cval fold2o_ :
('a -> 'b -> int) ->
('a -> 'c -> 'd -> 'd) ->
('b -> 'e -> 'd -> 'd) ->
('a -> 'c -> 'e -> 'd -> 'd) ->
('a, 'c) map ->
('b, 'e) map ->
'd ->
'dval iter_ : ('a -> 'b -> 'c) -> ('a, 'b) map -> unitval iter2zo_ :
('a -> 'a -> int) ->
('a -> 'b -> unit) ->
('a -> 'b -> 'c) ->
('a -> 'b -> 'b -> unit) ->
('a, 'b) map ->
('a, 'b) map ->
unitval compare_ :
('a -> 'a -> int) ->
('b -> 'b -> int) ->
('a, 'b) map ->
('a, 'b) map ->
intExported functions
**********************
val singleton : compare:'a compare -> 'a -> 'b -> ('a, 'b) tval empty : compare:'a compare -> ('a, 'b) tval is_empty : ('a, 'b) t -> boolval is_singleton : ('a, 'b) t -> boolval add : 'a -> 'b -> ('a, 'b) t -> ('a, 'b) tval find : 'a -> ('a, 'b) t -> 'bval find_opt : 'a -> ('a, 'b) t -> 'b optionval mem : 'a -> ('a, 'b) t -> boolval min_binding : ('a, 'b) t -> 'a * 'bval remove_min_binding : ('a, 'b) t -> ('a, 'b) tval remove : 'a -> ('a, 'b) t -> ('a, 'b) tval max_binding : ('a, 'b) t -> 'a * 'bval iter : ('a -> 'b -> 'c) -> ('a, 'b) t -> unitval map : ('a -> 'b) -> ('c, 'a) t -> ('c, 'b) tval mapi : ('a -> 'b -> 'c) -> ('a, 'b) t -> ('a, 'c) tval fold : ('a -> 'b -> 'c -> 'c) -> ('a, 'b) t -> 'c -> 'cval for_all : ('a -> 'b -> bool) -> ('a, 'b) t -> boolval exists : ('a -> 'b -> bool) -> ('a, 'b) t -> boolval filter : ('a -> 'b -> bool) -> ('a, 'b) t -> ('a, 'b) tval partition : ('a -> 'b -> bool) -> ('a, 'b) t -> ('a, 'b) t * ('a, 'b) tval for_all2zo :
('a -> 'b -> bool) ->
('a -> 'b -> bool) ->
('a -> 'b -> 'b -> bool) ->
('a, 'b) t ->
('a, 'b) t ->
boolval map2zo :
('a -> 'b -> 'b) ->
('a -> 'b -> 'b) ->
('a -> 'b -> 'b -> 'b) ->
('a, 'b) t ->
('a, 'b) t ->
('a, 'b) tval merge :
('a -> 'b option -> 'c option -> 'd option) ->
('a, 'b) t ->
('a, 'c) t ->
('a, 'd) tval bindings : ('a, 'b) t -> ('a * 'b) listval cardinal : ('a, 'b) t -> intval fold2zo :
('a -> 'b -> 'c -> 'c) ->
('a -> 'b -> 'c -> 'c) ->
('a -> 'b -> 'b -> 'c -> 'c) ->
('a, 'b) t ->
('a, 'b) t ->
'c ->
'cval fold2o :
('a -> 'b -> 'c -> 'c) ->
('a -> 'd -> 'c -> 'c) ->
('a -> 'b -> 'd -> 'c -> 'c) ->
('a, 'b) t ->
('a, 'd) t ->
'c ->
'cval compare : ('a -> 'a -> int) -> ('b, 'a) t -> ('b, 'a) t -> intval of_list : 'a compare -> ('a * 'b) list -> ('a, 'b) tval choose : ('a, 'b) t -> 'a * 'b