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>, NodeIndexBuildHasherDefault<FnvHasher>>,
}
Unstable (rustc_private)

Fields

graph: Graph<DepNode<D>, ()>
Unstable (rustc_private)
indices: HashMap<DepNode<D>, NodeIndexBuildHasherDefault<FnvHasher>>
Unstable (rustc_private)

Methods

impl<D> DepGraphQuery<D> where D: Eq + Clone + Hash + Debug

fn new(nodes: &[DepNode<D>], edges: &[(DepNode<D>, DepNode<D>)]) -> DepGraphQuery<D>

fn contains_node(&self, node: &DepNode<D>) -> bool

fn nodes(&self) -> Vec<DepNode<D>>

fn edges(&self) -> Vec<(DepNode<D>, DepNode<D>)>

fn transitive_successors(&self, node: DepNode<D>) -> Vec<DepNode<D>>

Unstable (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>>

Unstable (rustc_private)

All nodes that can reach node.

fn immediate_successors(&self, node: DepNode<D>) -> Vec<DepNode<D>>

Unstable (rustc_private)

Just the outgoing edges from node.