package ocaml-base-compiler

  1. Overview
  2. Docs

Emphemerons 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, _, _) t -> ('k1, _, _) t -> unit
val blit_key2 : (_, 'k2, _) t -> (_, 'k2, _) t -> unit
val blit_key12 : ('k1, 'k2, _) t -> ('k1, 'k2, _) 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
module Make (H1 : Hashtbl.HashedType) (H2 : Hashtbl.HashedType) : S with type key = H1.t * H2.t

Functor building an implementation of a weak hash table

Functor building an implementation of a weak hash table. The seed is similar to the one of Hashtbl.MakeSeeded.