pub type CanonicalVarKind<'tcx> = CanonicalVarKind<TyCtxt<'tcx>>;
Aliased Type§
pub enum CanonicalVarKind<'tcx> {
Ty(CanonicalTyVarKind),
PlaceholderTy(Placeholder<BoundTy>),
Region(UniverseIndex),
PlaceholderRegion(Placeholder<BoundRegion>),
Const(UniverseIndex),
PlaceholderConst(Placeholder<BoundVar>),
}
Variants§
Ty(CanonicalTyVarKind)
Some kind of type inference variable.
PlaceholderTy(Placeholder<BoundTy>)
A “placeholder” that represents “any type”.
Region(UniverseIndex)
Region variable '?R
.
PlaceholderRegion(Placeholder<BoundRegion>)
A “placeholder” that represents “any region”. Created when you
are solving a goal like for<'a> T: Foo<'a>
to represent the
bound region 'a
.
Const(UniverseIndex)
Some kind of const inference variable.
PlaceholderConst(Placeholder<BoundVar>)
A “placeholder” that represents “any const”.
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.