it!
wraps a pointer type P (e.g., &mut T); unsafe code can assume its address is fixed forever, making it a “pinned pointer”.
wraps a pointer type P (e.g., &mut T); unsafe code can assume its address is fixed forever, making it a “pinned pointer”. ● Pin
stops safe code from moving out of it.
wraps a pointer type P (e.g., &mut T); unsafe code can assume its address is fixed forever, making it a “pinned pointer”. ● Pin
stops safe code from moving out of it. ● Unpin types (i.e. most types) can be moved out of a Pin
; non-Unpin types cannot, because they are “address-sensitive”.
wraps a pointer type P (e.g., &mut T); unsafe code can assume its address is fixed forever, making it a “pinned pointer”. ● Pin
stops safe code from moving out of it. ● Unpin types (i.e. most types) can be moved out of a Pin
; non-Unpin types cannot, because they are “address-sensitive”. ● Pin
is implemented as a library, unlike builtin types like &[T] and *mut i32.
lets unsafe code assume values won’t ever move. Pin
stops safe code from accidentally moving them.
docs to better express what a Rust “move” is. ● QoL features from C++.