Module KV.Commit

Parameters

module Node_key : Key.S with type hash = Hash.t
module Commit_key : Key.S with type hash = Hash.t

Signature

Commit values

type t

The type for commit values.

val t : t Type.t
val encoding : t Data_encoding.t

encoding is the data_encoding for t.

type node_key = Node_key.t

Type for node keys.

val node_key_t : node_key Type.t
val node_key_encoding : node_key Data_encoding.t

node_key_encoding is the data_encoding for node_key.

type commit_key = Commit_key.t

Type for commit keys.

val commit_key_t : commit_key Type.t
val commit_key_encoding : commit_key Data_encoding.t

commit_key_encoding is the data_encoding for commit_key.

val init : info:Info.t -> node:node_key -> parents:commit_key list -> t

init ~info ~node ~parents returns a new commit.

val node : t -> node_key

The underlying node key.

val parents : t -> commit_key list

The commit parents.

val info : t -> Info.t

The commit info.