Trait rustc_middle::ty::Interner

source ·
pub trait Interner: Sized {
Show 38 associated items type AdtDef: Clone + Debug + Hash + Ord; type GenericArgsRef: Clone + DebugWithInfcx<Self> + Hash + Ord + IntoIterator<Item = Self::GenericArg>; type GenericArg: Clone + DebugWithInfcx<Self> + Hash + Ord; type DefId: Clone + Debug + Hash + Ord; type Binder<T>; type Ty: Clone + DebugWithInfcx<Self> + Hash + Ord; type Const: Clone + DebugWithInfcx<Self> + Hash + Ord; type Region: Clone + DebugWithInfcx<Self> + Hash + Ord; type Predicate; type TypeAndMut: Clone + Debug + Hash + Ord; type Mutability: Clone + Debug + Hash + Ord; type Movability: Clone + Debug + Hash + Ord; type PolyFnSig: Clone + DebugWithInfcx<Self> + Hash + Ord; type ListBinderExistentialPredicate: Clone + DebugWithInfcx<Self> + Hash + Ord; type BinderListTy: Clone + DebugWithInfcx<Self> + Hash + Ord; type ListTy: Clone + Debug + Hash + Ord + IntoIterator<Item = Self::Ty>; type AliasTy: Clone + DebugWithInfcx<Self> + Hash + Ord; type ParamTy: Clone + Debug + Hash + Ord; type BoundTy: Clone + Debug + Hash + Ord; type PlaceholderType: Clone + Debug + Hash + Ord; type InferTy: Clone + DebugWithInfcx<Self> + Hash + Ord; type ErrorGuaranteed: Clone + Debug + Hash + Ord; type PredicateKind: Clone + Debug + Hash + PartialEq<Self::PredicateKind> + Eq; type AllocId: Clone + Debug + Hash + Ord; type InferConst: Clone + DebugWithInfcx<Self> + Hash + Ord; type AliasConst: Clone + DebugWithInfcx<Self> + Hash + Ord; type PlaceholderConst: Clone + Debug + Hash + Ord; type ParamConst: Clone + Debug + Hash + Ord; type BoundConst: Clone + Debug + Hash + Ord; type ValueConst: Clone + Debug + Hash + Ord; type ExprConst: Clone + DebugWithInfcx<Self> + Hash + Ord; type EarlyBoundRegion: Clone + Debug + Hash + Ord; type BoundRegion: Clone + Debug + Hash + Ord; type FreeRegion: Clone + Debug + Hash + Ord; type RegionVid: Clone + DebugWithInfcx<Self> + Hash + Ord; type PlaceholderRegion: Clone + Debug + Hash + Ord; // Required methods fn ty_and_mut_to_parts( ty_and_mut: Self::TypeAndMut ) -> (Self::Ty, Self::Mutability); fn mutability_is_mut(mutbl: Self::Mutability) -> bool;
}

Required Associated Types§

source

type AdtDef: Clone + Debug + Hash + Ord

source

type GenericArgsRef: Clone + DebugWithInfcx<Self> + Hash + Ord + IntoIterator<Item = Self::GenericArg>

source

type GenericArg: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type DefId: Clone + Debug + Hash + Ord

source

type Binder<T>

source

type Ty: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type Const: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type Region: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type Predicate

source

type TypeAndMut: Clone + Debug + Hash + Ord

source

type Mutability: Clone + Debug + Hash + Ord

source

type Movability: Clone + Debug + Hash + Ord

source

type PolyFnSig: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type ListBinderExistentialPredicate: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type BinderListTy: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type ListTy: Clone + Debug + Hash + Ord + IntoIterator<Item = Self::Ty>

source

type AliasTy: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type ParamTy: Clone + Debug + Hash + Ord

source

type BoundTy: Clone + Debug + Hash + Ord

source

type PlaceholderType: Clone + Debug + Hash + Ord

source

type InferTy: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type ErrorGuaranteed: Clone + Debug + Hash + Ord

source

type PredicateKind: Clone + Debug + Hash + PartialEq<Self::PredicateKind> + Eq

source

type AllocId: Clone + Debug + Hash + Ord

source

type InferConst: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type AliasConst: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type PlaceholderConst: Clone + Debug + Hash + Ord

source

type ParamConst: Clone + Debug + Hash + Ord

source

type BoundConst: Clone + Debug + Hash + Ord

source

type ValueConst: Clone + Debug + Hash + Ord

source

type ExprConst: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type EarlyBoundRegion: Clone + Debug + Hash + Ord

source

type BoundRegion: Clone + Debug + Hash + Ord

source

type FreeRegion: Clone + Debug + Hash + Ord

source

type RegionVid: Clone + DebugWithInfcx<Self> + Hash + Ord

source

type PlaceholderRegion: Clone + Debug + Hash + Ord

Required Methods§

source

fn ty_and_mut_to_parts( ty_and_mut: Self::TypeAndMut ) -> (Self::Ty, Self::Mutability)

source

fn mutability_is_mut(mutbl: Self::Mutability) -> bool

Implementors§