#[repr(transparent)]
pub struct With<F: ?Sized, W> { /* fields omitted */ }
Expand description
A transparent wrapper for archived fields.
This is used by the #[with(...)]
attribute in the Archive
macro to
create transparent serialization wrappers. Those wrappers leverage ArchiveWith
to change
how the type is archived, serialized, and deserialized.
When a field is serialized, a reference to the field (i.e. &T
) can be cast to a reference to a
With
wrapper and serialized instead (i.e. &With<T, Wrapper>
). This is safe to do because
With
is a transparent wrapper and is shaped exactly the same as the underlying field.
use rkyv::{Archive, with::Inline};
#[derive(Archive)]
struct Example<'a> {
#[with(Inline)]
a: &'a i32,
}
Casts a With
reference from a reference to the underlying field.
This is always safe to do because With
is a transparent wrapper.
Unwraps a With
into the underlying field.
The archived representation of this type. Read more
The resolver for this type. It must contain all the additional information from serializing
needed to make the archived type from the normal type. Read more
Creates the archived version of this value at the given position and writes it to the given
output. Read more
Formats the value using the given formatter. Read more
Deserializes using the given deserializer
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Deserializes the field type F
using the given deserializer.
Writes the dependencies for the object and returns a resolver that can create the archived
type. Read more
impl<T> Any for T where
T: 'static + ?Sized,
The archived version of the pointer metadata for this type.
Converts some archived metadata to the pointer metadata for itself.
The archived counterpart of this type. Unlike Archive
, it may be unsized. Read more
The resolver for the metadata of this type. Read more
Creates the archived version of the metadata for this value at the given position and writes
it to the given output. Read more
Resolves a relative pointer to this value with the given from
and to
and writes it to
the given output. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
Deserializes using the given deserializer
impl<T, U> Into<U> for T where
U: From<T>,
Gets the layout of the type.
The type for metadata in pointers and references to Self
.
Writes the object and returns the position of the archived type.
Serializes the metadata for the given type.
The type returned in the event of a conversion error.
The type returned in the event of a conversion error.