Bypassing the borrow checker - do ref -> ptr -> ref partial borrows cause UB?
Partial borrows across function boundaries don't really work in Rust. Unfortunately, that's kind of a major issue. There are workarounds, some are outlined here, but all of them come with pretty major drawbacks.