Module Store

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.