Module Graph.WeakTopological

module type G = sig ... end
type 'a element =
| Vertex of 'a
| Component of 'a * 'a t
and 'a t
val fold_left : ('a -> 'b element -> 'a) -> 'a -> 'b t -> 'a
module Make : functor (G : G) -> sig ... end