package irmin-pack
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=7af11e14d312b9ae340997f8c27907b9fc9a0d19539fb643e1820d5183a76750
    
    
  sha512=d7b61c6fddab0a8b61efe867b9a0fdc14c01eb1adeda2f5018b8dfee306c8324c77dd648c7cb9860e62a26e224955f9331b49d19cb693ad5d773efc53263d9fd
    
    
  doc/irmin-pack.mem/Irmin_pack_mem/Make/Private/Branch/index.html
Module Private.Branch
Private 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.
type key = branchThe type for keys.
type value = Hash.tThe 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__.S.diff -> unit Lwt.t) ->
  watch Lwt.twatch 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.
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 ... endBase functions on keys.
module Val : sig ... endBase functions on values.