package cactus

  1. Overview
  2. Docs
type t
type key = Key.t
val create : Store.t -> Btree__.Field_intf.kind -> t
val load : Store.t -> Store.address -> t
val depth : t -> int
val self_address : t -> Store.address
val overflow : t -> bool
val will_overflow : t -> bool
val underflow : t -> bool
val split : t -> key * t
val merge : t -> t -> [ `Partial | `Total ]
val find : t -> key -> Store.address
val leftmost : t -> key
type neighbour = {
  1. main : key * Store.address;
  2. neighbour : (key * Store.address) option;
  3. order : [ `Lower | `Higher ];
}
val find_with_neighbour : t -> key -> neighbour
val add : t -> key -> Store.address -> unit
val replace : t -> key -> key -> unit
val remove : t -> key -> unit
val iter : t -> (key -> Store.address -> unit) -> unit
val fold_left : ('a -> key -> Store.address -> 'a) -> 'a -> t -> 'a
val length : t -> int

length t is the number of bindings in t

val migrate : string list -> Btree__.Field_intf.kind -> string

migrate kvs depth constructs the serialised representation of the node associated to kvs, the list of string representations for key,value bindings.

val reconstruct : t -> Btree__.Field_intf.kind -> (key * Store.address) list -> unit
val pp : t Fmt.t