A polymorphic Map.
include Base__.Map_intf.Creators2val empty : (_, _) tval singleton : 'a ‑> 'b ‑> ('a, 'b) tval of_alist : ('a * 'b) list ‑> [ `Ok of ('a, 'b) t | `Duplicate_key of 'a ]val of_alist_or_error : ('a * 'b) list ‑> ('a, 'b) t Base.Or_error.tval of_alist_exn : ('a * 'b) list ‑> ('a, 'b) tval of_alist_multi : ('a * 'b) list ‑> ('a, 'b list) tval of_alist_fold : ('a * 'b) list ‑> init:'c ‑> f:('c ‑> 'b ‑> 'c) ‑> ('a, 'c) tval of_alist_reduce : ('a * 'b) list ‑> f:('b ‑> 'b ‑> 'b) ‑> ('a, 'b) tval of_sorted_array : ('a * 'b) array ‑> ('a, 'b) t Base.Or_error.tval of_sorted_array_unchecked : ('a * 'b) array ‑> ('a, 'b) tval of_increasing_iterator_unchecked : len:int ‑> f:(int ‑> 'a * 'b) ‑> ('a, 'b) tval of_increasing_sequence : ('a * 'b) Base.Sequence.t ‑> ('a, 'b) t Base.Or_error.tval of_iteri : iteri:(f:(key:'a ‑> data:'b ‑> unit) ‑> unit) ‑> [ `Ok of ('a, 'b) t | `Duplicate_key of 'a ]include Base__.Map_intf.Accessors2 with type (a, b) t := (a, b) t with type (a, b) tree := (a, b) treeval invariants : (_, _) t ‑> boolval is_empty : (_, _) t ‑> boolval length : (_, _) t ‑> intval add : ('a, 'b) t ‑> key:'a ‑> data:'b ‑> ('a, 'b) t Base__.Map_intf.Or_duplicate.tval find_multi : ('a, 'b list) t ‑> 'a ‑> 'b listval find : ('a, 'b) t ‑> 'a ‑> 'b optionval find_exn : ('a, 'b) t ‑> 'a ‑> 'bval mem : ('a, 'b) t ‑> 'a ‑> boolval iter_keys : ('a, _) t ‑> f:('a ‑> unit) ‑> unitval iter : (_, 'b) t ‑> f:('b ‑> unit) ‑> unitval iteri : ('a, 'b) t ‑> f:(key:'a ‑> data:'b ‑> unit) ‑> unitval fold : ('a, 'b) t ‑> init:'c ‑> f:(key:'a ‑> data:'b ‑> 'c ‑> 'c) ‑> 'cval fold_right : ('a, 'b) t ‑> init:'c ‑> f:(key:'a ‑> data:'b ‑> 'c ‑> 'c) ‑> 'cval keys : ('a, _) t ‑> 'a listval data : (_, 'b) t ‑> 'b listval to_alist : ?key_order:[ `Increasing | `Decreasing ] ‑> ('a, 'b) t ‑> ('a * 'b) listval validate : name:('a ‑> string) ‑> 'b Base.Validate.check ‑> ('a, 'b) t Base.Validate.checkval symmetric_diff : ('a, 'b) t ‑> ('a, 'b) t ‑> data_equal:('b ‑> 'b ‑> bool) ‑> ('a, 'b) Base__.Map_intf.Symmetric_diff_element.t Base.Sequence.tval min_elt : ('a, 'b) t ‑> ('a * 'b) optionval min_elt_exn : ('a, 'b) t ‑> 'a * 'bval max_elt : ('a, 'b) t ‑> ('a * 'b) optionval max_elt_exn : ('a, 'b) t ‑> 'a * 'bval for_all : (_, 'b) t ‑> f:('b ‑> bool) ‑> boolval for_alli : ('a, 'b) t ‑> f:(key:'a ‑> data:'b ‑> bool) ‑> boolval exists : (_, 'b) t ‑> f:('b ‑> bool) ‑> boolval existsi : ('a, 'b) t ‑> f:(key:'a ‑> data:'b ‑> bool) ‑> boolval count : (_, 'b) t ‑> f:('b ‑> bool) ‑> intval counti : ('a, 'b) t ‑> f:(key:'a ‑> data:'b ‑> bool) ‑> intval subrange : ('a, 'b) t ‑> lower_bound:'a Base.Maybe_bound.t ‑> upper_bound:'a Base.Maybe_bound.t ‑> ('a, 'b) tval fold_range_inclusive : ('a, 'b) t ‑> min:'a ‑> max:'a ‑> init:'c ‑> f:(key:'a ‑> data:'b ‑> 'c ‑> 'c) ‑> 'cval range_to_alist : ('a, 'b) t ‑> min:'a ‑> max:'a ‑> ('a * 'b) listval closest_key : ('a, 'b) t ‑> [ `Greater_or_equal_to | `Greater_than | `Less_or_equal_to | `Less_than ] ‑> 'a ‑> ('a * 'b) optionval nth : ('a, 'b) t ‑> int ‑> ('a * 'b) optionval nth_exn : ('a, 'b) t ‑> int ‑> 'a * 'bval rank : ('a, _) t ‑> 'a ‑> int optionval to_sequence : ?order:[ `Increasing_key | `Decreasing_key ] ‑> ?keys_greater_or_equal_to:'a ‑> ?keys_less_or_equal_to:'a ‑> ('a, 'b) t ‑> ('a * 'b) Base.Sequence.t