Enum rustc_mir::util::elaborate_drops::DropStyle[−][src]

pub enum DropStyle {
    Dead,
    Static,
    Conditional,
    Open,
}
Expand description

Describes how/if a value should be dropped.

Variants

Dead
Expand description

The value is already dead at the drop location, no drop will be executed.

Static
Expand description

The value is known to always be initialized at the drop location, drop will always be executed.

Conditional
Expand description

Whether the value needs to be dropped depends on its drop flag.

Open
Expand description

An “open” drop is one where only the fields of a value are dropped.

For example, this happens when moving out of a struct field: The rest of the struct will be dropped in such an “open” drop. It is also used to generate drop glue for the individual components of a value, for example for dropping array elements.

Trait Implementations

impl Debug for DropStyle[src]

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

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl RefUnwindSafe for DropStyle

impl Send for DropStyle

impl Sync for DropStyle

impl Unpin for DropStyle

impl UnwindSafe for DropStyle

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<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, 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]