Function rustc_borrowck::consumers::get_body_with_borrowck_facts
source · pub fn get_body_with_borrowck_facts<'tcx>(
tcx: TyCtxt<'tcx>,
def: WithOptConstParam<LocalDefId>
) -> BodyWithBorrowckFacts<'tcx>
Expand description
This function computes Polonius facts for the given body. It makes a copy of the body because it needs to regenerate the region identifiers. This function should never be invoked during a typical compilation session due to performance issues with Polonius.
Note:
-
This function will panic if the required body was already stolen. This can, for example, happen when requesting a body of a
const
function because they are evaluated during typechecking. The panic can be avoided by overriding themir_borrowck
query. You can find a complete example that shows how to do this atsrc/test/run-make/obtain-borrowck/
. -
Polonius is highly unstable, so expect regular changes in its signature or other details.