[][src]Struct revenq::RevisionRef

pub struct RevisionRef<T> { /* fields omitted */ }

A owning reference to a revision.

Warning: Objects of this type must not be leaked, otherwise all future revisions will be leaked, too, and thus the memory of the queue is never freed.

Implementations

impl<T> RevisionRef<T>[src]

pub fn try_detach<'a>(
    this: &'a mut Self
) -> Result<&'a mut T, RevisionDetachError>
[src]

Try to detach this revision from the following. Only works if this RevisionRef is the last reference to this revision. This is the case if no RevisionRef to a revision with precedes this revision exist and this is the last ptr to this revision, and all queue references have already consumed this revision. Use this method to reduce queue memory usage if you want to store this object long-term.

pub fn try_into_inner(this: Self) -> Result<T, Self>[src]

Similiar to try_detach, detach this revision if possible, but then unwrap the inner value

Trait Implementations

impl<T> Clone for RevisionRef<T>[src]

impl<T> CloneStableDeref for RevisionRef<T>[src]

impl<T: Debug> Debug for RevisionRef<T>[src]

impl<T> Deref for RevisionRef<T>[src]

type Target = T

The resulting type after dereferencing.

impl<T> StableDeref for RevisionRef<T>[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for RevisionRef<T> where
    T: RefUnwindSafe + UnwindSafe

impl<T> Send for RevisionRef<T> where
    T: Send + Sync

impl<T> Sync for RevisionRef<T> where
    T: Send + Sync

impl<T> Unpin for RevisionRef<T>

impl<T> UnwindSafe for RevisionRef<T> where
    T: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.