[][src]Module rustc_data_structures::graph

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

Modules

dominatorsInternal

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

implementationInternal

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

iterateInternal
referenceInternal
sccInternal

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_graphInternal

Traits

ControlFlowGraphInternal
DirectedGraphInternal
GraphPredecessorsInternal
GraphSuccessorsInternal
WithNumEdgesInternal
WithNumNodesInternal
WithPredecessorsInternal
WithStartNodeInternal
WithSuccessorsInternal

Functions

is_cyclicInternal

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