Struct rustc_trait_selection::traits::query::type_op::normalize::Normalize [−][src]
pub struct Normalize<T> {
pub value: T,
}Fields
value: TTrait Implementations
type QueryResponse = TGive query the option for a simple fast path that never
actually hits the tcx cache lookup etc. Return Some(r) with
a final result or None to do the full path. Read more
fn perform_query(
tcx: TyCtxt<'tcx>,
canonicalized: Canonicalized<'tcx, ParamEnvAnd<'tcx, Self>>
) -> Fallible<CanonicalizedQueryResponse<'tcx, Self::QueryResponse>>
fn perform_query(
tcx: TyCtxt<'tcx>,
canonicalized: Canonicalized<'tcx, ParamEnvAnd<'tcx, Self>>
) -> Fallible<CanonicalizedQueryResponse<'tcx, Self::QueryResponse>>Performs the actual query with the canonicalized key – the
real work happens here. This method is not given an infcx
because it shouldn’t need one – and if it had access to one,
it might do things like invoke sub_regions, which would be
bad, because it would create subregion relationships that are
not captured in the return value. Read more
fn fully_perform_into(
query_key: ParamEnvAnd<'tcx, Self>,
infcx: &InferCtxt<'_, 'tcx>,
output_query_region_constraints: &mut QueryRegionConstraints<'tcx>
) -> Fallible<Self::QueryResponse>Auto Trait Implementations
impl<T> RefUnwindSafe for Normalize<T> where
T: RefUnwindSafe, impl<T> UnwindSafe for Normalize<T> where
T: UnwindSafe, Blanket Implementations
pub fn allocate_from_iter(
arena: &'a Arena<'tcx>,
iter: impl IntoIterator<Item = T>
) -> &'a mut [T]Mutably borrows from an owned value. Read more
pub fn subst_spanned(
self,
tcx: TyCtxt<'tcx>,
substs: &[GenericArg<'tcx>],
span: Option<Span>
) -> TLayout
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.