Struct rustc_typeck::dep_graph::DepGraphQuery
[−]
[src]
pub struct DepGraphQuery<D> where D: Eq + Clone + Hash + Debug {
pub graph: Graph<DepNode<D>, ()>,
pub indices: HashMap<DepNode<D>, NodeIndex, BuildHasherDefault<FxHasher>>,
}
🔬 This is a nightly-only experimental API. (
rustc_private
)Fields
graph: Graph<DepNode<D>, ()>
🔬 This is a nightly-only experimental API. (
rustc_private
)indices: HashMap<DepNode<D>, NodeIndex, BuildHasherDefault<FxHasher>>
🔬 This is a nightly-only experimental API. (
rustc_private
)Methods
impl<D> DepGraphQuery<D> where D: Eq + Clone + Hash + Debug
[src]
fn new(nodes: &[DepNode<D>],
edges: &[(DepNode<D>, DepNode<D>)])
-> DepGraphQuery<D>
edges: &[(DepNode<D>, DepNode<D>)])
-> DepGraphQuery<D>
🔬 This is a nightly-only experimental API. (
rustc_private
)fn contains_node(&self, node: &DepNode<D>) -> bool
🔬 This is a nightly-only experimental API. (
rustc_private
)fn nodes(&self) -> Vec<&DepNode<D>>
🔬 This is a nightly-only experimental API. (
rustc_private
)fn edges(&self) -> Vec<(&DepNode<D>, &DepNode<D>)>
🔬 This is a nightly-only experimental API. (
rustc_private
)fn transitive_successors(&self, node: &DepNode<D>) -> Vec<&DepNode<D>>
🔬 This is a nightly-only experimental API. (
rustc_private
)All nodes reachable from node
. In other words, things that
will have to be recomputed if node
changes.
fn transitive_predecessors(&self, node: &DepNode<D>) -> Vec<&DepNode<D>>
🔬 This is a nightly-only experimental API. (
rustc_private
)All nodes that can reach node
.
fn immediate_successors(&self, node: &DepNode<D>) -> Vec<&DepNode<D>>
🔬 This is a nightly-only experimental API. (
rustc_private
)Just the outgoing edges from node
.