Macros§
Structs§
- ArgFolder 🔒
- Binder
Binderis a binder for higher-ranked lifetimes or types. It is part of the compiler’s representation for things likefor<'a> Fn(&'a isize)(which would be represented by the typePolyTraitRef == Binder<I, TraitRef>).- Bound
Const - Bound
Region - BoundTy
- Early
Binder - Similar to
Binderexcept that it tracks early bound generics, i.e.struct Foo<T>(T)needsTinstantiated immediately. This type primarily exists to avoid forgetting to callinstantiate. - Early
Binder Iter - Iter
Identity Copied - Iter
Instantiated - Iter
Instantiated Copied - Placeholder
- The “placeholder index” fully defines a placeholder region, type, or const. Placeholders are identified by both a universe, as well as a name residing within that universe. Distinct bound regions/types/consts within the same universe simply have an unknown relationship to one
- Validate
Bound Vars
Enums§
- Bound
Region Kind - Bound
TyKind - Bound
VarIndex Kind - Okay, we do something fun for
Boundtypes/regions/consts: Specifically, we distinguish between canonically bound things andfor<>bound things. And, really, it comes down to caching during canonicalization and instantiation. - Bound
Variable Kind