sig
module type G =
sig
type t
module V : Sig.COMPARABLE
val iter_vertex : (V.t -> unit) -> WeakTopological.G.t -> unit
val iter_succ : (V.t -> unit) -> WeakTopological.G.t -> V.t -> unit
end
type 'a element = Vertex of 'a | Component of 'a * 'a WeakTopological.t
and 'a t
val fold_left :
('a -> 'b WeakTopological.element -> 'a) ->
'a -> 'b WeakTopological.t -> 'a
module Make :
functor (G : G) ->
sig
val recursive_scc :
WeakTopological.G.t -> G.V.t -> G.V.t WeakTopological.t
end
end