Expand description

This query borrow-checks the MIR to (further) ensure it is not broken.

Modules

This file provides API for compiler consumers.
dataflow 🔒
def_use 🔒
Borrow checker diagnostics.
error 🔒
facts 🔒
location 🔒
nll 🔒
The entry point of the NLL borrow checker.
path_utils 🔒
place_ext 🔒
prefixes 🔒
From the NLL RFC: “The deep [aka ‘supporting’] prefixes for an place are formed by stripping away fields and derefs, except that we stop when we reach the deref of a shared reference. […] “
renumber 🔒
type_check 🔒
This pass type-checks the MIR to ensure it is not broken.
Code to extract the universally quantified regions declared on a function and the relationships between them. For example:
used_muts 🔒

Structs

A Body with information computed by the borrow checker. This struct is intended to be consumed by compiler consumers.
RootPlace 🔒
Associate some local constants with the 'tcx lifetime
Upvar 🔒

Enums

When checking permissions for a place access, this flag is used to indicate that an immutable local place can be mutated.
Overlap 🔒
The degree of overlap between 2 places for borrow-checking.
ReadKind 🔒
Kind of read access to a value (For informational purposes only)
Kind of access to a value: read or write (For informational purposes only)
WriteKind 🔒
Kind of write access to a value (For informational purposes only)

Functions

Perform the actual borrow checking.