rustc_type_ir::relate::solver_relating

Trait RelateExt

source
pub trait RelateExt: InferCtxtLike {
    // Required methods
    fn relate<T: Relate<Self::Interner>>(
        &self,
        param_env: <Self::Interner as Interner>::ParamEnv,
        lhs: T,
        variance: Variance,
        rhs: T,
    ) -> Result<Vec<Goal<Self::Interner, <Self::Interner as Interner>::Predicate>>, TypeError<Self::Interner>>;
    fn eq_structurally_relating_aliases<T: Relate<Self::Interner>>(
        &self,
        param_env: <Self::Interner as Interner>::ParamEnv,
        lhs: T,
        rhs: T,
    ) -> Result<Vec<Goal<Self::Interner, <Self::Interner as Interner>::Predicate>>, TypeError<Self::Interner>>;
}

Required Methods§

source

fn relate<T: Relate<Self::Interner>>( &self, param_env: <Self::Interner as Interner>::ParamEnv, lhs: T, variance: Variance, rhs: T, ) -> Result<Vec<Goal<Self::Interner, <Self::Interner as Interner>::Predicate>>, TypeError<Self::Interner>>

source

fn eq_structurally_relating_aliases<T: Relate<Self::Interner>>( &self, param_env: <Self::Interner as Interner>::ParamEnv, lhs: T, rhs: T, ) -> Result<Vec<Goal<Self::Interner, <Self::Interner as Interner>::Predicate>>, TypeError<Self::Interner>>

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<Infcx: InferCtxtLike> RelateExt for Infcx