pub struct RefAsBox;Expand description
A wrapper that serializes a reference as if it were boxed.
Unlike Inline, unsized references can be serialized with RefAsBox.
References serialized with RefAsBox cannot be deserialized because the struct cannot own the
deserialized value.
Example
use rkyv::{Archive, with::RefAsBox};
#[derive(Archive)]
struct Example<'a> {
#[with(RefAsBox)]
a: &'a i32,
#[with(RefAsBox)]
b: &'a str,
}Trait Implementations
sourceimpl<F: ArchiveUnsized + ?Sized> ArchiveWith<&'_ F> for RefAsBox
impl<F: ArchiveUnsized + ?Sized> ArchiveWith<&'_ F> for RefAsBox
type Archived = ArchivedBox<F::Archived>
type Archived = ArchivedBox<F::Archived>
The archived type of a With<F, Self>.
type Resolver = BoxResolver<F::MetadataResolver>
type Resolver = BoxResolver<F::MetadataResolver>
The resolver of a With<F, Self>.
sourceimpl<F: SerializeUnsized<S> + ?Sized, S: Fallible + ?Sized> SerializeWith<&'_ F, S> for RefAsBox
impl<F: SerializeUnsized<S> + ?Sized, S: Fallible + ?Sized> SerializeWith<&'_ F, S> for RefAsBox
Auto Trait Implementations
impl RefUnwindSafe for RefAsBox
impl Send for RefAsBox
impl Sync for RefAsBox
impl Unpin for RefAsBox
impl UnwindSafe for RefAsBox
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