Struct swc_plugin::Serialized
source · [−]pub struct Serialized { /* private fields */ }
Expand description
Wraps internal representation of serialized data. Consumers should not rely on specific details of byte format struct contains: it is strictly implementation detail which can change anytime.
Implementations
sourceimpl Serialized
impl Serialized
pub fn new_for_plugin(bytes: &[u8], len: i32) -> Serialized
pub fn from(vec: AlignedVec) -> Serialized
sourcepub fn into<T>(self) -> T where
T: Archive,
<T as Archive>::Archived: Deserialize<T, Infallible>,
pub fn into<T>(self) -> T where
T: Archive,
<T as Archive>::Archived: Deserialize<T, Infallible>,
Not an actual trait Into impl: simple wrapper to deserialize
pub fn as_ref(&self) -> &AlignedVec
pub fn serialize<W>(t: &W) -> Result<Serialized, Error> where
W: Serialize<CompositeSerializer<AlignedSerializer<AlignedVec>, FallbackScratch<HeapScratch<512_usize>, AllocScratch>, SharedSerializeMap>>,
pub fn deserialize<W>(bytes: &Serialized) -> Result<W, Error> where
W: Archive,
<W as Archive>::Archived: Deserialize<W, Infallible>,
sourcepub unsafe fn deserialize_from_ptr<W>(
raw_allocated_ptr: *const u8,
raw_allocated_ptr_len: i32
) -> Result<W, Error> where
W: Archive,
<W as Archive>::Archived: Deserialize<W, Infallible>,
pub unsafe fn deserialize_from_ptr<W>(
raw_allocated_ptr: *const u8,
raw_allocated_ptr_len: i32
) -> Result<W, Error> where
W: Archive,
<W as Archive>::Archived: Deserialize<W, Infallible>,
Convenient wrapper to Serialized::* to construct actual struct from raw ptr. This is common workflow on both of runtime (host / plugin) to deserialize struct from allocated / copied ptr.
Safety
This is naturally unsafe by constructing bytes slice from raw ptr.
sourcepub unsafe fn deserialize_from_ptr_fallible<W>(
raw_allocated_ptr: *const u8,
raw_allocated_ptr_len: i32
) -> Result<W, Error> where
W: Archive,
<W as Archive>::Archived: Deserialize<W, SharedDeserializeMap>,
pub unsafe fn deserialize_from_ptr_fallible<W>(
raw_allocated_ptr: *const u8,
raw_allocated_ptr_len: i32
) -> Result<W, Error> where
W: Archive,
<W as Archive>::Archived: Deserialize<W, SharedDeserializeMap>,
Deserialize Fallible
struct from raw ptr. This is similar to
deserialize_from_ptr
but for the struct requires bounds to the
SharedSerializeRegistry which cannot be Infallible. Internally this does
not call deserialize with Infallible deserializer, use
SharedDeserializeMap instead.
Safety
This is unsafe by construting bytes slice from raw ptr also deserialize it without slice bound check.
Auto Trait Implementations
impl RefUnwindSafe for Serialized
impl Send for Serialized
impl Sync for Serialized
impl Unpin for Serialized
impl UnwindSafe for Serialized
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.
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>
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