Skip to main content Module generic_args Copy item path Source use core::intrinsics ; ๐ Experimental use std::fmt::Debug ; ๐ use std::fmt::Debug ; ๐ use std::marker::PhantomData ; ๐ use std::num::NonZero ; ๐ use std::ops::Index ; ๐ use std::ptr::NonNull ; ๐ use rustc_data_structures::intern::Interned ; ๐ use rustc_errors::DiagArgValue ; ๐ use rustc_errors::IntoDiagArg ; ๐ use rustc_hir::def_id::DefId ; ๐ use rustc_macros::Lift ; ๐ use rustc_macros::StableHash ; ๐ use rustc_macros::TyDecodable ; ๐ use rustc_macros::TyEncodable ; ๐ use rustc_macros::extension ; ๐ use rustc_serialize::Decodable ; ๐ use rustc_serialize::Encodable ; ๐ use rustc_span::bug ; ๐ use rustc_type_ir::WithCachedTypeInfo ; ๐ use rustc_type_ir::walk::TypeWalker ; ๐ use smallvec::SmallVec ; ๐ use crate::ty::codec::TyDecoder ; ๐ use crate::ty::codec::TyEncoder ; ๐ use crate::ty ; ๐ use crate::ty::ClosureArgs ; ๐ use crate::ty::CoroutineArgs ; ๐ use crate::ty::CoroutineClosureArgs ; ๐ use crate::ty::FallibleTypeFolder ; ๐ use crate::ty::InlineConstArgs ; ๐ use crate::ty::Lift ; ๐ use crate::ty::List ; ๐ use crate::ty::Ty ; ๐ use crate::ty::TyCtxt ; ๐ use crate::ty::TypeFoldable ; ๐ use crate::ty::TypeFoldable ; ๐ use crate::ty::TypeFolder ; ๐ use crate::ty::TypeVisitable ; ๐ use crate::ty::TypeVisitable ; ๐ use crate::ty::TypeVisitor ; ๐ use crate::ty::VisitorResult ; ๐ use crate::ty::walk_visitable_list ; ๐ GenericArg An entity in the Rust type system, which can be one of
several kinds (types, lifetimes, and consts).
To reduce memory usage, a GenericArg is an interned pointer,
with the lowest 2 bits being reserved for a tag to
indicate the type (Ty, Region, or Const) it points to. GenericArgs List of generic arguments that are gonna be used to replace generic parameters. UserArgs Stores the user-given args to reach some fully qualified path
(e.g., <T>::Item or <T as Trait>::Item). UserSelfTy Specifies the user-given self type. In the case of a path that
refers to a member in an inherent impl, this self type is
sometimes needed to constrain the type parameters on the impl. For
example, in this code: CONST_TAG ๐ REGION_TAG ๐ TAG_MASK ๐ TYPE_TAG ๐ GenericArgPackExt ๐ GenericArgKind GenericArgsUnsized TermKind