Module rustc_type_ir::binder
source · Macros§
Structs§
- Binder is a binder for higher-ranked lifetimes or types. It is part of the compiler’s representation for things like
for<'a> Fn(&'a isize)
(which would be represented by the typePolyTraitRef == Binder<I, TraitRef>
). Note that when we instantiate, erase, or otherwise “discharge” these bound vars, we change the type fromBinder<I, T>
to justT
(see e.g.,liberate_late_bound_regions
). - Similar to
super::Binder
except that it tracks early bound generics, i.e.struct Foo<T>(T)
needsT
instantiated immediately. This type primarily exists to avoid forgetting to callinstantiate
.