Module Hashtbl.Creators

Parameters

module Key : sig ... end

Signature

type ('a, 'b) t_ = ( 'a Key.t, 'b ) t
val t_of_sexp : ( Sexp.t -> 'a Key.t ) -> ( Sexp.t -> 'b ) -> Sexp.t -> ( 'a, 'b ) t_
val create : ?growth_allowed:bool -> ?size:int -> unit -> ( 'a, 'b ) t_
val of_alist : ?growth_allowed:bool -> ?size:int -> ('a Key.t * 'b) list -> [ `Ok of ( 'a, 'b ) t_ | `Duplicate_key of 'a Key.t ]
val of_alist_report_all_dups : ?growth_allowed:bool -> ?size:int -> ('a Key.t * 'b) list -> [ `Ok of ( 'a, 'b ) t_ | `Duplicate_keys of 'a Key.t list ]
val of_alist_or_error : ?growth_allowed:bool -> ?size:int -> ('a Key.t * 'b) list -> ( 'a, 'b ) t_ Or_error.t
val of_alist_exn : ?growth_allowed:bool -> ?size:int -> ('a Key.t * 'b) list -> ( 'a, 'b ) t_
val of_alist_multi : ?growth_allowed:bool -> ?size:int -> ('a Key.t * 'b) list -> ( 'a, 'b list ) t_
val create_mapped : ?growth_allowed:bool -> ?size:int -> get_key:( 'r -> 'a Key.t ) -> get_data:( 'r -> 'b ) -> 'r list -> [ `Ok of ( 'a, 'b ) t_ | `Duplicate_keys of 'a Key.t list ]
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 : ?growth_allowed:bool -> ?size:int -> get_key:( 'r -> 'a Key.t ) -> 'r list -> [ `Ok of ( 'a, 'r ) t_ | `Duplicate_keys of 'a Key.t list ]
create_with_key ~get_key [x1,...,xn]
= of_alist [get_key x1, x1; ...; get_key xn, xn] 
val create_with_key_or_error : ?growth_allowed:bool -> ?size:int -> get_key:( 'r -> 'a Key.t ) -> 'r list -> ( 'a, 'r ) t_ Or_error.t
val create_with_key_exn : ?growth_allowed:bool -> ?size:int -> get_key:( 'r -> 'a Key.t ) -> 'r list -> ( 'a, 'r ) t_
val group : ?growth_allowed:bool -> ?size:int -> get_key:( 'r -> 'a Key.t ) -> get_data:( 'r -> 'b ) -> combine:( 'b -> 'b -> 'b ) -> 'r list -> ( 'a, 'b ) t_