Module rustc_borrowck::universal_regions
source · Expand description
Code to extract the universally quantified regions declared on a function and the relationships between them. For example:
fn foo<'a, 'b, 'c: 'b>() { }
here we would return a map assigning each of {'a, 'b, 'c}
to an index, as well as the FreeRegionMap
which can compute
relationships between them.
The code in this file doesn’t do anything with those results; it just returns them for other code to use.
Structs
Enums
The “defining type” for this MIR. The key feature of the “defining
type” is that it contains the information needed to derive all the
universal regions that are in scope as well as the types of the
inputs/output from the MIR. In general, early-bound universal
regions appear free in the defining type and late-bound regions
appear bound in the signature.
Constants
FR 🔒
Traits
Functions
Iterates over the late-bound regions defined on
mir_def_id
and all of its
parents, up to the typeck root, and invokes f
with the liberated form
of each one.Iterates over the late-bound regions defined on
mir_def_id
and all of its
parents, up to the typeck root, and invokes f
with the liberated form
of each one.