Module Commit.Generic_key

Generic_key generalises the concept of "commit" to one that supports object keys that are not strictly equal to hashes.

module type Maker = Commit_intf.Maker_generic_key
module Maker (I : Info.S) : Maker with module Info = I
module Store (I : Info.S) (N : Node.Store) (S : Indexable.S) (H : Hash.S with type t = S.hash) (V : S with type node_key = N.key and type commit_key = S.key and type t = S.value and module Info := I) : Commit_intf.Store with type 'a t = 'a N.t * 'a S.t and type key = S.key and type value = S.value and module Info = I and type hash = S.hash and module Val = V
include Maker with module Info = Info.Default
module Info = Info.Default
module Make (H : Type.S) (N : Key.S with type hash = H.t) (C : Key.S with type hash = H.t) : sig ... end
module Make_v2 (H : Type.S) (N : Key.S with type hash = H.t) (C : Key.S with type hash = H.t) : sig ... end