Trait rustc_mir::dataflow::InitialFlow [−][src]
pub trait InitialFlow { fn bottom_value() -> bool; }
🔬 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?
Parameterization for the precise form of data flow that is used.
InitialFlow
handles initializing the bitvectors before any
code is inspected by the analysis. Analyses that need more nuanced
initialization (e.g. they need to consult the results of some other
dataflow analysis to set up the initial bitvectors) should not
implement this.
Required Methods
fn bottom_value() -> bool
🔬 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?
Specifies the initial value for each bit in the on_entry
set
Implementors
impl<'a, 'tcx> InitialFlow for MaybeStorageLive<'a, 'tcx>
impl<'a, 'tcx> InitialFlow for HaveBeenBorrowedLocals<'a, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for Borrows<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for MaybeInitializedPlaces<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for MaybeUninitializedPlaces<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for DefinitelyInitializedPlaces<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for MovingOutStatements<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> InitialFlow for EverInitializedPlaces<'a, 'gcx, 'tcx>