package irmin
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=1db134221e82c424260a0e206b640fcb82902be35eea4137af2bcd9c98d3ac0f
sha512=b334e5b909563787e58790e4665f78a9f21e0f9f976eb7344cb76cbe7db870506bab193cec206e338ba74457896b2176000c936397cf3d44326507300a8193d6
doc/irmin.mem/Irmin_mem/KV/Private/Node/Contents/index.html
Module Node.Contents
Source
Contents
is the underlying contents store.
Content-addressable stores
Content-addressable stores are store where it is possible to read and add new values. Keys are derived from the values raw contents and hence are deterministic.
The type for content-addressable backend stores. The 'a
phantom type carries information about the store mutability.
The type for raw values.
mem t k
is true iff k
is present in t
.
find t k
is Some v
if k
is associated to v
in t
and None
is k
is not present in t
.
Write the contents of a value to the store. It's the responsibility of the content-addressable store to generate a consistent key.
Same as add
but allows to specify the key directly. The backend might choose to discared that key and/or can be corrupt if the key scheme is not consistent.
merge t
lifts the merge functions defined on contents values to contents key. The merge function will: (i) read the values associated with the given keys, (ii) use the merge function defined on values and (iii) write the resulting values into the store to get the resulting key. See Contents.S.merge
.
If any of these operations fail, return `Conflict
.
Key
provides base functions for user-defined contents keys.