package irmin-indexeddb

  1. Overview
  2. Docs

Module Irmin_indexeddb.Branch_storeSource

The branch store records the head commit hash for each branch.

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.

Sourcetype t

The type for atomic-write backend stores.

Sourcetype key = K.t

The type for keys.

Sourcetype value = V.t

The type for raw values.

Sourceval mem : t -> key -> bool Lwt.t

mem t k is true iff k is present in t.

Sourceval find : t -> key -> value option Lwt.t

find t k is Some v if k is associated to v in t and None is k is not present in t.

Sourceval set : t -> key -> value -> unit Lwt.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.

Sourceval test_and_set : t -> key -> test:value option -> set:value option -> bool Lwt.t

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.

Sourceval remove : t -> key -> unit Lwt.t

remove t k remove the key k in t.

Sourceval list : t -> key list Lwt.t

list t it the list of keys in t.

Sourcetype watch

The type of watch handlers.

Sourceval watch : t -> ?init:(key * value) list -> (key -> value Irmin.Diff.t -> 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.

Sourceval watch_key : t -> key -> ?init:value -> (value Irmin.Diff.t -> 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.

Sourceval unwatch : t -> watch -> unit Lwt.t

unwatch t w removes w from t's watch handlers.

Sourceval close : t -> unit Lwt.t

close t frees up all the resources associated to t. Any operations run on a closed store will raise Closed.

v config is a function returning fresh store handles, with the configuration config, which is provided by the backend.

OCaml

Innovation. Community. Security.