rustc_middle::ty

Type Alias CanonicalUserType

source
pub type CanonicalUserType<'tcx> = Canonical<'tcx, UserType<'tcx>>;
Expand description

Canonical user type annotation.

Aliased Type§

struct CanonicalUserType<'tcx> {
    pub value: UserType<'tcx>,
    pub max_universe: UniverseIndex,
    pub defining_opaque_types: &'tcx RawList<(), LocalDefId>,
    pub variables: &'tcx RawList<(), CanonicalVarInfo<TyCtxt<'tcx>>>,
}

Fields§

§value: UserType<'tcx>§max_universe: UniverseIndex§defining_opaque_types: &'tcx RawList<(), LocalDefId>§variables: &'tcx RawList<(), CanonicalVarInfo<TyCtxt<'tcx>>>

Trait Implementations§

source§

impl<'tcx> IsIdentity for CanonicalUserType<'tcx>

source§

fn is_identity(&self) -> bool

Returns true if this represents the generic parameters of the form [?0, ?1, ?2], i.e., each thing is mapped to a canonical variable with the same index.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 56 bytes