Enum rustc_mir::interpret::LocalValue [−][src]
Expand description
Current value of a local variable
Variants
Expand description
This local is not currently alive, and cannot be used at all.
Expand description
This local is alive but not yet initialized. It can be written to but not read from or its address taken. Locals get initialized on first write because for unsized locals, we do not know their size before that.
Live(Operand<Tag>)Expand description
A normal, live local.
Mostly for convenience, we re-use the Operand type here.
This is an optimization over just always having a pointer here;
we can thus avoid doing an allocation when the local just stores
immediate values and never has its address taken.
Trait Implementations
impl<Tag: Clone> Clone for LocalValue<Tag>[src]
impl<Tag: Clone> Clone for LocalValue<Tag>[src]fn clone(&self) -> LocalValue<Tag>[src]
fn clone(&self) -> LocalValue<Tag>[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]Performs copy-assignment from source. Read more
impl<Tag: Debug> Debug for LocalValue<Tag>[src]
impl<Tag: Debug> Debug for LocalValue<Tag>[src]impl<'__ctx, Tag> HashStable<StableHashingContext<'__ctx>> for LocalValue<Tag> where
Tag: HashStable<StableHashingContext<'__ctx>>, [src]
impl<'__ctx, Tag> HashStable<StableHashingContext<'__ctx>> for LocalValue<Tag> where
Tag: HashStable<StableHashingContext<'__ctx>>, [src]fn hash_stable(
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)[src]
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)
impl<Tag: PartialEq> PartialEq<LocalValue<Tag>> for LocalValue<Tag>[src]
impl<Tag: PartialEq> PartialEq<LocalValue<Tag>> for LocalValue<Tag>[src]fn eq(&self, other: &LocalValue<Tag>) -> bool[src]
fn eq(&self, other: &LocalValue<Tag>) -> bool[src]This method tests for self and other values to be equal, and is used
by ==. Read more
fn ne(&self, other: &LocalValue<Tag>) -> bool[src]
fn ne(&self, other: &LocalValue<Tag>) -> bool[src]This method tests for !=.
impl<Tag: Copy> Copy for LocalValue<Tag>[src]
impl<Tag: Eq> Eq for LocalValue<Tag>[src]
impl<Tag> StructuralEq for LocalValue<Tag>[src]
impl<Tag> StructuralPartialEq for LocalValue<Tag>[src]
Auto Trait Implementations
impl<Tag> RefUnwindSafe for LocalValue<Tag> where
Tag: RefUnwindSafe,
Tag: RefUnwindSafe,
impl<Tag> Send for LocalValue<Tag> where
Tag: Send,
Tag: Send,
impl<Tag> Sync for LocalValue<Tag> where
Tag: Sync,
Tag: Sync,
impl<Tag> Unpin for LocalValue<Tag> where
Tag: Unpin,
Tag: Unpin,
impl<Tag> UnwindSafe for LocalValue<Tag> where
Tag: UnwindSafe,
Tag: UnwindSafe,
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> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> WithConstness for T[src]
impl<T> WithConstness for T[src]