Expand description
HIR ty lowering: Lowers type-system entities1 from the HIR to
the rustc_middle::ty
representation.
Not to be confused with AST lowering which lowers AST constructs to HIR ones or with THIR / MIR lowering / building which lowers HIR bodies (i.e., “executable code”) to THIR / MIR.
Most lowering routines are defined on dyn HirTyLowerer
directly,
like the main routine of this module, lower_ty
.
This module used to be called astconv
.
This includes types, lifetimes / regions, constants in type positions, trait references and bounds. ↩
Modules§
Structs§
- A marker denoting that the generic arguments that were provided did not match the respective generic parameters.
- Decorates the result of a generic argument count mismatch check with whether explicit late bounds were provided.
- A path segment that is semantically allowed to have generic arguments.
Enums§
- The “qualified self” of an associated item path.
- New-typed boolean indicating whether explicit late-bound lifetimes are present in a set of generic arguments.
- In some cases,
hir::ConstArg
s that are being used in the type system through const generics need to have their type “fed” to them using the query system. - Denotes the “position” of a generic argument, indicating if it is a generic type, generic function or generic method call.
Traits§
- A context which can lower type-system entities from the HIR to the
rustc_middle::ty
representation.