Module Resolver.Store

module Impl : sig ... end
type remote_fn = ?ctx:Mimic.ctx -> ?headers:Cohttp.Header.t -> string -> Irmin.remote Lwt.t
type t

The type for store configurations. A configuration value contains: the store implementation a creator of store's state and endpoint.

type store_functor =
  1. | Fixed_hash of contents -> t
  2. | Variable_hash of hash -> contents -> t
  3. | Fixed of t
    (*

    The type of constructors of a store configuration. Depending on the backend, a store may require a hash function.

    *)
val v : ?remote:remote_fn -> Irmin.Backend.Conf.Spec.t -> (module Irmin.S with type t = _) -> t
val v_generic : ?remote:remote_fn -> Irmin.Backend.Conf.Spec.t -> (module Irmin.Generic_key.S with type t = _) -> t
val mem : hash -> contents -> t
val fs : hash -> contents -> t
val git : contents -> t
val pack : hash -> contents -> t
val find : string -> store_functor
val add : string -> ?default:bool -> store_functor -> unit
val generic_keyed : t -> (module Irmin.Generic_key.S)
val hash_keyed : t -> (module Irmin.S) option
val remote : t -> remote_fn option
val term : unit -> (string option * hash option * string option) Cmdliner.Term.t