Module rustc::middle::typeck::infer[src]

See doc.rs for documentation

Reexports

pub use middle::ty::IntVarValue;
pub use middle::typeck::infer::resolve::resolve_and_force_all_but_regions;
pub use middle::typeck::infer::resolve::{force_all, not_regions};
pub use middle::typeck::infer::resolve::{force_ivar};
pub use middle::typeck::infer::resolve::{force_tvar, force_rvar};
pub use middle::typeck::infer::resolve::{resolve_ivar, resolve_all};
pub use middle::typeck::infer::resolve::{resolve_nested_tvar};
pub use middle::typeck::infer::resolve::{resolve_rvar};

Modules

coercion

Type Coercion

combine
doc

Type inference engine

error_reporting

Error Reporting Code for the inference engine

glb
lattice

Lattice Variables

lub
region_inference

See doc.rs

resolve
sub
test

Standalone Tests for the Inference Module

unify

Structs

Bounds
CombinedSnapshot
InferCtxt
TypeTrace

The trace designates the path through inference that we took to encounter an error or subtyping constraint.

Enums

RegionVariableOrigin

Reasons to create a region inference variable

SubregionOrigin

The origin of a r1 <= r2 constraint.

TypeOrigin

Why did we require that the two types be related?

ValuePairs

See error_reporting.rs for more details

fixup_err

Traits

CresCompare
ToUres
then

Functions

can_mk_subty
common_supertype

Computes the least upper-bound of a and b. If this is not possible, reports an error and returns ty::err.

fixup_err_to_str
fold_regions_in_sig
mk_coercety
mk_eqty
mk_sub_trait_refs
mk_subr
mk_subty
new_infer_ctxt
resolve_region
resolve_type
uok

Type Definitions

Bound
CoerceResult
cres
fres
ures