Module Graph.Builder

Graph builders in order to persistent/imperative graphs sharing a same signature.

Common interface for graph builders

.

Note: the following functions always return graphs but this is meaningless for imperative implementations (the graph is modified in-place). This is just to provide a common interface.

module type S = sig ... end
module type INT = S with type G.V.label = int

Builders for the various graph implementations

module P : functor (G : Sig.P) -> S with module G = G

Persistent Graphs Builders.

module I : functor (G : Sig.I) -> S with module G = G

Imperative Graphs Builders.