Enum rustc_mir::dataflow::move_paths::IllegalMoveOriginKind [−][src]
pub(crate) enum IllegalMoveOriginKind<'tcx> {
BorrowedContent {
target_place: Place<'tcx>,
},
InteriorOfTypeWithDestructor {
container_ty: Ty<'tcx>,
},
InteriorOfSliceOrArray {
ty: Ty<'tcx>,
is_index: bool,
},
}Variants
Expand description
Illegal move due to attempt to move from behind a reference.
Show fields
Fields of BorrowedContent
target_place: Place<'tcx>Expand description
The place the reference refers to: if erroneous code was trying to
move from (*x).f this will be *x.
Expand description
Illegal move due to attempt to move from field of an ADT that
implements Drop. Rust maintains invariant that all Drop
ADT’s remain fully-initialized so that user-defined destructor
can safely read from all of the ADT’s fields.
Show fields
Fields of InteriorOfTypeWithDestructor
container_ty: Ty<'tcx>Expand description
Illegal move due to attempt to move out of a slice or array.
Trait Implementations
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for IllegalMoveOriginKind<'tcx>
impl<'tcx> !Send for IllegalMoveOriginKind<'tcx>
impl<'tcx> !Sync for IllegalMoveOriginKind<'tcx>
impl<'tcx> Unpin for IllegalMoveOriginKind<'tcx>
impl<'tcx> !UnwindSafe for IllegalMoveOriginKind<'tcx>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> WithConstness for T[src]
impl<T> WithConstness for T[src]