Struct rkyv::boxed::ArchivedBox
source · [−]#[repr(transparent)]pub struct ArchivedBox<T: ArchivePointee + ?Sized>(_);
Implementations
sourceimpl<T: ArchivePointee + ?Sized> ArchivedBox<T>
impl<T: ArchivePointee + ?Sized> ArchivedBox<T>
sourcepub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut T>
pub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut T>
Returns a pinned mutable reference to the value of this archived box
sourcepub 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
sourcepub 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.
sourceimpl<T> ArchivedBox<[T]>
impl<T> ArchivedBox<[T]>
sourcepub unsafe fn serialize_copy_from_slice<U, S>(
slice: &[U],
serializer: &mut S
) -> Result<BoxResolver<MetadataResolver<[U]>>, S::Error> where
U: Serialize<S, Archived = T>,
S: Serializer + ?Sized,
pub unsafe fn serialize_copy_from_slice<U, S>(
slice: &[U],
serializer: &mut S
) -> Result<BoxResolver<MetadataResolver<[U]>>, S::Error> where
U: Serialize<S, Archived = T>,
S: Serializer + ?Sized,
Serializes an archived Box
from a given slice by directly copying bytes.
Safety
The type being serialized must be copy-safe. Copy-safe types must be trivially copyable (have the same archived and unarchived representations) and contain no padding bytes. In situations where copying uninitialized bytes the output is acceptable, this function may be used with types that contain padding bytes.
Trait Implementations
sourceimpl<T: ArchivePointee + ?Sized> AsRef<T> for ArchivedBox<T>
impl<T: ArchivePointee + ?Sized> AsRef<T> for ArchivedBox<T>
sourceimpl<T: ArchivePointee + ?Sized> Borrow<T> for ArchivedBox<T>
impl<T: ArchivePointee + ?Sized> Borrow<T> for ArchivedBox<T>
sourceimpl<T: ArchivePointee + ?Sized> Debug for ArchivedBox<T> where
T::ArchivedMetadata: Debug,
impl<T: ArchivePointee + ?Sized> Debug for ArchivedBox<T> where
T::ArchivedMetadata: Debug,
sourceimpl<T: ArchivePointee + ?Sized> Deref for ArchivedBox<T>
impl<T: ArchivePointee + ?Sized> Deref for ArchivedBox<T>
sourceimpl<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,
sourceimpl<T, D> DeserializeWith<ArchivedBox<[<T as Archive>::Archived]>, Box<[T], Global>, D> for CopyOptimize where
T: Archive,
T::Archived: Deserialize<T, D>,
D: Fallible + ?Sized,
impl<T, D> DeserializeWith<ArchivedBox<[<T as Archive>::Archived]>, Box<[T], Global>, D> for CopyOptimize where
T: Archive,
T::Archived: Deserialize<T, D>,
D: Fallible + ?Sized,
sourceimpl<T: ArchivePointee + Display + ?Sized> Display for ArchivedBox<T>
impl<T: ArchivePointee + Display + ?Sized> Display for ArchivedBox<T>
sourceimpl<T: ArchivePointee + Hash + ?Sized> Hash for ArchivedBox<T>
impl<T: ArchivePointee + Hash + ?Sized> Hash for ArchivedBox<T>
sourceimpl<T: ArchivePointee + Ord + ?Sized> Ord for ArchivedBox<T>
impl<T: ArchivePointee + Ord + ?Sized> Ord for ArchivedBox<T>
sourceimpl<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>
sourceimpl<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>
sourceimpl<T: ArchivePointee + PartialOrd + ?Sized> PartialOrd<ArchivedBox<T>> for ArchivedBox<T>
impl<T: ArchivePointee + PartialOrd + ?Sized> PartialOrd<ArchivedBox<T>> for ArchivedBox<T>
sourcefn partial_cmp(&self, other: &Self) -> Option<Ordering>
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<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>
sourcefn partial_cmp(&self, other: &Box<U>) -> Option<Ordering>
fn partial_cmp(&self, other: &Box<U>) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<T: ArchivePointee + ?Sized> Pointer for ArchivedBox<T>
impl<T: ArchivePointee + ?Sized> Pointer for ArchivedBox<T>
impl<T: ArchivePointee + Eq + ?Sized> Eq for ArchivedBox<T>
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
sourceimpl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
sourcefn pointer_metadata(_: &Self::ArchivedMetadata) -> <Self as Pointee>::Metadata
fn pointer_metadata(_: &Self::ArchivedMetadata) -> <Self as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more