package irmin
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=964512f77697947a73dd1875c634d6804e98f14167c5aadd3c4f85b5f30ffb53
sha512=d56d3285daa2dd36f1eaff867af5c8f44c61bba4de1a5c7bb5347652dbc460c343483ab61de1a9302f664af357eacc964dc5c8b4477f6d01372dc028b162e98b
doc/irmin/Irmin/Commit/index.html
Module Irmin.Commit
Source
Commit values represent the store history.
Every commit contains a list of predecessor commits, and the collection of commits form an acyclic directed graph.
Every commit also can contain an optional key, pointing to a node value. See the Node signature for more details on node values.
Maker
provides a simple implementation of commit values, parameterized by commit info.
Generic_key
generalises the concept of "commit" to one that supports object keys that are not strictly equal to hashes.
Portable form of a commit implementation that can be constructed from a concrete representation and used in computing hashes. Conceptually, a Commit.Portable.t
is a Commit.t
in which all internal keys have been replaced with the hashes of the values they point to.
module Store
(I : Info.S)
(N : Node.Store)
(S : Content_addressable.S with type key = N.key)
(H : Hash.S with type t = S.key)
(V : S with type hash = S.key and type t = S.value and module Info := I) :
Store
with type 'a t = 'a N.t * 'a S.t
and type key = S.key
and type hash = S.key
and type value = S.value
and module Info = I
and module Val = V
Store
creates a new commit store.
History
specifies the signature for commit history. The history is represented as a partial-order of commits and basic functions to search through that history are provided.
module History
(C : Store) :
History
with type 'a t = 'a C.t
and type v = C.Val.t
and type node_key = C.Node.key
and type commit_key = C.key
and type info = C.Info.t
Build a commit history.