Struct rustc_borrowck::graphviz::DataflowLabeller [−][src]
pub struct DataflowLabeller<'a, 'tcx: 'a> {
pub inner: LabelledCFG<'a, 'tcx>,
pub variants: Vec<Variant>,
pub borrowck_ctxt: &'a BorrowckCtxt<'a, 'tcx>,
pub analysis_data: &'a AnalysisData<'a, 'tcx>,
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Fields
inner: LabelledCFG<'a, 'tcx>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
variants: Vec<Variant>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
borrowck_ctxt: &'a BorrowckCtxt<'a, 'tcx>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
analysis_data: &'a AnalysisData<'a, 'tcx>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Methods
impl<'a, 'tcx> DataflowLabeller<'a, 'tcx>[src]
impl<'a, 'tcx> DataflowLabeller<'a, 'tcx>fn dataflow_for(&self, e: EntryOrExit, n: &Node<'a>) -> String[src]
fn dataflow_for(&self, e: EntryOrExit, n: &Node<'a>) -> String🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn dataflow_for_variant(&self, e: EntryOrExit, n: &Node, v: Variant) -> String[src]
fn dataflow_for_variant(&self, e: EntryOrExit, n: &Node, v: Variant) -> String🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn build_set<O: DataFlowOperator, F>(
&self,
e: EntryOrExit,
cfgidx: CFGIndex,
dfcx: &DataFlowContext<'a, 'tcx, O>,
to_lp: F
) -> String where
F: FnMut(usize) -> Rc<LoanPath<'tcx>>, [src]
fn build_set<O: DataFlowOperator, F>(
&self,
e: EntryOrExit,
cfgidx: CFGIndex,
dfcx: &DataFlowContext<'a, 'tcx, O>,
to_lp: F
) -> String where
F: FnMut(usize) -> Rc<LoanPath<'tcx>>, 🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn dataflow_loans_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String[src]
fn dataflow_loans_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn dataflow_moves_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String[src]
fn dataflow_moves_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn dataflow_assigns_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String[src]
fn dataflow_assigns_for(&self, e: EntryOrExit, cfgidx: CFGIndex) -> String🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Trait Implementations
impl<'a, 'tcx> Labeller<'a> for DataflowLabeller<'a, 'tcx>[src]
impl<'a, 'tcx> Labeller<'a> for DataflowLabeller<'a, 'tcx>type Node = Node<'a>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
type Edge = Edge<'a>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn graph_id(&'a self) -> Id<'a>[src]
fn graph_id(&'a self) -> Id<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Must return a DOT compatible identifier naming the graph.
fn node_id(&'a self, n: &Node<'a>) -> Id<'a>[src]
fn node_id(&'a self, n: &Node<'a>) -> Id<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps n to a unique identifier with respect to self. The implementor is responsible for ensuring that the returned name is a valid DOT identifier. Read more
fn node_label(&'a self, n: &Node<'a>) -> LabelText<'a>[src]
fn node_label(&'a self, n: &Node<'a>) -> LabelText<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps n to a label that will be used in the rendered output. The label need not be unique, and may be the empty string; the default is just the output from node_id. Read more
fn edge_label(&'a self, e: &Edge<'a>) -> LabelText<'a>[src]
fn edge_label(&'a self, e: &Edge<'a>) -> LabelText<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps e to a label that will be used in the rendered output. The label need not be unique, and may be the empty string; the default is in fact the empty string. Read more
fn node_shape(&'a self, _node: &Self::Node) -> Option<LabelText<'a>>[src]
fn node_shape(&'a self, _node: &Self::Node) -> Option<LabelText<'a>>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps n to one of the [graphviz shape names][1]. If None is returned, no shape attribute is specified. Read more
fn node_style(&'a self, _n: &Self::Node) -> Style[src]
fn node_style(&'a self, _n: &Self::Node) -> Style🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps n to a style that will be used in the rendered output.
fn edge_style(&'a self, _e: &Self::Edge) -> Style[src]
fn edge_style(&'a self, _e: &Self::Edge) -> Style🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Maps e to a style that will be used in the rendered output.
impl<'a, 'tcx> GraphWalk<'a> for DataflowLabeller<'a, 'tcx>[src]
impl<'a, 'tcx> GraphWalk<'a> for DataflowLabeller<'a, 'tcx>type Node = Node<'a>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
type Edge = Edge<'a>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn nodes(&'a self) -> Nodes<'a, Node<'a>>[src]
fn nodes(&'a self) -> Nodes<'a, Node<'a>>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Returns all the nodes in this graph.
fn edges(&'a self) -> Edges<'a, Edge<'a>>[src]
fn edges(&'a self) -> Edges<'a, Edge<'a>>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Returns all of the edges in this graph.
fn source(&'a self, edge: &Edge<'a>) -> Node<'a>[src]
fn source(&'a self, edge: &Edge<'a>) -> Node<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The source node for edge.
fn target(&'a self, edge: &Edge<'a>) -> Node<'a>[src]
fn target(&'a self, edge: &Edge<'a>) -> Node<'a>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The target node for edge.
Auto Trait Implementations
impl<'a, 'tcx> !Send for DataflowLabeller<'a, 'tcx>
impl<'a, 'tcx> !Send for DataflowLabeller<'a, 'tcx>impl<'a, 'tcx> !Sync for DataflowLabeller<'a, 'tcx>
impl<'a, 'tcx> !Sync for DataflowLabeller<'a, 'tcx>