package irmin
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=7729777c336f716a064f3c698a25412efb2ce830bc0f3f9e5248d3caac66e4a6
sha512=15c8aae18bbc4dbb86708caf0fe41f621a41db38645d1a7e93fb9c1c5e3fea33c6dfbf0ffbed499b1482674b88dd5c847110dc54d9956c9c20dec3d9d4e5f145
doc/irmin.mem/Irmin_mem/Atomic_write/index.html
Module Irmin_mem.Atomic_write
Source
An in-memory store with atomic-write guarantees.
Parameters
module K : Irmin.Type.S
module V : Irmin.Type.S
Signature
include Irmin.ATOMIC_WRITE_STORE with type key = K.t and type value = V.t
Atomic write stores
Atomic-write stores are stores where it is possible to read, update and remove elements, with atomically guarantees.
The type for atomic-write backend stores.
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.
The type of watch handlers.
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
.