Module Copy.Copy


module Copy: sig .. end

module P: 
functor (Gf : Sig.G) ->
functor (Gt : Sig.P) ->
functor (M : sig
val vertex : Gt.t -> Gf.V.t -> Gt.V.t * Gt.t
vertex g' v returns the modified new graph and its corresponding vertex in this graph.
val edge : Gt.t -> Gt.V.t -> Gt.V.t -> Gt.t
edge g' v1' v2' returns the modified new graph given the images of two vertices that had an edge in the original graph
end) -> sig .. end
Persistent implementation
module I: 
functor (Gf : Sig.G) ->
functor (Gt : Sig.I) ->
functor (M : sig
val vertex : Gt.t -> Gf.V.t -> Gt.V.t
vertex g' v modifies the new graph and return the vertex corresponding to v in this graph.
val edge : Gt.t -> Gt.V.t -> Gt.V.t -> unit
edge g' v1' v2' modifies the new graph given the images of two vertices that had an edge in the original graph
end) -> sig .. end
Imperative implementation