Module Hashtbl.Using_hashable

include Hashtbl_intf.Creators with type ('a, 'b) t := ('a, 'b) t with type 'a key := 'a key with type ('a, 'b, 'z) create_options := ('a, 'b, 'z) Hashtbl_intf.create_options_with_hashable
val create : ('a key, 'b, unit -> ('a, 'b) t) Hashtbl_intf.create_options_with_hashable
val of_alist : ('a key, 'b, ('a key * 'b) list -> [ `Ok of ('a, 'b) t | `Duplicate_key of 'a key ]) Hashtbl_intf.create_options_with_hashable
val of_alist_report_all_dups : ('a key, 'b, ('a key * 'b) list -> [ `Ok of ('a, 'b) t | `Duplicate_keys of 'a key list ]) Hashtbl_intf.create_options_with_hashable
val of_alist_or_error : ('a key, 'b, ('a key * 'b) list -> ('a, 'b) t Base.Or_error.t) Hashtbl_intf.create_options_with_hashable
val of_alist_exn : ('a key, 'b, ('a key * 'b) list -> ('a, 'b) t) Hashtbl_intf.create_options_with_hashable
val of_alist_multi : ('a key, 'b list, ('a key * 'b) list -> ('a, 'b list) t) Hashtbl_intf.create_options_with_hashable
val create_mapped : ('a key, 'b, get_key:('r -> 'a key) -> get_data:('r -> 'b) -> 'r list -> [ `Ok of ('a, 'b) t | `Duplicate_keys of 'a key list ]) Hashtbl_intf.create_options_with_hashable
 create_mapped get_key get_data [x1,...,xn]
   = of_alist [get_key x1, get_data x1; ...; get_key xn, get_data xn] 
val create_with_key : ('a key, 'r, get_key:('r -> 'a key) -> 'r list -> [ `Ok of ('a, 'r) t | `Duplicate_keys of 'a key list ]) Hashtbl_intf.create_options_with_hashable
 create_with_key ~get_key [x1,...,xn]
   = of_alist [get_key x1, x1; ...; get_key xn, xn] 
val create_with_key_or_error : ('a key, 'r, get_key:('r -> 'a key) -> 'r list -> ('a, 'r) t Base.Or_error.t) Hashtbl_intf.create_options_with_hashable
val create_with_key_exn : ('a key, 'r, get_key:('r -> 'a key) -> 'r list -> ('a, 'r) t) Hashtbl_intf.create_options_with_hashable
val group : ('a key, 'b, get_key:('r -> 'a key) -> get_data:('r -> 'b) -> combine:('b -> 'b -> 'b) -> 'r list -> ('a, 'b) t) Hashtbl_intf.create_options_with_hashable