Enum rustc_trait_selection::infer::RegionVariableOrigin [−][src]
pub enum RegionVariableOrigin {
MiscVariable(Span),
PatternRegion(Span),
AddrOfRegion(Span),
Autoref(Span, AssocItem),
Coercion(Span),
EarlyBoundRegion(Span, Symbol),
LateBoundRegion(Span, BoundRegionKind, LateBoundRegionConversionTime),
UpvarRegion(UpvarId, Span),
Nll(NllRegionVariableOrigin),
}Expand description
Reasons to create a region inference variable
See error_reporting module for more details
Variants
MiscVariable(Span)Expand description
Region variables created for ill-categorized reasons, mostly indicates places in need of refactoring
PatternRegion(Span)Expand description
Regions created by a &P or [...] pattern
AddrOfRegion(Span)Expand description
Regions created by & operator
Expand description
Regions created as part of an autoref of a method receiver
Coercion(Span)Expand description
Regions created as part of an automatic coercion
Expand description
Region variables created as the values for early-bound regions
LateBoundRegion(Span, BoundRegionKind, LateBoundRegionConversionTime)Expand description
Region variables created for bound regions in a function or method that is called
Expand description
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<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
T: Copy, [src]
impl<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
T: Copy, [src]pub fn allocate_on(self, arena: &'a Arena<'tcx>) -> &'a mut T[src]
pub fn allocate_from_iter(
arena: &'a Arena<'tcx>,
iter: impl IntoIterator<Item = T>
) -> &'a mut [T][src]
arena: &'a Arena<'tcx>,
iter: impl IntoIterator<Item = T>
) -> &'a mut [T]
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]