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.