pub(crate) enum ResolutionError<'ra> {
Show 28 variants
GenericParamsFromOuterItem(Res<NodeId>, HasGenericParams, DefKind),
NameAlreadyUsedInParameterList(Symbol, Span),
MethodNotMemberOfTrait(Ident, String, Option<Symbol>),
TypeNotMemberOfTrait(Ident, String, Option<Symbol>),
ConstNotMemberOfTrait(Ident, String, Option<Symbol>),
VariableNotBoundInPattern(BindingError, ParentScope<'ra>),
VariableBoundWithDifferentMode(Symbol, Span),
IdentifierBoundMoreThanOnceInParameterList(Symbol),
IdentifierBoundMoreThanOnceInSamePattern(Symbol),
UndeclaredLabel {
name: Symbol,
suggestion: Option<(Ident, bool)>,
},
SelfImportsOnlyAllowedWithin {
root: bool,
span_with_rename: Span,
},
SelfImportCanOnlyAppearOnceInTheList,
SelfImportOnlyInImportListWithNonEmptyPrefix,
FailedToResolve {
segment: Option<Symbol>,
label: String,
suggestion: Option<(Vec<(Span, String)>, String, Applicability)>,
module: Option<ModuleOrUniformRoot<'ra>>,
},
CannotCaptureDynamicEnvironmentInFnItem,
AttemptToUseNonConstantValueInConstant {
ident: Ident,
suggestion: &'static str,
current: &'static str,
type_span: Option<Span>,
},
BindingShadowsSomethingUnacceptable {
shadowing_binding: PatternSource,
name: Symbol,
participle: &'static str,
article: &'static str,
shadowed_binding: Res<NodeId>,
shadowed_binding_span: Span,
},
ForwardDeclaredGenericParam,
ParamInTyOfConstParam {
name: Symbol,
param_kind: Option<ParamKindInTyOfConstParam>,
},
ParamInNonTrivialAnonConst {
name: Symbol,
param_kind: ParamKindInNonTrivialAnonConst,
},
ParamInEnumDiscriminant {
name: Symbol,
param_kind: ParamKindInEnumDiscriminant,
},
SelfInGenericParamDefault,
UnreachableLabel {
name: Symbol,
definition_span: Span,
suggestion: Option<(Ident, bool)>,
},
TraitImplMismatch {
name: Symbol,
kind: &'static str,
trait_path: String,
trait_item_span: Span,
code: ErrCode,
},
TraitImplDuplicate {
name: Symbol,
trait_item_span: Span,
old_span: Span,
},
InvalidAsmSym,
LowercaseSelf,
BindingInNeverPattern,
}
Variants§
GenericParamsFromOuterItem(Res<NodeId>, HasGenericParams, DefKind)
Error E0401: can’t use type or const parameters from outer item.
NameAlreadyUsedInParameterList(Symbol, Span)
Error E0403: the name is already used for a type or const parameter in this generic parameter list.
MethodNotMemberOfTrait(Ident, String, Option<Symbol>)
Error E0407: method is not a member of trait.
TypeNotMemberOfTrait(Ident, String, Option<Symbol>)
Error E0437: type is not a member of trait.
ConstNotMemberOfTrait(Ident, String, Option<Symbol>)
Error E0438: const is not a member of trait.
VariableNotBoundInPattern(BindingError, ParentScope<'ra>)
Error E0408: variable {}
is not bound in all patterns.
VariableBoundWithDifferentMode(Symbol, Span)
Error E0409: variable {}
is bound in inconsistent ways within the same match arm.
IdentifierBoundMoreThanOnceInParameterList(Symbol)
Error E0415: identifier is bound more than once in this parameter list.
IdentifierBoundMoreThanOnceInSamePattern(Symbol)
Error E0416: identifier is bound more than once in the same pattern.
UndeclaredLabel
Error E0426: use of undeclared label.
SelfImportsOnlyAllowedWithin
Error E0429: self
imports are only allowed within a { }
list.
SelfImportCanOnlyAppearOnceInTheList
Error E0430: self
import can only appear once in the list.
SelfImportOnlyInImportListWithNonEmptyPrefix
Error E0431: self
import can only appear in an import list with a non-empty prefix.
FailedToResolve
Error E0433: failed to resolve.
Fields
module: Option<ModuleOrUniformRoot<'ra>>
CannotCaptureDynamicEnvironmentInFnItem
Error E0434: can’t capture dynamic environment in a fn item.
AttemptToUseNonConstantValueInConstant
Error E0435: attempt to use a non-constant value in a constant.
BindingShadowsSomethingUnacceptable
Error E0530: X
bindings cannot shadow Y
s.
Fields
shadowing_binding: PatternSource
ForwardDeclaredGenericParam
Error E0128: generic parameters with a default cannot use forward-declared identifiers.
ParamInTyOfConstParam
ERROR E0770: the type of const parameters must not depend on other generic parameters.
ParamInNonTrivialAnonConst
generic parameters must not be used inside const evaluations.
This error is only emitted when using min_const_generics
.
ParamInEnumDiscriminant
generic parameters must not be used inside enum discriminants.
This error is emitted even with generic_const_exprs
.
SelfInGenericParamDefault
Error E0735: generic parameters with a default cannot use Self
UnreachableLabel
Error E0767: use of unreachable label
TraitImplMismatch
Error E0323, E0324, E0325: mismatch between trait item and impl item.
TraitImplDuplicate
Error E0201: multiple impl items for the same trait item.
InvalidAsmSym
Inline asm sym
operand must refer to a fn
or static
.
LowercaseSelf
self
used instead of Self
in a generic parameter
BindingInNeverPattern
A never pattern has a binding.
Trait Implementations§
Auto Trait Implementations§
impl<'ra> Freeze for ResolutionError<'ra>
impl<'ra> !RefUnwindSafe for ResolutionError<'ra>
impl<'ra> !Send for ResolutionError<'ra>
impl<'ra> !Sync for ResolutionError<'ra>
impl<'ra> Unpin for ResolutionError<'ra>
impl<'ra> !UnwindSafe for ResolutionError<'ra>
Blanket Implementations§
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, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
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<P> IntoQueryParam<P> for P
impl<P> IntoQueryParam<P> for P
fn into_query_param(self) -> P
source§impl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> 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<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
default fn from_cycle_error( tcx: Tcx, cycle_error: &CycleError, _guar: ErrorGuaranteed, ) -> 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: 104 bytes
Size for each variant:
GenericParamsFromOuterItem
: 36 bytesNameAlreadyUsedInParameterList
: 20 bytesMethodNotMemberOfTrait
: 48 bytesTypeNotMemberOfTrait
: 48 bytesConstNotMemberOfTrait
: 48 bytesVariableNotBoundInPattern
: 104 bytesVariableBoundWithDifferentMode
: 20 bytesIdentifierBoundMoreThanOnceInParameterList
: 12 bytesIdentifierBoundMoreThanOnceInSamePattern
: 12 bytesUndeclaredLabel
: 28 bytesSelfImportsOnlyAllowedWithin
: 20 bytesSelfImportCanOnlyAppearOnceInTheList
: 0 bytesSelfImportOnlyInImportListWithNonEmptyPrefix
: 0 bytesFailedToResolve
: 104 bytesCannotCaptureDynamicEnvironmentInFnItem
: 0 bytesAttemptToUseNonConstantValueInConstant
: 64 bytesBindingShadowsSomethingUnacceptable
: 72 bytesForwardDeclaredGenericParam
: 0 bytesParamInTyOfConstParam
: 16 bytesParamInNonTrivialAnonConst
: 16 bytesParamInEnumDiscriminant
: 16 bytesSelfInGenericParamDefault
: 0 bytesUnreachableLabel
: 36 bytesTraitImplMismatch
: 64 bytesTraitImplDuplicate
: 28 bytesInvalidAsmSym
: 0 bytesLowercaseSelf
: 0 bytesBindingInNeverPattern
: 0 bytes