Enum rustc_middle::mir::visit::NonMutatingUseContext[−][src]

pub enum NonMutatingUseContext {
    Inspect,
    Copy,
    Move,
    SharedBorrow,
    ShallowBorrow,
    UniqueBorrow,
    AddressOf,
    Projection,
}

Variants

Inspect
Expand description

Being inspected in some way, like loading a len.

Copy
Expand description

Consumed as part of an operand.

Move
Expand description

Consumed as part of an operand.

SharedBorrow
Expand description

Shared borrow.

ShallowBorrow
Expand description

Shallow borrow.

UniqueBorrow
Expand description

Unique borrow.

AddressOf
Expand description

AddressOf for *const pointer.

Projection
Expand description

Used as base for another place, e.g., x in x.y. Will not mutate the place. For example, the projection x.y is not marked as a mutation in these cases:

z = x.y;
f(&x.y);

Trait Implementations

impl Clone for NonMutatingUseContext[src]

fn clone(&self) -> NonMutatingUseContext[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for NonMutatingUseContext[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl PartialEq<NonMutatingUseContext> for NonMutatingUseContext[src]

fn eq(&self, other: &NonMutatingUseContext) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

impl Copy for NonMutatingUseContext[src]

impl Eq for NonMutatingUseContext[src]

impl StructuralEq for NonMutatingUseContext[src]

impl StructuralPartialEq for NonMutatingUseContext[src]

Auto Trait Implementations

impl RefUnwindSafe for NonMutatingUseContext

impl Send for NonMutatingUseContext

impl Sync for NonMutatingUseContext

impl Unpin for NonMutatingUseContext

impl UnwindSafe for NonMutatingUseContext

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
    T: Copy, 
[src]

pub fn allocate_on(Self, &'a Arena<'tcx>) -> &'a mut T[src]

pub fn allocate_from_iter(
    &'a Arena<'tcx>,
    impl IntoIterator<Item = T>
) -> &'a mut [T]ⓘ

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> MaybeResult<T> for T[src]

type Error = !

pub fn from(Result<T, <T as MaybeResult<T>>::Error>) -> T[src]

pub fn to_result(self) -> Result<T, <T as MaybeResult<T>>::Error>[src]

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

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]

🔬 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, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> WithConstness for T[src]

fn with_constness(self, constness: Constness) -> ConstnessAnd<Self>[src]

fn with_const(self) -> ConstnessAnd<Self>[src]

fn without_const(self) -> ConstnessAnd<Self>[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]