Module type Map_intf.Creators_and_accessors_generic

include Creators_generic
include Map.Creators_generic
type ('k, 'v, 'cmp) t
type ('k, 'v, 'cmp) tree
type 'k key
type ('a, 'cmp, 'z) options
type 'cmp cmp
val empty : ('k'cmp('k_'cmp) t) options
val singleton : ('k'cmp'k key -> 'v -> ('k'v'cmp) t) options
val of_sorted_array : ('k'cmp('k key * 'v) array -> ('k'v'cmp) t Base.Or_error.t) options
val of_sorted_array_unchecked : ('k'cmp('k key * 'v) array -> ('k'v'cmp) t) options
val of_increasing_iterator_unchecked : ('k'cmplen:int -> f:(int -> 'k key * 'v) -> ('k'v'cmp) t) options
val of_alist : ('k'cmp('k key * 'v) list -> [ `Ok of ('k'v'cmp) t | `Duplicate_key of 'k key ]) options
val of_alist_or_error : ('k'cmp('k key * 'v) list -> ('k'v'cmp) t Base.Or_error.t) options
val of_alist_exn : ('k'cmp('k key * 'v) list -> ('k'v'cmp) t) options
val of_alist_multi : ('k'cmp('k key * 'v) list -> ('k'v list'cmp) t) options
val of_alist_fold : ('k'cmp('k key * 'v1) list -> init:'v2 -> f:('v2 -> 'v1 -> 'v2) -> ('k'v2'cmp) t) options
val of_alist_reduce : ('k'cmp('k key * 'v) list -> f:('v -> 'v -> 'v) -> ('k'v'cmp) t) options
val of_increasing_sequence : ('k'cmp('k key * 'v) Base.Sequence.t -> ('k'v'cmp) t Base.Or_error.t) options
val of_sequence : ('k'cmp('k key * 'v) Base.Sequence.t -> [ `Ok of ('k'v'cmp) t | `Duplicate_key of 'k key ]) options
val of_sequence_or_error : ('k'cmp('k key * 'v) Base.Sequence.t -> ('k'v'cmp) t Base.Or_error.t) options
val of_sequence_exn : ('k'cmp('k key * 'v) Base.Sequence.t -> ('k'v'cmp) t) options
val of_sequence_multi : ('k'cmp('k key * 'v) Base.Sequence.t -> ('k'v list'cmp) t) options
val of_sequence_fold : ('k'cmp('k key * 'v1) Base.Sequence.t -> init:'v2 -> f:('v2 -> 'v1 -> 'v2) -> ('k'v2'cmp) t) options
val of_sequence_reduce : ('k'cmp('k key * 'v) Base.Sequence.t -> f:('v -> 'v -> 'v) -> ('k'v'cmp) t) options
val of_iteri : ('k'cmpiteri:(f:(key:'k key -> data:'v -> unit) -> unit) -> [ `Ok of ('k'v'cmp) t | `Duplicate_key of 'k key ]) options
val of_tree : ('k'cmp('k key'v'cmp) tree -> ('k'v'cmp) t) options
val of_hashtbl_exn : ('k'cmp('k key'v) Hashtbl.t -> ('k'v'cmp) t) options
val of_key_set : ('k key'cmp cmp) Base.Set.t -> f:('k key -> 'v) -> ('k'v'cmp) t

Never requires a comparator because it can get one from the input Set.t.

val quickcheck_generator : ('k'cmp'k key Quickcheck.Generator.t -> 'v Quickcheck.Generator.t -> ('k'v'cmp) t Quickcheck.Generator.t) options
include Accessors_generic with type ('a, 'b, 'c) t := ('a'b'c) t with type ('a, 'b, 'c) tree := ('a'b'c) tree with type 'a key := 'a key with type 'a cmp := 'a cmp with type ('a, 'b, 'c) options := ('a'b'c) options
include Map.Accessors_generic with type ('a, 'b, 'c) options := ('a'b'c) options and type 'a cmp := 'a cmp and type 'a key := 'a key and type ('a, 'b, 'c) tree := ('a'b'c) tree and type ('a, 'b, 'c) t := ('a'b'c) t
val invariants : ('a'b'c) options
val is_empty : ('a'b'c) t -> bool
val length : ('a'b'c) t -> int
val add : ('a'b'c) options
val add_exn : ('a'b'c) options
val set : ('a'b'c) options
val add_multi : ('a'b'c) options
val remove_multi : ('a'b'c) options
val find_multi : ('a'b'c) options
val change : ('a'b'c) options
val update : ('a'b'c) options
val find : ('a'b'c) options
val find_exn : ('a'b'c) options
val remove : ('a'b'c) options
val mem : ('a'b'c) options
val iter_keys : ('a'b'c) t -> f:('a key -> unit) -> unit
val iter : ('a'b'c) t -> f:('v -> unit) -> unit
val iteri : ('a'b'c) t -> f:(key:'a key -> data:'v -> unit) -> unit
val iteri_until : ('a'b'c) t -> f:(key:'a key -> data:'v -> Base__Map_intf.Continue_or_stop.t) -> Base__Map_intf.Finished_or_unfinished.t
val iter2 : ('a'b'c) options
val map : ('a'b'c) t -> f:('v1 -> 'v2) -> ('a'b'c) t
val mapi : ('a'b'c) t -> f:(key:'a key -> data:'v1 -> 'v2) -> ('a'b'c) t
val fold : ('a'b'c) t -> init:'a -> f:(key:'a key -> data:'v -> 'a -> 'a) -> 'a
val fold_right : ('a'b'c) t -> init:'a -> f:(key:'a key -> data:'v -> 'a -> 'a) -> 'a
val fold2 : ('a'b'c) options
val filter_keys : ('a'b'c) options
val filter : ('a'b'c) options
val filteri : ('a'b'c) options
val filter_map : ('a'b'c) options
val filter_mapi : ('a'b'c) options
val partition_mapi : ('a'b'c) options
val partition_map : ('a'b'c) options
val partitioni_tf : ('a'b'c) options
val partition_tf : ('a'b'c) options
val combine_errors : ('a'b'c) options
val compare_direct : ('a'b'c) options
val equal : ('a'b'c) options
val keys : ('a'b'c) t -> 'a key list
val data : ('a'b'c) t -> 'v list
val to_alist : ?⁠key_order:[ `Increasing | `Decreasing ] -> ('a'b'c) t -> ('a key * 'v) list
val validate : name:('a key -> string) -> 'v Base.Validate.check -> ('a'b'c) t Base.Validate.check
val validatei : name:('a key -> string) -> ('a key * 'v) Base.Validate.check -> ('a'b'c) t Base.Validate.check
val merge : ('a'b'c) options
val symmetric_diff : ('a'b'c) options
val fold_symmetric_diff : ('a'b'c) options
val min_elt : ('a'b'c) t -> ('a key * 'v) option
val min_elt_exn : ('a'b'c) t -> 'a key * 'v
val max_elt : ('a'b'c) t -> ('a key * 'v) option
val max_elt_exn : ('a'b'c) t -> 'a key * 'v
val for_all : ('a'b'c) t -> f:('v -> bool) -> bool
val for_alli : ('a'b'c) t -> f:(key:'a key -> data:'v -> bool) -> bool
val exists : ('a'b'c) t -> f:('v -> bool) -> bool
val existsi : ('a'b'c) t -> f:(key:'a key -> data:'v -> bool) -> bool
val count : ('a'b'c) t -> f:('v -> bool) -> int
val counti : ('a'b'c) t -> f:(key:'a key -> data:'v -> bool) -> int
val split : ('a'b'c) options
val append : ('a'b'c) options
val subrange : ('a'b'c) options
val fold_range_inclusive : ('a'b'c) options
val range_to_alist : ('a'b'c) options
val closest_key : ('a'b'c) options
val nth : ('a'b'c) options
val nth_exn : ('a'b'c) options
val rank : ('a'b'c) options
val to_tree : ('a'b'c) t -> ('a'b'c) tree
val to_sequence : ('a'b'c) options
val binary_search_segmented : ('a'b'c) options
val key_set : ('a'b'c) options
val quickcheck_observer : 'a key Quickcheck.Observer.t -> 'v Quickcheck.Observer.t -> ('a'b'c) t Quickcheck.Observer.t
val quickcheck_shrinker : ('a'b'c) options