Rust 97 🦀 Pinning Memory (Pin and Unpin)
Rust’s default assumption is that every value can move. Assignment moves, function calls move, returning from a function moves. For the vast majority of types this is harmless: a String owns a heap allocation and the pointer to that allocation travels with the struct when it moves. But some types contain pointers into their own…