[][src]Module rustc::infer::resolve

🔬 This is a nightly-only experimental API. (rustc_private)

this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?

Structs

FullTypeResolver [
Experimental
]
OpportunisticTypeAndRegionResolver [
Experimental
]

The opportunistic type and region resolver is similar to the opportunistic type resolver, but also opportunistically resolves regions. It is useful for canonicalization.

OpportunisticTypeResolver [
Experimental
]

The opportunistic type resolver can be used at any time. It simply replaces type 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.

UnresolvedTypeFinder [
Experimental
]

The unresolved type finder walks your type and searches for type variables that don't yet have a value. They get pushed into a vector. It does not construct the fully resolved type (which might involve some hashing and so forth).

Functions

fully_resolve [
Experimental
]

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.