Module rustc_borrowck::region_infer

source ·


  • dump_mir 🔒
    As part of generating the regions, if you enable -Zdump-mir=nll, we will generate an annotated copy of the MIR that includes the state of region inference. This code handles emitting the region context internal state.
  • graphviz 🔒
    This module provides linkage between RegionInferenceContext and rustc_graphviz traits, specialized to attaching borrowck analysis data to rendered labels.


  • Each time that apply_member_constraint is successful, it appends one of these structs to the member_constraints_applied field. This is used in error reporting to trace out what happened.
  • A “type test” corresponds to an outlives constraint between a type and a lifetime, like T: 'x or <T as Foo>::Bar: 'x. They are translated from the Verify region constraints in the ordinary inference context.


  • Cause 🔒
    N.B., the variants in Cause are intentionally ordered. Lower values are preferred when it comes to error messages. Do not reorder willy nilly.
  • When we have an unmet lifetime constraint, we try to propagate it outward (e.g. to a closure environment). If we can’t, it is an error.
  • Trace 🔒