[−][src]Enum rustc_trait_selection::infer::RegionVariableOrigin

pub enum RegionVariableOrigin {
    MiscVariable(Span),
    PatternRegion(Span),
    AddrOfRegion(Span),
    Autoref(Span, AssocItem),
    Coercion(Span),
    EarlyBoundRegion(Span, Symbol),
    LateBoundRegion(Span, BoundRegion, LateBoundRegionConversionTime),
    UpvarRegion(UpvarId, Span),
    BoundRegionInCoherence(Symbol),
    NLL(NLLRegionVariableOrigin),
}

Reasons to create a region inference variable

See error_reporting module for more details

Variants

MiscVariable(Span)

Region variables created for ill-categorized reasons, mostly indicates places in need of refactoring

PatternRegion(Span)

Regions created by a &P or [...] pattern

AddrOfRegion(Span)

Regions created by & operator

Autoref(Span, AssocItem)

Regions created as part of an autoref of a method receiver

Coercion(Span)

Regions created as part of an automatic coercion

EarlyBoundRegion(Span, Symbol)

Region variables created as the values for early-bound regions

LateBoundRegion(Span, BoundRegion, LateBoundRegionConversionTime)

Region variables created for bound regions in a function or method that is called

UpvarRegion(UpvarId, Span)
BoundRegionInCoherence(Symbol)
NLL(NLLRegionVariableOrigin)

This origin is used for the inference variables that we create during NLL region processing.

Auto Trait Implementations

impl RefUnwindSafe for RegionVariableOrigin

impl !Send for RegionVariableOrigin

impl !Sync for RegionVariableOrigin

impl Unpin for RegionVariableOrigin

impl UnwindSafe for RegionVariableOrigin

Blanket Implementations

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

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

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

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

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

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

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

type Owned = T

The resulting type after obtaining ownership.

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.

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.

impl<T> WithConstness for T[src]