package irmin
Private references.
Ref Store
include RRW with type value = Commit.key with type key = branch_id
Reactive read-write stores
Reactive read-write stores are read-write stores with reactive capabilities.
include RW with type value = Commit.key with type key = branch_id
Read-write stores
include RO with type value = Commit.key with type key = branch_id
Read-only stores
type key = branch_id
Type for keys.
type value = Commit.key
Type for values.
Same as read
but raise Invalid_argument
if the key does not exist.
update 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.
compare_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.
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.