Struct swc_plugin::utils::swc_common::plugin::VersionedSerializable
source · [−]#[repr(transparent)]pub struct VersionedSerializable<T>(_);
Expand description
A wrapper type for the structures to be passed into plugins serializes the contained value out-of-line so that newer versions can be viewed as the older version.
First field indicate version of struct type (schema). Any consumers like swc_plugin_macro can use this to validate compatiblility before attempt to serialize.
Implementations
Trait Implementations
sourceimpl<T> Archive for VersionedSerializable<T> where
With<(u32, T), AsBox>: Archive,
impl<T> Archive for VersionedSerializable<T> where
With<(u32, T), AsBox>: Archive,
type Archived = ArchivedVersionedSerializable<T>
type Archived = ArchivedVersionedSerializable<T>
The archived representation of this type. Read more
type Resolver = VersionedSerializableResolver<T>
type Resolver = VersionedSerializableResolver<T>
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
sourceunsafe fn resolve(
&self,
pos: usize,
resolver: <VersionedSerializable<T> as Archive>::Resolver,
out: *mut <VersionedSerializable<T> as Archive>::Archived
)
unsafe fn resolve(
&self,
pos: usize,
resolver: <VersionedSerializable<T> as Archive>::Resolver,
out: *mut <VersionedSerializable<T> as Archive>::Archived
)
Creates the archived version of this value at the given position and writes it to the given output. Read more
sourceimpl<__D, T> Deserialize<VersionedSerializable<T>, __D> for <VersionedSerializable<T> as Archive>::Archived where
__D: Fallible + ?Sized,
With<(u32, T), AsBox>: Archive,
<With<(u32, T), AsBox> as Archive>::Archived: Deserialize<With<(u32, T), AsBox>, __D>,
impl<__D, T> Deserialize<VersionedSerializable<T>, __D> for <VersionedSerializable<T> as Archive>::Archived where
__D: Fallible + ?Sized,
With<(u32, T), AsBox>: Archive,
<With<(u32, T), AsBox> as Archive>::Archived: Deserialize<With<(u32, T), AsBox>, __D>,
sourcefn deserialize(
&self,
deserializer: &mut __D
) -> Result<VersionedSerializable<T>, <__D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut __D
) -> Result<VersionedSerializable<T>, <__D as Fallible>::Error>
Deserializes using the given deserializer
sourceimpl<__S, T> Serialize<__S> for VersionedSerializable<T> where
__S: Fallible + ?Sized,
With<(u32, T), AsBox>: Serialize<__S>,
impl<__S, T> Serialize<__S> for VersionedSerializable<T> where
__S: Fallible + ?Sized,
With<(u32, T), AsBox>: Serialize<__S>,
Auto Trait Implementations
impl<T> RefUnwindSafe for VersionedSerializable<T> where
T: RefUnwindSafe,
impl<T> Send for VersionedSerializable<T> where
T: Send,
impl<T> Sync for VersionedSerializable<T> where
T: Sync,
impl<T> Unpin for VersionedSerializable<T> where
T: Unpin,
impl<T> UnwindSafe for VersionedSerializable<T> where
T: UnwindSafe,
Blanket Implementations
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
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.
impl<T> ArchiveUnsized for T where
T: Archive,
impl<T> ArchiveUnsized for T where
T: Archive,
type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike Archive
, it may be unsized. Read more
type MetadataResolver = ()
type MetadataResolver = ()
The resolver for the metadata of this type. Read more
unsafe fn resolve_metadata(
&self,
usize,
<T as ArchiveUnsized>::MetadataResolver,
*mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
)
unsafe fn resolve_metadata(
&self,
usize,
<T as ArchiveUnsized>::MetadataResolver,
*mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
)
Creates the archived version of the metadata for this value at the given position and writes it to the given output. Read more
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T, S> SerializeUnsized<S> for T where
T: Serialize<S>,
S: Serializer + ?Sized,
impl<T, S> SerializeUnsized<S> for T where
T: Serialize<S>,
S: Serializer + ?Sized,
fn serialize_unsized(
&self,
serializer: &mut S
) -> Result<usize, <S as Fallible>::Error>
fn serialize_unsized(
&self,
serializer: &mut S
) -> Result<usize, <S as Fallible>::Error>
Writes the object and returns the position of the archived type.
fn serialize_metadata(&self, &mut S) -> Result<(), <S as Fallible>::Error>
fn serialize_metadata(&self, &mut S) -> Result<(), <S as Fallible>::Error>
Serializes the metadata for the given type.
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more