Skip to main content

MovePlace

Trait MovePlace 

Source
pub unsafe trait MovePlace: ReadPlace { }
Expand description

let _ = place; – Move out of a place.

When reading from a place, the type of the contents of the place must implement Copy, or the handle must implement this trait. This trait allows moving out of the place, leaving it in a partially initialized state.

When implementing this trait, DropPlace should almost always also be implemented, since otherwise dropping a partially moved-out proxy is not permitted. Additionally, the proxy should implement DropHusk for the same reason.

The actual move-out operation is performed by reading the place (ReadPlace::read_place) and then changing the borrow checker state of this place to uninitialized.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<T> MovePlace for *const T

Source§

impl<T> MovePlace for *mut T

Implementors§