# Trait rustc_trait_selection::traits::query::type_op::normalize::Normalizable

source ·

    pub trait Normalizable<'tcx>: Debug + TypeFoldable<TyCtxt<'tcx>> + Lift<TyCtxt<'tcx>> + Copy {
        // Required method
        fn type_op_method(
            tcx: TyCtxt<'tcx>,
            canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>,
        ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>;
    }

## Required Methods§

source

#### fn type_op_method( tcx: TyCtxt<'tcx>, canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>, ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>

## Object Safety§

This trait is not object safe.

## Implementations on Foreign Types§

source§

### impl<'tcx> Normalizable<'tcx> for Clause<'tcx>

source§

#### fn type_op_method( tcx: TyCtxt<'tcx>, canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>, ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>

source§

### impl<'tcx> Normalizable<'tcx> for Ty<'tcx>

source§

#### fn type_op_method( tcx: TyCtxt<'tcx>, canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>, ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>

source§

### impl<'tcx> Normalizable<'tcx> for FnSig<'tcx>

source§

#### fn type_op_method( tcx: TyCtxt<'tcx>, canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>, ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>

source§

### impl<'tcx> Normalizable<'tcx> for PolyFnSig<'tcx>

source§

#### fn type_op_method( tcx: TyCtxt<'tcx>, canonicalized: Canonical<'tcx, ParamEnvAnd<'tcx, Normalize<Self>>>, ) -> Result<CanonicalQueryResponse<'tcx, Self>, NoSolution>

## Implementors§