Skip to main content

Module normalize

Module normalize 

Source
Expand description

Deeply normalize types using the old trait solver.

Re-exportsยง

use rustc_errors::msg; ๐Ÿ”’
use rustc_infer::infer::at::At; ๐Ÿ”’
use rustc_infer::infer::InferCtxt; ๐Ÿ”’
use rustc_infer::infer::InferOk; ๐Ÿ”’
use rustc_infer::traits::FromSolverError; ๐Ÿ”’
use rustc_infer::traits::Normalized; ๐Ÿ”’
use rustc_infer::traits::Obligation; ๐Ÿ”’
use rustc_infer::traits::PredicateObligations; ๐Ÿ”’
use rustc_infer::traits::TraitEngine; ๐Ÿ”’
use rustc_infer::traits::TraitErrors; ๐Ÿ”’
use rustc_macros::extension; ๐Ÿ”’
use rustc_middle::traits::ObligationCause; ๐Ÿ”’
use rustc_middle::traits::ObligationCauseCode; ๐Ÿ”’
use rustc_middle::ty; ๐Ÿ”’
use rustc_middle::ty::AliasTerm; ๐Ÿ”’
use rustc_middle::ty::PredicateProxy; ๐Ÿ”’
use rustc_middle::ty::Term; ๐Ÿ”’
use rustc_middle::ty::Ty; ๐Ÿ”’
use rustc_middle::ty::TyCtxt; ๐Ÿ”’
use rustc_middle::ty::TypeFoldable; ๐Ÿ”’
use rustc_middle::ty::TypeFolder; ๐Ÿ”’
use rustc_middle::ty::TypeSuperFoldable; ๐Ÿ”’
use rustc_middle::ty::TypeVisitable; ๐Ÿ”’
use rustc_middle::ty::TypeVisitableExt; ๐Ÿ”’
use rustc_middle::ty::TypingMode; ๐Ÿ”’
use rustc_middle::ty::Unnormalized; ๐Ÿ”’
use rustc_span::span_bug; ๐Ÿ”’
use thin_vec::ThinVec; ๐Ÿ”’
use tracing::debug; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use super::BoundVarReplacer; ๐Ÿ”’
use super::PlaceholderReplacer; ๐Ÿ”’
use super::SelectionContext; ๐Ÿ”’
use super::project; ๐Ÿ”’
use crate::error_reporting::InferCtxtErrorExt; ๐Ÿ”’
use crate::error_reporting::traits::OverflowCause; ๐Ÿ”’
use crate::solve::NextSolverError; ๐Ÿ”’

Structsยง

AssocTypeNormalizer ๐Ÿ”’

Traitsยง

NormalizeExt

Functionsยง

needs_normalization ๐Ÿ”’
normalize_with_depth ๐Ÿ”’
As normalize, but with a custom depth.
normalize_with_depth_to ๐Ÿ”’