Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Judgment loan_not_required_by_live_place

judgment_fn! {
    /// For some `place_live` where
    ///
    ///    let x = &'lt_loan place_borrowed;
    ///    ...
    ///    access(place_accessed); // conflicts with the borrow
    ///    ...
    ///    access(place_live) // <-- an access like this occurs later
    ///
    /// ...show that `place_live` does not require data derived from `x`.
    fn loan_not_required_by_live_place(
        env: TypeckEnv,
        assumptions: Predicates,
        outlives: Set<PendingOutlives>,
        loan: Loan,
        live_place: TypedPlaceExpr,
    ) => () {
        /* rules omitted */
    }
}

Source: crates/formality-rust/src/check/borrow_check/nll.rs:1328

The number on each rule’s conclusion is positive coverage; the number on each premise is negative coverage. Click a number to browse the tests.

loan is not required by type
LineCoverageSource
134829(loan_not_required_by_parameter(env, assumptions, outlives, loan, &live_place.ty) => ())
1349✗(loan_not_required_by_live_place_prefix(env, assumptions, outlives, loan, live_place) => ())
──────── ("loan is not required by type")
135112(loan_not_required_by_live_place(
env,
assumptions,
outlives,
loan,
live_place,
) => ())

How to read this page