Parameter M : Creators_generic with type ('a, 'b, 'c) options := ('a, 'b, 'c) Options.t with type ('a, 'b, 'c) t := ('a, 'b, 'c) T.t with type ('a, 'b, 'c) tree := ('a, 'b, 'c) Tree.t with type 'a key := 'a Key.t


type ('k, 'v, 'cmp) t
type ('k, 'v, 'cmp) tree
type 'k key
type ('a, 'cmp, 'z) options
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 Or_error.t) options
val of_sorted_array_unchecked : ('k, 'cmp, ('k key * 'v) array -> ('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 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_tree : ('k, 'cmp, ('k key, 'v, 'cmp) tree -> ('k, 'v, 'cmp) t) options
val gen : ('k, 'cmp, 'k key Quickcheck.Generator.t -> 'v Quickcheck.Generator.t -> ('k, 'v, 'cmp) t Quickcheck.Generator.t) options