Expand description

The entry point of the NLL borrow checker.


NllOutput 🔒

The output of nll::compute_regions. This includes the computed RegionInferenceContext, any closure requirements to propagate, and any generated errors.


Right now, we piggy back on the ReVar to store our NLL inference regions. These are indexed with RegionVid. This method will assert that the region is a ReVar and extract its internal index. This is reasonable because in our MIR we replace all universal regions with inference variables.


Computes the (non-lexical) regions from the input MIR.

Rewrites the regions in the MIR to use NLL variables, also scraping out the set of universal regions (e.g., region parameters) declared on the function. That set will need to be given to compute_regions.

Type Definitions