type key = tval empty : 'a tval is_empty : 'a t -> boolsuperpose a b is b augmented with bindings of a that are not in b.
val compare : 'a t -> 'a t -> compare:('a -> 'a -> Ordering.t) -> Ordering.tval iter : 'a t -> f:('a -> unit) -> unitval fold : 'a t -> init:'b -> f:('a -> 'b -> 'b) -> 'bval for_all : 'a t -> f:('a -> bool) -> boolval exists : 'a t -> f:('a -> bool) -> boolval cardinal : 'a t -> intReturn a map of (k, v) bindings such that:
v = f init @@ f v1 @@ fv2 @@ ... @@ f vn where v1, v2, ... vn are the values associated to k in the input list, in the order in which they appear. This is essentially a more efficient version of:
of_list_multi l |> map ~f:(List.fold_left ~init ~f) val values : 'a t -> 'a listis_subset t ~of_ ~f is true iff all keys in t are in of_ and f is true for all keys that are in both.
module Multi : sig ... end