package colibri2

  1. Overview
  2. Docs

Parameters

module K : sig ... end
module D : sig ... end

Signature

type 'a key = 'a K.t
type ('a, 'b) data = ('a, 'b) D.t
type 'b t
val create : int -> 'b t
val size : 'b t -> int
val get : 'b t -> 'a key -> ('a, 'b) data
val get_def : 'b t -> 'a key -> ('a, 'b) data -> ('a, 'b) data
val set : 'b t -> 'a key -> ('a, 'b) data -> unit
val is_uninitialized : 'b t -> 'a key -> bool

Contrary to Simple_vector it tests the size too

val uninitialize : 'b t -> 'a key -> unit

Contrary to Simple_vector it tests the size too

val clear : 'b t -> unit
val inc_size : 'a key -> 'b t -> unit
type 'b iter_initialized = {
  1. iter : 'a. ('a, 'b) data -> unit;
}
val iter_initialized : 'b iter_initialized -> 'b t -> unit
type ('b, 'c) fold_initialized = {
  1. fold : 'a. 'c -> ('a, 'b) data -> 'c;
}
val fold_initialized : ('b, 'c) fold_initialized -> 'c -> 'b t -> 'c
type 'b iter_initializedi = {
  1. iteri : 'a. 'a key -> ('a, 'b) data -> unit;
}
val iter_initializedi : 'b iter_initializedi -> 'b t -> unit
type ('b, 'c) fold_initializedi = {
  1. foldi : 'a. 'c -> 'a key -> ('a, 'b) data -> 'c;
}
val fold_initializedi : ('b, 'c) fold_initializedi -> 'c -> 'b t -> 'c
val copy : 'b t -> 'b t
val move : from:'b t -> to_:'b t -> unit
type printk = {
  1. printk : 'a. 'a key Pp.pp;
}
type 'b printd = {
  1. printd : 'a. 'a key -> ('a, 'b) data Pp.pp;
}
val pp : unit Pp.pp -> unit Pp.pp -> printk -> 'b printd -> 'b t Pp.pp
OCaml

Innovation. Community. Security.