package irmin-test
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=088741b619471c8198e74aaf9f4aeb4a9997abec8b9abcbfb3443fd27bfb433f
sha512=bbc03417d6eb87d99bee391c489d23a586b0a260e4c797f5e2465c3ab67cb627a9efa526097c1b89dd3339eafb8bad738c1cf0502e5c70355871ff7dbba324b9
doc/irmin-test.bench/Irmin_bench/Make/argument-1-S/Private/Commit/index.html
Module Private.Commit
Private commit store.
Commit 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.
type key = Hash.tThe type for keys.
val mem : [> Irmin.Perms.read ] t -> key -> bool Lwt.tmem t k is true iff k is present in t.
val find : [> Irmin.Perms.read ] t -> key -> value option Lwt.tfind t k is Some v if k is associated to v in t and None is k is not present in t.
val add : [> Irmin.Perms.write ] t -> value -> key Lwt.tWrite the contents of a value to the store. It's the responsibility of the content-addressable store to generate a consistent key.
val unsafe_add : [> Irmin.Perms.write ] t -> key -> value -> unit Lwt.tSame 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.
val merge :
[> Irmin.Perms.read_write ] t ->
info:Irmin.Info.f ->
key option Irmin.Merge.tmerge is the 3-way merge function for commit keys.
Key provides base functions for commit keys.
module Val : sig ... endVal provides functions for commit values.
module Node : sig ... endNode is the underlying node store.