Module Ephemeron.K2

module K2: sig .. end

Ephemerons with two keys.


type ('k1, 'k2, 'd) t 

an ephemeron with two keys

val create : unit -> ('k1, 'k2, 'd) t
val get_key1 : ('k1, 'k2, 'd) t -> 'k1 option
val get_key1_copy : ('k1, 'k2, 'd) t -> 'k1 option
val set_key1 : ('k1, 'k2, 'd) t -> 'k1 -> unit
val unset_key1 : ('k1, 'k2, 'd) t -> unit
val check_key1 : ('k1, 'k2, 'd) t -> bool
val get_key2 : ('k1, 'k2, 'd) t -> 'k2 option
val get_key2_copy : ('k1, 'k2, 'd) t -> 'k2 option
val set_key2 : ('k1, 'k2, 'd) t -> 'k2 -> unit
val unset_key2 : ('k1, 'k2, 'd) t -> unit
val check_key2 : ('k1, 'k2, 'd) t -> bool
val blit_key1 : ('k1, 'a, 'b) t -> ('k1, 'c, 'd) t -> unit
val blit_key2 : ('a, 'k2, 'b) t -> ('c, 'k2, 'd) t -> unit
val blit_key12 : ('k1, 'k2, 'a) t -> ('k1, 'k2, 'b) t -> unit
val get_data : ('k1, 'k2, 'd) t -> 'd option
val get_data_copy : ('k1, 'k2, 'd) t -> 'd option
val set_data : ('k1, 'k2, 'd) t -> 'd -> unit
val unset_data : ('k1, 'k2, 'd) t -> unit
val check_data : ('k1, 'k2, 'd) t -> bool
val blit_data : ('k1, 'k2, 'd) t -> ('k1, 'k2, 'd) t -> unit
val make : 'k1 -> 'k2 -> 'd -> ('k1, 'k2, 'd) t
val query : ('k1, 'k2, 'd) t -> 'k1 -> 'k2 -> 'd option
module Make: 
functor (H1 : Hashtbl.HashedType-> 
functor (H2 : Hashtbl.HashedType-> Ephemeron.S with type key = H1.t * H2.t

Functor building an implementation of a weak hash table

module MakeSeeded: 
functor (H1 : Hashtbl.SeededHashedType-> 
functor (H2 : Hashtbl.SeededHashedType-> Ephemeron.SeededS with type key = H1.t * H2.t

Functor building an implementation of a weak hash table.

module Bucket: sig .. end