Struct rkyv::boxed::ArchivedBox [−][src]
#[repr(transparent)]pub struct ArchivedBox<T: ArchivePointee + ?Sized>(_);
Implementations
Returns a pinned mutable reference to the value of this archived box
pub unsafe fn resolve_from_ref<U: ArchiveUnsized<Archived = T> + ?Sized>(
value: &U,
pos: usize,
resolver: BoxResolver<U::MetadataResolver>,
out: *mut Self
)
pub unsafe fn resolve_from_ref<U: ArchiveUnsized<Archived = T> + ?Sized>(
value: &U,
pos: usize,
resolver: BoxResolver<U::MetadataResolver>,
out: *mut Self
)
Resolves an archived box from the given value and parameters.
Safety
pos
must be the position ofout
within the archiveresolver
must be the result of serializingvalue
pub fn serialize_from_ref<U, S>(
value: &U,
serializer: &mut S
) -> Result<BoxResolver<U::MetadataResolver>, S::Error> where
U: SerializeUnsized<S, Archived = T> + ?Sized,
S: Fallible + ?Sized,
pub fn serialize_from_ref<U, S>(
value: &U,
serializer: &mut S
) -> Result<BoxResolver<U::MetadataResolver>, S::Error> where
U: SerializeUnsized<S, Archived = T> + ?Sized,
S: Fallible + ?Sized,
Serializes an archived box from the given value and serializer.
Trait Implementations
impl<T, C> CheckBytes<C> for ArchivedBox<T> where
T: ArchivePointee + CheckBytes<C> + LayoutRaw + Pointee + ?Sized,
C: ArchiveContext + ?Sized,
T::ArchivedMetadata: CheckBytes<C>,
C::Error: Error,
impl<T, C> CheckBytes<C> for ArchivedBox<T> where
T: ArchivePointee + CheckBytes<C> + LayoutRaw + Pointee + ?Sized,
C: ArchiveContext + ?Sized,
T::ArchivedMetadata: CheckBytes<C>,
C::Error: Error,
type Error = CheckOwnedPointerError<T, C>
type Error = CheckOwnedPointerError<T, C>
The error that may result from checking the type.
unsafe fn check_bytes<'a>(
value: *const Self,
context: &mut C
) -> Result<&'a Self, Self::Error>
unsafe fn check_bytes<'a>(
value: *const Self,
context: &mut C
) -> Result<&'a Self, Self::Error>
Checks whether the given pointer points to a valid value within the given context. Read more
impl<T, D> Deserialize<Box<T, Global>, D> for ArchivedBox<T::Archived> where
T: ArchiveUnsized + ?Sized,
T::Archived: DeserializeUnsized<T, D>,
D: Fallible + ?Sized,
impl<T, D> Deserialize<Box<T, Global>, D> for ArchivedBox<T::Archived> where
T: ArchiveUnsized + ?Sized,
T::Archived: DeserializeUnsized<T, D>,
D: Fallible + ?Sized,
impl<T: ArchivePointee + PartialEq<U> + ?Sized, U: ArchivePointee + ?Sized> PartialEq<ArchivedBox<U>> for ArchivedBox<T>
impl<T: ArchivePointee + PartialEq<U> + ?Sized, U: ArchivePointee + ?Sized> PartialEq<ArchivedBox<U>> for ArchivedBox<T>
impl<T: ArchivePointee + PartialEq<U> + ?Sized, U: ?Sized> PartialEq<Box<U, Global>> for ArchivedBox<T>
impl<T: ArchivePointee + PartialEq<U> + ?Sized, U: ?Sized> PartialEq<Box<U, Global>> for ArchivedBox<T>
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
impl<T: ArchivePointee + PartialOrd<U> + ?Sized, U: ?Sized> PartialOrd<Box<U, Global>> for ArchivedBox<T>
impl<T: ArchivePointee + PartialOrd<U> + ?Sized, U: ?Sized> PartialOrd<Box<U, Global>> for ArchivedBox<T>
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl<T: ?Sized> RefUnwindSafe for ArchivedBox<T> where
T: RefUnwindSafe,
<T as ArchivePointee>::ArchivedMetadata: RefUnwindSafe,
impl<T: ?Sized> Send for ArchivedBox<T> where
T: Send,
<T as ArchivePointee>::ArchivedMetadata: Send,
impl<T: ?Sized> Sync for ArchivedBox<T> where
T: Sync,
<T as ArchivePointee>::ArchivedMetadata: Sync,
impl<T> !Unpin for ArchivedBox<T>
impl<T: ?Sized> UnwindSafe for ArchivedBox<T> where
T: UnwindSafe,
<T as ArchivePointee>::ArchivedMetadata: UnwindSafe,
Blanket Implementations
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Converts some archived metadata to the pointer metadata for itself.
Mutably borrows from an owned value. Read more