`sig
module type S =
sig
type graph
type vertex
type edge
type edge_label
val merge_vertex :
Merge.S.graph -> Merge.S.vertex list -> Merge.S.graph
val merge_edges_e :
?src:Merge.S.vertex ->
?dst:Merge.S.vertex ->
Merge.S.graph -> Merge.S.edge list -> Merge.S.graph
val merge_edges_with_label :
?src:Merge.S.vertex ->
?dst:Merge.S.vertex ->
?label:Merge.S.edge_label ->
Merge.S.graph -> Merge.S.edge_label -> Merge.S.graph
val merge_isolabelled_edges : Merge.S.graph -> Merge.S.graph
val merge_ends :
?strict:bool ->
?specified_vertex:Merge.S.vertex -> Merge.S.graph -> Merge.S.graph
val merge_starts :
?strict:bool ->
?specified_vertex:Merge.S.vertex -> Merge.S.graph -> Merge.S.graph
val merge_scc :
?loop_killer:bool ->
?specified_vertex:(Merge.S.vertex list -> Merge.S.vertex) ->
Merge.S.graph -> Merge.S.graph
end
module B :
functor (X : Builder.S) ->
sig
type graph = X.G.t
type edge_label = X.G.E.label
val merge_vertex : graph -> X.G.vertex list -> graph
val merge_edges_e :
?src:X.G.vertex ->
?dst:X.G.vertex -> graph -> X.G.edge list -> graph
val merge_edges_with_label :
?src:X.G.vertex ->
?dst:X.G.vertex ->
?label:edge_label -> graph -> edge_label -> graph
val merge_isolabelled_edges : graph -> graph
val merge_ends :
?strict:bool -> ?specified_vertex:X.G.vertex -> graph -> graph
val merge_starts :
?strict:bool -> ?specified_vertex:X.G.vertex -> graph -> graph
val merge_scc :
?loop_killer:bool ->
?specified_vertex:(X.G.vertex list -> X.G.vertex) -> graph -> graph
end
module P :
functor (G : Sig.P) ->
sig
type graph = G.t
type edge_label = G.E.label
val merge_vertex : graph -> G.vertex list -> graph
val merge_edges_e :
?src:G.vertex -> ?dst:G.vertex -> graph -> G.edge list -> graph
val merge_edges_with_label :
?src:G.vertex ->
?dst:G.vertex -> ?label:edge_label -> graph -> edge_label -> graph
val merge_isolabelled_edges : graph -> graph
val merge_ends :
?strict:bool -> ?specified_vertex:G.vertex -> graph -> graph
val merge_starts :
?strict:bool -> ?specified_vertex:G.vertex -> graph -> graph
val merge_scc :
?loop_killer:bool ->
?specified_vertex:(G.vertex list -> G.vertex) -> graph -> graph
end
module I :
functor (G : Sig.I) ->
sig
type graph = G.t
type vertex = G.vertex
type edge = G.edge
type edge_label = G.E.label
val merge_vertex : Merge.I.graph -> Merge.I.vertex list -> unit
val merge_edges_e :
?src:Merge.I.vertex ->
?dst:Merge.I.vertex -> Merge.I.graph -> Merge.I.edge list -> unit
val merge_edges_with_label :
?src:Merge.I.vertex ->
?dst:Merge.I.vertex ->
?label:Merge.I.edge_label ->
Merge.I.graph -> Merge.I.edge_label -> unit
val merge_isolabelled_edges : Merge.I.graph -> unit
val merge_ends :
?strict:bool ->
?specified_vertex:Merge.I.vertex -> Merge.I.graph -> unit
val merge_starts :
?strict:bool ->
?specified_vertex:Merge.I.vertex -> Merge.I.graph -> unit
val merge_scc :
?loop_killer:bool ->
?specified_vertex:(Merge.I.vertex list -> Merge.I.vertex) ->
Merge.I.graph -> unit
end
end`