package ocaml-base-compiler

  1. Overview
  2. Docs
type ('k1, 'k2, 'd) t

A bucket is a mutable "list" of ephemerons.

val make : unit -> ('k1, 'k2, 'd) t

Create a new bucket.

val add : ('k1, 'k2, 'd) t -> 'k1 -> 'k2 -> 'd -> unit

Add an ephemeron to the bucket.

val remove : ('k1, 'k2, 'd) t -> 'k1 -> 'k2 -> unit

remove b k1 k2 removes from b the most-recently added ephemeron with keys k1 and k2, or does nothing if there is no such ephemeron.

val find : ('k1, 'k2, 'd) t -> 'k1 -> 'k2 -> 'd option

Returns the data of the most-recently added ephemeron with the given keys, or None if there is no such ephemeron.

val length : ('k1, 'k2, 'd) t -> int

Returns an upper bound on the length of the bucket.

val clear : ('k1, 'k2, 'd) t -> unit

Remove all ephemerons from the bucket.