Skip to main content

Module resolve

Module resolve 

Source

Re-exportsยง

use rustc_middle::ty; ๐Ÿ”’
use rustc_middle::ty::Const; ๐Ÿ”’
use rustc_middle::ty::DelayedMap; ๐Ÿ”’
use rustc_middle::ty::FallibleTypeFolder; ๐Ÿ”’
use rustc_middle::ty::InferConst; ๐Ÿ”’
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::TypeVisitableExt; ๐Ÿ”’
use rustc_span::bug; ๐Ÿ”’
use rustc_type_ir::PredicateProxy; ๐Ÿ”’
use super::FixupError; ๐Ÿ”’
use super::FixupResult; ๐Ÿ”’
use super::InferCtxt; ๐Ÿ”’
use crate::infer::TyOrConstInferVar; ๐Ÿ”’

Structsยง

DeepResolverIgnoringRegions
The type and const resolver can be used at any time. It simply replaces type/const variables that have been unified with the things they have been unified with (similar to shallow_resolve, but deep). This is useful for printing messages etc but also required at various points for correctness.
FullTypeResolver ๐Ÿ”’

Functionsยง

deeply_resolve_via_region_graph
Full type resolution replaces all type and region variables with their concrete results. If any variable cannot be replaced (never unified, etc) then an Err result is returned.