Crate rustc_hir_typecksource ·
- _match 🔒
- Some helper functions for
- callee 🔒
- Code for type-checking cast expressions.
- check 🔒
- closure 🔒Code for type-checking closure expressions.
- coercion 🔒Type Coercion
- demand 🔒
- diverges 🔒
- errors 🔒Errors emitted by
- expr 🔒Type checking expressions.
- A different sort of visitor for walking fn bodies. Unlike the normal visitor, which just walks the entire body in one shot, the
ExprUseVisitordetermines how expressions are being used.
- fallback 🔒
- fn_ctxt 🔒
- This calculates the types which has storage which lives across a suspension point in a generator from the perspective of typeck. The actual types used at runtime is calculated in
rustc_mir_transform::generatorand may be a subset of the types computed here.
- method 🔒Method lookup: the secret sauce of Rust. See the rustc dev guide for more information.
- op 🔒Code related to processing overloaded binary and unary operators.
- pat 🔒
- place_op 🔒
- upvar 🔒Inferring borrow kinds for upvars
FnCtxtstores type-checking context needed to type-check bodies of functions, closures, and
consts, including performing type inference with
check_fnis invoked on a generator (i.e., a body that includes yield), it returns back some information about the yield points.
- Closures defined within the function. For example:
- The type of a local binding, including the revealed type for anon types.
- Controls whether the arguments are tupled. This is used for the call operator.
- Raw content of Fluent resource for this crate, generated by
fluent_messagesmacro, imported by
rustc_driverto include all crates’ resources in one bundle.
- Used only to get
TypeckResultsfor type inference during error recovery. Currently only used for type inference of
consts to avoid type cycle errors.
- If this
DefIdis a “primary tables entry”, returns
Some((body_id, body_ty, fn_sig)). Otherwise, returns
- typeck 🔒