include sig ... end
Sourceval update : key:key -> f:('a option -> 'a option) -> 'a t -> 'a t Sourceval merge :
f:(key -> 'a option -> 'b option -> 'c option) ->
'a t ->
'b t ->
'c t Sourceval union : f:(key -> 'a -> 'a -> 'a option) -> 'a t -> 'a t -> 'a t Sourceval compare : cmp:('a -> 'a -> int) -> 'a t -> 'a t -> int Sourceval equal : cmp:('a -> 'a -> bool) -> 'a t -> 'a t -> bool Sourceval iter : f:(key:key -> data:'a -> unit) -> 'a t -> unit Sourceval fold : f:(key:key -> data:'a -> 'b -> 'b) -> 'a t -> init:'b -> 'b Sourceval for_all : f:(key -> 'a -> bool) -> 'a t -> bool Sourceval exists : f:(key -> 'a -> bool) -> 'a t -> bool Sourceval filter : f:(key -> 'a -> bool) -> 'a t -> 'a t Sourceval filter_map : f:(key -> 'a -> 'b option) -> 'a t -> 'b t Sourceval partition : f:(key -> 'a -> bool) -> 'a t -> 'a t * 'a t Sourceval min_binding_opt : 'a t -> (key * 'a) option Sourceval max_binding_opt : 'a t -> (key * 'a) option Sourceval find_first_opt : f:(key -> bool) -> 'a t -> (key * 'a) option Sourceval find_last_opt : f:(key -> bool) -> 'a t -> (key * 'a) option Sourceval map : f:('a -> 'b) -> 'a t -> 'b t Sourceval add_multiple : key -> 'a -> 'a list t -> 'a list t