module Store: sig
.. end
Store API.
type
t
The type for store handlers.
val remote : ?uri:Uri.t -> unit -> t Lwt.t
Create a remote store handler, using Irmin's HTTP client. uri
is
the location of the Irmin daemon.
val local : ?root:string -> unit -> t Lwt.t
Create a local store handler, using Irmin's Git on-disk
backend. root
is the filesystem location to the Git repository
holding the store contents.
type 'a
callback = 'a -> unit Lwt.t
The type for callbacks.
type
cancel = unit callback
The type for watch cancelling functions.
val with_transaction : ?retry:int -> t -> string -> (t -> unit Lwt.t) -> unit Lwt.t
with_transaction t f
executes f t
in a transaction and commit
the final result if the transaction is successful. Will retry
multiple times in case of conflict (default is 5) with an
exponential back-off. Raise Invalid_argument
if the transaction
is still not successful after all the retries.
module type S = sig
.. end
The signature for objects kept in the store.
module Worker: sig
.. end
Persisting state for workers.
module Task: sig
.. end
Persisting state for tasks.
module Job: sig
.. end
Persisting state for jobs.
module Object: S
with type id := Object.id and type value := Object.t
Persisting state for objects.