pub enum StashKey {
Show 15 variants
ItemNoType,
UnderscoreForArrayLengths,
EarlySyntaxWarning,
CallIntoMethod,
LifetimeIsChar,
MaybeFruTypo,
CallAssocMethod,
TraitMissingMethod,
AssociatedTypeSuggestion,
OpaqueHiddenTypeMismatch,
MaybeForgetReturn,
Cycle,
UndeterminedMacroResolution,
ExprInPat,
GenericInFieldExpr,
}
Expand description
A key denoting where from a diagnostic was stashed.
Variants§
ItemNoType
UnderscoreForArrayLengths
EarlySyntaxWarning
CallIntoMethod
LifetimeIsChar
When an invalid lifetime e.g. '2
should be reinterpreted
as a char literal in the parser
MaybeFruTypo
Maybe there was a typo where a comma was forgotten before FRU syntax
CallAssocMethod
TraitMissingMethod
AssociatedTypeSuggestion
OpaqueHiddenTypeMismatch
MaybeForgetReturn
Cycle
Query cycle detected, stashing in favor of a better error.
UndeterminedMacroResolution
ExprInPat
Used by Parser::maybe_recover_trailing_expr
GenericInFieldExpr
If in the parser we detect a field expr with turbofish generic params it’s possible that
it’s a method call without parens. If later on in hir_typeck
we find out that this is
the case we suppress this message and we give a better suggestion.
Trait Implementations§
impl Copy for StashKey
impl Eq for StashKey
impl StructuralPartialEq for StashKey
Auto Trait Implementations§
impl DynSend for StashKey
impl DynSync for StashKey
impl Freeze for StashKey
impl RefUnwindSafe for StashKey
impl Send for StashKey
impl Sync for StashKey
impl Unpin for StashKey
impl UnwindSafe for StashKey
Blanket Implementations§
Source§impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
fn allocate_on(self, arena: &'tcx Arena<'tcx>) -> &'tcx mut T
fn allocate_from_iter( arena: &'tcx Arena<'tcx>, iter: impl IntoIterator<Item = T>, ) -> &'tcx mut [T]
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
Source§impl<I, T> UpcastFrom<I, T> for T
impl<I, T> UpcastFrom<I, T> for T
fn upcast_from(from: T, _tcx: I) -> T
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
ItemNoType
: 0 bytesUnderscoreForArrayLengths
: 0 bytesEarlySyntaxWarning
: 0 bytesCallIntoMethod
: 0 bytesLifetimeIsChar
: 0 bytesMaybeFruTypo
: 0 bytesCallAssocMethod
: 0 bytesTraitMissingMethod
: 0 bytesAssociatedTypeSuggestion
: 0 bytesOpaqueHiddenTypeMismatch
: 0 bytesMaybeForgetReturn
: 0 bytesCycle
: 0 bytesUndeterminedMacroResolution
: 0 bytesExprInPat
: 0 bytesGenericInFieldExpr
: 0 bytes