package irmin-chunk

  1. Overview
  2. Docs

AO_stable(L)(X) is similar to AO(X) but is ensures that the return keys are similar as if they were stored directly in X, so that the fact that blobs are cut into chunks is an implementation detail.

Parameters

module S : Irmin.AO_MAKER
module K : Irmin.Hash.S

Signature

include Irmin.AO with type key = K.t and type value = V.t

Append-only stores

Append-only stores are read-only store where it is also possible to add values. Keys are derived from the values raw contents and hence are deterministic.

include Irmin.RO with type key = K.t with type value = V.t

Read-only stores

type t

The type for read-only backend stores.

type key = K.t

The type for keys.

type value = V.t

The type for raw values.

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

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

val 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.

val add : t -> value -> key Lwt.t

Write the contents of a value to the store. It's the responsibility of the append-only store to generate a consistent key.

val v : Irmin.config -> t Lwt.t

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