pub struct InlineAsBox;Expand description
A wrapper that serializes a reference as if it were boxed.
Unlike Inline, unsized references can be serialized with InlineAsBox.
References serialized with InlineAsBox cannot be deserialized because the
struct cannot own the deserialized value.
§Example
use rkyv::{with::InlineAsBox, Archive};
#[derive(Archive)]
struct Example<'a> {
#[rkyv(with = InlineAsBox)]
a: &'a i32,
#[rkyv(with = InlineAsBox)]
b: &'a str,
}Trait Implementations§
Source§impl<F: ArchiveUnsized + ?Sized> ArchiveWith<&F> for InlineAsBox
impl<F: ArchiveUnsized + ?Sized> ArchiveWith<&F> for InlineAsBox
Source§type Archived = ArchivedBox<<F as ArchiveUnsized>::Archived>
type Archived = ArchivedBox<<F as ArchiveUnsized>::Archived>
The archived type of
Self with F.Source§type Resolver = BoxResolver
type Resolver = BoxResolver
The resolver of a
Self with F.Source§impl Debug for InlineAsBox
impl Debug for InlineAsBox
Source§impl<F, S> SerializeWith<&F, S> for InlineAsBox
impl<F, S> SerializeWith<&F, S> for InlineAsBox
Auto Trait Implementations§
impl Freeze for InlineAsBox
impl RefUnwindSafe for InlineAsBox
impl Send for InlineAsBox
impl Sync for InlineAsBox
impl Unpin for InlineAsBox
impl UnsafeUnpin for InlineAsBox
impl UnwindSafe for InlineAsBox
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.