Struct rkyv::std_impl::shared::ArchivedRc[][src]

#[repr(transparent)]pub struct ArchivedRc<T: ArchivePointee + ?Sized>(_);

An archived Rc.

This is a thin wrapper around a RelPtr to the archived type.

Implementations

impl<T: ArchivePointee + ?Sized> ArchivedRc<T>[src]

pub unsafe fn get_pin_unchecked(self: Pin<&mut Self>) -> Pin<&mut T>[src]

Gets the value of this archived Rc.

Safety

The caller must guarantee that any other ArchivedRc pointers to the same value are not dereferenced for the duration of the returned borrow.

Trait Implementations

impl<T: ArchivePointee + CheckBytes<C> + Pointee + ?Sized + 'static, C: ArchiveBoundsContext + SharedArchiveContext + ?Sized> CheckBytes<C> for ArchivedRc<T> where
    T::ArchivedMetadata: CheckBytes<C>,
    C::Error: Error,
    <T as Pointee>::Metadata: LayoutMetadata<T>, 
[src]

type Error = SharedPointerError<<T::ArchivedMetadata as CheckBytes<C>>::Error, T::Error, C::Error>

The error that may result from checking the type.

impl<T: ArchivePointee + ?Sized> Deref for ArchivedRc<T>[src]

type Target = T

The resulting type after dereferencing.

impl<T: ArchivePointee + PartialEq<U> + ?Sized, U: ?Sized> PartialEq<Rc<U>> for ArchivedRc<T>[src]

Auto Trait Implementations

impl<T: ?Sized> RefUnwindSafe for ArchivedRc<T> where
    T: RefUnwindSafe,
    <T as ArchivePointee>::ArchivedMetadata: RefUnwindSafe

impl<T: ?Sized> Send for ArchivedRc<T> where
    T: Send,
    <T as ArchivePointee>::ArchivedMetadata: Send

impl<T: ?Sized> Sync for ArchivedRc<T> where
    T: Sync,
    <T as ArchivePointee>::ArchivedMetadata: Sync

impl<T> !Unpin for ArchivedRc<T>

impl<T: ?Sized> UnwindSafe for ArchivedRc<T> where
    T: UnwindSafe,
    <T as ArchivePointee>::ArchivedMetadata: UnwindSafe

Blanket Implementations

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

impl<T> ArchivePointee for T[src]

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.

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> Pointee for T[src]

type Metadata = ()

The type for metadata in pointers and references to Self.

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.