Module Backend.Repo

A repo abstraction.

type t = repo

Repo opening and closing functions

val init : Conf.t -> t

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

val close : t -> unit

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

Getters from repo to backend store in ro mode

val contents_t : t -> Import.read Contents.t
val node_t : t -> Import.read Node.t
val commit_t : t -> Import.read Commit.t
val config : t -> Conf.t
val batch : ?lock:bool -> t -> (Import.read_write Contents.t -> Import.read_write Node.t -> Import.read_write Commit.t -> 'a) -> 'a

A getter from repo to backend stores in rw mode.

val branch_t : t -> Branch.t

A branch store getter from repo