Functor Topological.Make_stable

module Make_stable: 
functor (G : sig
include Topological.G
val in_degree : t -> V.t -> int
end) -> sig .. end
Provide the same features than Topological.Make, except that the resulting topological ordering is stable according to vertices comparison: if two vertices v1 and v2 are topologically equal, v1 is presented first to the iterator if and only if G.V.compare v1 v2 <= 0. In particular, the resulting order is not dependent on the provided hash function. This property is not guaranteed by the functor Topological.Make. The counterpart is a less efficient implementation: worst time complexity is O(E*V*ln(V)) instead of O(E*V) (with E = number of edges and V = number of vertices.
Parameters:
G : sig include G val in_degree : t -> V.t -> int end

val fold : (G.V.t -> 'a -> 'a) -> Topological.G.t -> 'a -> 'a
val iter : (G.V.t -> unit) -> Topological.G.t -> unit