Struct petgraph::visit::Topo [] [src]

pub struct Topo<N, VM> { /* fields omitted */ }

A topological order traversal for a graph.

Note that Topo only visits nodes that are not part of cycles, i.e. nodes in a true DAG. Use other visitors like DfsPostOrder or algorithms like kosaraju_scc to handle graphs with possible cycles.

Methods

impl<N, VM> Topo<N, VM> where
    N: Copy + PartialEq,
    VM: VisitMap<N>, 
[src]

Create a new Topo, using the graph's visitor map, and put all initial nodes in the to visit list.

Clear visited state, and put all initial nodes in the to visit list.

Return the next node in the current topological order traversal, or None if the traversal is at the end.

Note: The graph may not have a complete topological order, and the only way to know is to run the whole traversal and make sure it visits every node.

Trait Implementations

impl<N: Clone, VM: Clone> Clone for Topo<N, VM>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<G> Walker<G> for Topo<G::NodeId, G::Map> where
    G: IntoNeighborsDirected + Visitable
[src]

Advance to the next item

Create an iterator out of the walker and given context.