Struct rustc_mir::dataflow::move_paths::MoveData [−][src]
pub struct MoveData<'tcx> { pub move_paths: IndexVec<MovePathIndex, MovePath<'tcx>>, pub moves: IndexVec<MoveOutIndex, MoveOut>, pub loc_map: LocationMap<Vec<MoveOutIndex>>, pub path_map: IndexVec<MovePathIndex, Vec<MoveOutIndex>>, pub rev_lookup: MovePathLookup<'tcx>, pub inits: IndexVec<InitIndex, Init>, pub init_loc_map: LocationMap<Vec<InitIndex>>, pub init_path_map: IndexVec<MovePathIndex, Vec<InitIndex>>, }
🔬 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
move_paths: IndexVec<MovePathIndex, MovePath<'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?
moves: IndexVec<MoveOutIndex, MoveOut>
🔬 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?
loc_map: LocationMap<Vec<MoveOutIndex>>
🔬 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?
Each Location l
is mapped to the MoveOut's that are effects
of executing the code at l
. (There can be multiple MoveOut's
for a given l
because each MoveOut is associated with one
particular path being moved.)
path_map: IndexVec<MovePathIndex, Vec<MoveOutIndex>>
🔬 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?
rev_lookup: MovePathLookup<'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?
inits: IndexVec<InitIndex, Init>
🔬 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?
init_loc_map: LocationMap<Vec<InitIndex>>
🔬 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?
Each Location l
is mapped to the Inits that are effects
of executing the code at l
.
init_path_map: IndexVec<MovePathIndex, Vec<InitIndex>>
🔬 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, 'gcx, 'tcx> MoveData<'tcx>
[src]
impl<'a, 'gcx, 'tcx> MoveData<'tcx>
pub fn gather_moves(
mir: &Mir<'tcx>,
tcx: TyCtxt<'a, 'gcx, 'tcx>
) -> Result<Self, (Self, Vec<MoveError<'tcx>>)>
[src]
pub fn gather_moves(
mir: &Mir<'tcx>,
tcx: TyCtxt<'a, 'gcx, 'tcx>
) -> Result<Self, (Self, Vec<MoveError<'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?