borrow checker
The part of the Rust compiler that proves every reference is valid and no value has two writers at once.
The borrow checker enforces Rust's ownership rules -- one owner per value, any number of shared borrows or one exclusive borrow, no reference outliving its value -- and rejects programs that break them.
Examples
If one part of the firmware holds a mutable borrow of a reading buffer, the borrow checker rejects any other code reading it at the same time.
The borrow checker works at compile time, so the ESP32 firmware pays nothing for it at run time.
See also