Module rustc_typeck::check [] [src]

Unstable (rustc_private)

Reexports

pub use self::Expectation::*;

Modules

_match [Unstable]
coercion [Unstable]
demand [Unstable]
dropck [Unstable]
method [Unstable]

Method lookup: the secret sauce of Rust. See README.md.

regionck [Unstable]

The region check is a final pass that runs over the AST after we have inferred the type constraints but before we have actually finalized the types. Its purpose is to embed a variety of region constraints. Inserting these constraints as a separate pass is good because (1) it localizes the code that has to do with region inference and (2) often we cannot know what constraints are needed until the basic types have been inferred.

writeback [Unstable]

Structs

FnCtxt [Unstable]
Inherited [Unstable]

closures defined within the function. For example:

InheritedBuilder [Unstable]

Helper type of a temporary returned by ccx.inherited(...). Necessary because we can't write the following bound: F: for<'b, 'tcx> where 'gcx: 'tcx FnOnce(Inherited<'b, 'gcx, 'tcx>).

UnsafetyState [Unstable]

Enums

Expectation [Unstable]

When type-checking an expression, we propagate downward whatever type hint we are able in the form of an Expectation.

UnresolvedTypeAction [Unstable]

Whether autoderef requires types to resolve.

Functions

check_bounds_are_used [Unstable]
check_drop_impls [Unstable]
check_enum_variants [Unstable]
check_item_bodies [Unstable]
check_item_body [Unstable]
check_item_type [Unstable]
check_item_types [Unstable]
check_representable [Unstable]

Checks whether a type can be represented in memory. In particular, it identifies types that contain themselves without indirection through a pointer, which would mean their size is unbounded.

check_simd [Unstable]
check_struct [Unstable]
check_wf_new [Unstable]
compare_const_impl [Unstable]
compare_impl_method [Unstable]

Checks that a method from an impl conforms to the signature of the same method as declared in the trait.

may_break [Unstable]