[][src]Module rustc_ap_rustc_data_structures::graph

Modules

dominators

Algorithm citation: A Simple, Fast Dominance Algorithm. Keith D. Cooper, Timothy J. Harvey, and Ken Kennedy Rice Computer Science TS-06-33870 https://www.cs.rice.edu/~keith/EMBED/dom.pdf

implementation

A graph module for use in dataflow, region resolution, and elsewhere.

iterate
scc

Routine to compute the strongly connected components (SCCs) of a graph, as well as the resulting DAG if each SCC is replaced with a node in the graph. This uses Tarjan's algorithm that completes in O(n) time.

vec_graph

Traits

ControlFlowGraph
DirectedGraph
GraphPredecessors
GraphSuccessors
WithNumEdges
WithNumNodes
WithPredecessors
WithStartNode
WithSuccessors

Functions

is_cyclic

Returns true if the graph has a cycle that is reachable from the start node.