Struct rustc_mir::dataflow::move_paths::MovePathLookup [−][src]
pub struct MovePathLookup<'tcx> { locals: IndexVec<Local, MovePathIndex>, projections: FxHashMap<(MovePathIndex, ProjectionElem<'tcx, AbstractOperand, AbstractType>), MovePathIndex>, }
🔬 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?
Tables mapping from a place to its MovePathIndex.
Fields
locals: IndexVec<Local, MovePathIndex>
🔬 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?
projections: FxHashMap<(MovePathIndex, ProjectionElem<'tcx, AbstractOperand, AbstractType>), MovePathIndex>
🔬 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?
projections are made from a base-place and a projection elem. The base-place will have a unique MovePathIndex; we use the latter as the index into the outer vector (narrowing subsequent search so that it is solely relative to that base-place). For the remaining lookup, we map the projection elem to the associated MovePathIndex.
Methods
impl<'tcx> MovePathLookup<'tcx>
[src]
impl<'tcx> MovePathLookup<'tcx>
pub fn find(&self, place: &Place<'tcx>) -> LookupResult
[src]
pub fn find(&self, place: &Place<'tcx>) -> LookupResult
🔬 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?
pub fn find_local(&self, local: Local) -> MovePathIndex
[src]
pub fn find_local(&self, local: Local) -> MovePathIndex
🔬 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<'tcx> Debug for MovePathLookup<'tcx>
[src]
impl<'tcx> Debug for MovePathLookup<'tcx>
Auto Trait Implementations
impl<'tcx> !Send for MovePathLookup<'tcx>
impl<'tcx> !Send for MovePathLookup<'tcx>
impl<'tcx> !Sync for MovePathLookup<'tcx>
impl<'tcx> !Sync for MovePathLookup<'tcx>