package irmin

  1. Overview
  2. Docs
Irmin, a distributed database that follows the same design principles as Git

Install

Dune Dependency

Authors

Maintainers

Sources

irmin-2.8.0.tbz
sha256=652aa550ba01cb174310f8d46f3c484619e216b2f954e1f478c144cf42804b57
sha512=d1a25bd025530a5d5b6ad86e9b41146d8c406da81998740df984d9b45047917a8d1a5330eb0b195ee5a2d25769a62bfde5b8c4389f9296ac25333791272e22de

doc/irmin.mem/Irmin_mem/Make/Private/Node/Val/index.html

Module Node.ValSource

Val provides base functions for node values.

Node values

Sourcetype t = value

The type for node values.

Sourcetype metadata = Metadata.t

The type for node metadata.

Sourcetype hash = key

The type for keys.

Sourcetype step = Path.step

The type for steps between nodes.

Sourcetype value = [
  1. | `Node of hash
  2. | `Contents of hash * metadata
]

The type for either (node) keys or (contents) keys combined with their metadata.

Sourceval of_list : (step * value) list -> t

of_list l is the node n such that list n = l.

Sourceval list : ?offset:int -> ?length:int -> ?cache:bool -> t -> (step * value) list

list t is the contents of t. offset and length are used to paginate results.

caching

cache regulates the caching behaviour regarding the node's internal data which may be lazily loaded from the backend, depending on the node implementation.

cache defaults to true which may greatly reduce the IOs and the runtime but may also increase the memory consumption.

cache = false doesn't replace a call to clear, it only prevents the storing of new data, it doesn't discard the existing one.

Sourceval of_seq : (unit -> (step * value) Seq.node) -> t

of_seq s is the node n such that seq n = s.

Sourceval seq : ?offset:int -> ?length:int -> ?cache:bool -> t -> unit -> (step * value) Seq.node

seq t is the contents of t. offset and length are used to paginate results.

See caching for an explanation of the cache parameter

Sourceval empty : t

empty is the empty node.

Sourceval is_empty : t -> bool

is_empty t is true iff t is empty.

Sourceval length : t -> int

length t is the number of entries in t.

Sourceval clear : t -> unit

Cleanup internal caches.

Sourceval find : ?cache:bool -> t -> step -> value option

find t s is the value associated with s in t.

A node can point to user-defined contents. The edge between the node and the contents is labeled by a step.

See caching for an explanation of the cache parameter

Sourceval add : t -> step -> value -> t

add t s v is the node where find t v is Some s but is similar to t otherwise.

Sourceval remove : t -> step -> t

remove t s is the node where find t s is None but is similar to t otherwise.

Value types

t is the value type for t.

Sourceval default : metadata

default is the default metadata value.

Sourceval metadata_t : metadata Irmin.Type.t

metadata_t is the value type for metadata.

hash_t is the value type for hash.

step_t is the value type for step.

value_t is the value type for value.

OCaml

Innovation. Community. Security.