Type Alias TypeError
pub type TypeError<'db> = TypeError<DbInterner<'db>>;Aliased Type§
pub enum TypeError<'db> {
Show 24 variants
Mismatch,
PolarityMismatch(ExpectedFound<PredicatePolarity>),
SafetyMismatch(ExpectedFound<Safety>),
AbiMismatch(ExpectedFound<FnAbi>),
Mutability,
ArgumentMutability(usize),
TupleSize(ExpectedFound<usize>),
ArraySize(ExpectedFound<Const<'db>>),
ArgCount,
RegionsDoesNotOutlive(Region<'db>, Region<'db>),
RegionsInsufficientlyPolymorphic(BoundRegion, Region<'db>),
RegionsPlaceholderMismatch,
Sorts(ExpectedFound<Ty<'db>>),
ArgumentSorts(ExpectedFound<Ty<'db>>, usize),
Traits(ExpectedFound<TraitIdWrapper>),
VariadicMismatch(ExpectedFound<bool>),
CyclicTy(Ty<'db>),
CyclicConst(Const<'db>),
ProjectionMismatched(ExpectedFound<SolverDefId>),
ExistentialMismatch(ExpectedFound<BoundExistentialPredicates<'db>>),
ConstMismatch(ExpectedFound<Const<'db>>),
IntrinsicCast,
ForceInlineCast,
TargetFeatureCast(SolverDefId),
}Variants§
Mismatch
PolarityMismatch(ExpectedFound<PredicatePolarity>)
SafetyMismatch(ExpectedFound<Safety>)
AbiMismatch(ExpectedFound<FnAbi>)
Mutability
ArgumentMutability(usize)
TupleSize(ExpectedFound<usize>)
ArraySize(ExpectedFound<Const<'db>>)
ArgCount
RegionsDoesNotOutlive(Region<'db>, Region<'db>)
RegionsInsufficientlyPolymorphic(BoundRegion, Region<'db>)
RegionsPlaceholderMismatch
Sorts(ExpectedFound<Ty<'db>>)
ArgumentSorts(ExpectedFound<Ty<'db>>, usize)
Traits(ExpectedFound<TraitIdWrapper>)
VariadicMismatch(ExpectedFound<bool>)
CyclicTy(Ty<'db>)
Instantiating a type variable with the given type would have created a cycle (because it appears somewhere within that type).
CyclicConst(Const<'db>)
ProjectionMismatched(ExpectedFound<SolverDefId>)
ExistentialMismatch(ExpectedFound<BoundExistentialPredicates<'db>>)
ConstMismatch(ExpectedFound<Const<'db>>)
IntrinsicCast
ForceInlineCast
#[rustc_force_inline] functions must be inlined and must not be codegened independently,
so casting to a function pointer must be prohibited.
TargetFeatureCast(SolverDefId)
Safe #[target_feature] functions are not assignable to safe function pointers.