package irmin-pack
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=2a1e6a7577e498fbfeb678d666da210dc48d1344637e8ecb653e1dd88c640b5f
sha512=3fb6f49a1af2f8bab1df5b6f5affaaa09f09fe892a08eb2d9de58138e56646d4a6797f3c087b22875e36e3411218ab2435fe5437ac78f323dd661932af021fad
doc/irmin-pack.mem/Irmin_pack_mem/Maker/Make/Backend/Branch/index.html
Module Backend.Branch
A branch store.
Branch Store
Atomic write stores
Atomic-write stores are stores where it is possible to read, update and remove elements, with atomically guarantees.
Read-only stores
Read-only stores are store where it is only possible to read existing values.
type key = Schema.Branch.t
The type for keys.
type value = Commit.key
The type for raw values.
find t k
is Some v
if k
is associated to v
in t
and None
is k
is not present in t
.
set t k v
replaces the contents of k
by v
in t
. If k
is not already defined in t
, create a fresh binding. Raise Invalid_argument
if k
is the empty path.
test_and_set t key ~test ~set
sets key
to set
only if the current value of key
is test
and in that case returns true
. If the current value of key
is different, it returns false
. None
means that the value does not have to exist or is removed.
Note: The operation is guaranteed to be atomic.
val watch :
t ->
?init:(key * value) list ->
(key -> value Irmin__.Atomic_write_intf.diff -> unit Lwt.t) ->
watch Lwt.t
watch t ?init f
adds f
to the list of t
's watch handlers and returns the watch handler to be used with unwatch
. init
is the optional initial values. It is more efficient to use watch_key
to watch only a single given key.
val watch_key :
t ->
key ->
?init:value ->
(value Irmin__.Atomic_write_intf.diff -> unit Lwt.t) ->
watch Lwt.t
watch_key t k ?init f
adds f
to the list of t
's watch handlers for the key k
and returns the watch handler to be used with unwatch
. init
is the optional initial value of the key.
close t
frees up all the resources associated with t
. Any operations run on a closed handle will raise Closed
.
module Key : sig ... end
Base functions on keys.
module Val : sig ... end
Base functions on values.