Enum rustc_hir::TyKind [−][src]
pub enum TyKind<'hir> {
Show variants
Slice(&'hir Ty<'hir>),
Array(&'hir Ty<'hir>, AnonConst),
Ptr(MutTy<'hir>),
Rptr(Lifetime, MutTy<'hir>),
BareFn(&'hir BareFnTy<'hir>),
Never,
Tup(&'hir [Ty<'hir>]),
Path(QPath<'hir>),
OpaqueDef(ItemId, &'hir [GenericArg<'hir>]),
TraitObject(&'hir [PolyTraitRef<'hir>], Lifetime, TraitObjectSyntax),
Typeof(AnonConst),
Infer,
Err,
}Expand description
The various kinds of types recognized by the compiler.
Variants
Slice(&'hir Ty<'hir>)Expand description
A variable length slice (i.e., [T]).
Expand description
A fixed length array (i.e., [T; n]).
Ptr(MutTy<'hir>)Expand description
A raw pointer (i.e., *const T or *mut T).
Expand description
A reference (i.e., &'a T or &'a mut T).
BareFn(&'hir BareFnTy<'hir>)Expand description
A bare function (e.g., fn(usize) -> bool).
Expand description
The never type (!).
Expand description
A tuple ((A, B, C, D, ...)).
Path(QPath<'hir>)Expand description
A path to a type definition (module::module::...::Type), or an
associated type (e.g., <Vec<T> as Trait>::Type or <T>::Target).
Type parameters may be stored in each PathSegment.
OpaqueDef(ItemId, &'hir [GenericArg<'hir>])Expand description
A opaque type definition itself. This is currently only used for the
opaque type Foo: Trait item that impl Trait in desugars to.
The generic argument list contains the lifetimes (and in the future
possibly parameters) that are actually bound on the impl Trait.
TraitObject(&'hir [PolyTraitRef<'hir>], Lifetime, TraitObjectSyntax)Expand description
A trait object type Bound1 + Bound2 + Bound3
where Bound is a trait or a lifetime.
Typeof(AnonConst)Expand description
Unused for now.
Expand description
TyKind::Infer means the type should be inferred instead of it having been
specified. This can appear anywhere in a type.
Expand description
Placeholder for a type that has failed to be defined.
Trait Implementations
impl<'hir, __CTX> HashStable<__CTX> for TyKind<'hir> where
__CTX: HashStableContext, [src]
impl<'hir, __CTX> HashStable<__CTX> for TyKind<'hir> where
__CTX: HashStableContext, [src]