Module Object_graph.Make

Parameters

module Hash : Digestif.S
module Store : sig ... end

Signature

type hash = Hash.t
type store = Store.t
module S : Stdlib.Set.S with type elt = hash

An imperative Graph of the store.

module K : Graph.Sig.I with type V.t = hash
val keys : K.t -> hash list

keys graph returns all hashes recheables in the graph graph.

val of_keys : store -> K.t Lwt.t

of_keys store makes a new graph from all values of a store.

val of_commits : store -> K.t Lwt.t

of_commits store makes a new graph from all commits of a store.

val closure : ?full:bool -> store -> min:S.t -> max:S.t -> K.t Lwt.t
val pack : store -> min:S.t -> max:S.t -> (hash * hash Value.t) list Lwt.t
val to_dot : store -> Stdlib.Format.formatter -> unit Lwt.t