Struct nom::lib::std::boxed::PinBox [−][src]
pub struct PinBox<T> where
T: ?Sized, { /* fields omitted */ }🔬 This is a nightly-only experimental API. (
pin)A pinned, heap allocated reference.
Methods
impl<T> PinBox<T>[src]
impl<T> PinBox<T>pub fn new(data: T) -> PinBox<T>[src]
pub fn new(data: T) -> PinBox<T>🔬 This is a nightly-only experimental API. (
pin)Allocate memory on the heap, move the data into it and pin it.
impl<T> PinBox<T> where
T: ?Sized, [src]
impl<T> PinBox<T> where
T: ?Sized, pub fn as_pin(&'a mut self) -> Pin<'a, T>[src]
pub fn as_pin(&'a mut self) -> Pin<'a, T>🔬 This is a nightly-only experimental API. (
pin)Get a pinned reference to the data in this PinBox.
ⓘImportant traits for &'a mut Rpub unsafe fn get_mut(this: &'a mut PinBox<T>) -> &'a mut T[src]
ⓘImportant traits for &'a mut R
pub unsafe fn get_mut(this: &'a mut PinBox<T>) -> &'a mut T🔬 This is a nightly-only experimental API. (
pin)Get a mutable reference to the data inside this PinBox.
This function is unsafe. Users must guarantee that the data is never moved out of this reference.
ⓘImportant traits for Box<R>pub unsafe fn unpin(this: PinBox<T>) -> Box<T>[src]
ⓘImportant traits for Box<R>
pub unsafe fn unpin(this: PinBox<T>) -> Box<T>🔬 This is a nightly-only experimental API. (
pin)Convert this PinBox into an unpinned Box.
This function is unsafe. Users must guarantee that the data is never moved out of the box.
Trait Implementations
impl<T> Debug for PinBox<T> where
T: Debug + ?Sized, [src]
impl<T> Debug for PinBox<T> where
T: Debug + ?Sized, fn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter. Read more
impl<T> Pointer for PinBox<T> where
T: ?Sized, [src]
impl<T> Pointer for PinBox<T> where
T: ?Sized, fn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter.
impl<T> From<PinBox<T>> for Box<T> where
T: Unpin + ?Sized, [src]
impl<T> From<PinBox<T>> for Box<T> where
T: Unpin + ?Sized, impl<T> From<Box<T>> for PinBox<T> where
T: ?Sized, [src]
impl<T> From<Box<T>> for PinBox<T> where
T: ?Sized, impl<T> DerefMut for PinBox<T> where
T: Unpin + ?Sized, [src]
impl<T> DerefMut for PinBox<T> where
T: Unpin + ?Sized, ⓘImportant traits for &'a mut Rfn deref_mut(&mut self) -> &mut T[src]
ⓘImportant traits for &'a mut R
fn deref_mut(&mut self) -> &mut TMutably dereferences the value.
impl<T, U> CoerceUnsized<PinBox<U>> for PinBox<T> where
T: Unsize<U> + ?Sized,
U: ?Sized, [src]
impl<T, U> CoerceUnsized<PinBox<U>> for PinBox<T> where
T: Unsize<U> + ?Sized,
U: ?Sized, impl<T> Unpin for PinBox<T> where
T: ?Sized, [src]
impl<T> Unpin for PinBox<T> where
T: ?Sized, impl<T> Deref for PinBox<T> where
T: ?Sized, [src]
impl<T> Deref for PinBox<T> where
T: ?Sized, type Target = T
The resulting type after dereferencing.
ⓘImportant traits for &'a mut Rfn deref(&self) -> &T[src]
ⓘImportant traits for &'a mut R
fn deref(&self) -> &TDereferences the value.
impl<T> Display for PinBox<T> where
T: Display + ?Sized, [src]
impl<T> Display for PinBox<T> where
T: Display + ?Sized,