pub trait Serialize<S: Fallible + ?Sized>: Archive {
// Required method
fn serialize(&self, serializer: &mut S) -> Result<Self::Resolver, S::Error>;
}
Expand description
Converts a type to its archived form.
Objects perform any supportive serialization during
serialize
. For types that reference nonlocal
(pointed-to) data, this is when that data must be serialized to the output.
These types will need to bound S
to implement
Writer
and any other required traits (e.g.
Sharing
). They should then serialize their
dependencies during serialize
.
See Archive
for examples of implementing Serialize
.
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl<K, V, S, RandomState> Serialize<S> for HashMap<K, V, RandomState>
Available on crate feature std
only.
impl<K, V, S, RandomState> Serialize<S> for HashMap<K, V, RandomState>
Available on crate feature
std
only.Source§impl<S: Fallible + Writer + ?Sized> Serialize<S> for CString
Available on crate feature alloc
only.
impl<S: Fallible + Writer + ?Sized> Serialize<S> for CString
Available on crate feature
alloc
only.Source§impl<T0, T1, T2, S> Serialize<S> for (T0, T1, T2)
impl<T0, T1, T2, S> Serialize<S> for (T0, T1, T2)
Source§impl<T0, T1, T2, T3, S> Serialize<S> for (T0, T1, T2, T3)
impl<T0, T1, T2, T3, S> Serialize<S> for (T0, T1, T2, T3)
Source§impl<T0, T1, T2, T3, T4, S> Serialize<S> for (T0, T1, T2, T3, T4)
impl<T0, T1, T2, T3, T4, S> Serialize<S> for (T0, T1, T2, T3, T4)
Source§impl<T0, T1, T2, T3, T4, T5, S> Serialize<S> for (T0, T1, T2, T3, T4, T5)
impl<T0, T1, T2, T3, T4, T5, S> Serialize<S> for (T0, T1, T2, T3, T4, T5)
Source§impl<T0, T1, T2, T3, T4, T5, T6, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6)
impl<T0, T1, T2, T3, T4, T5, T6, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7)
impl<T0, T1, T2, T3, T4, T5, T6, T7, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, S> Serialize<S> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
Source§impl<T, S> Serialize<S> for Arc<T>
Available on target_has_atomic="ptr"
and crate feature alloc
only.
impl<T, S> Serialize<S> for Arc<T>
Available on
target_has_atomic="ptr"
and crate feature alloc
only.Source§impl<T, S> Serialize<S> for Weak<T>
Available on target_has_atomic="ptr"
and crate feature alloc
only.
impl<T, S> Serialize<S> for Weak<T>
Available on
target_has_atomic="ptr"
and crate feature alloc
only.Source§impl<T, S> Serialize<S> for RangeToInclusive<T>
impl<T, S> Serialize<S> for RangeToInclusive<T>
Source§impl<T: Serialize<S>, S: Fallible + Allocator + Writer + ?Sized> Serialize<S> for Vec<T>
Available on crate feature alloc
only.
impl<T: Serialize<S>, S: Fallible + Allocator + Writer + ?Sized> Serialize<S> for Vec<T>
Available on crate feature
alloc
only.