Struct CompoundSerializer

Source
pub struct CompoundSerializer<'a> { /* private fields */ }
Expand description

Serializer for serializing compound types.

This type implements SerializeSeq, SerializeTuple, SerializeTupleStruct, SerializeTupleVariant, SerializeMap, SerializeStruct, and SerializeStructVariant, and is used by Serializer for serialization of each of those compound data types.

Users normally will not need to interact with this type directly. It is primarily used by Serialize implementations through the various traits it implements.

Trait Implementations§

Source§

impl<'a> Debug for CompoundSerializer<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl SerializeMap for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_key<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a map key. Read more
Source§

fn serialize_value<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a map value. Read more
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a map.
Source§

fn serialize_entry<K, V>( &mut self, key: &K, value: &V, ) -> Result<(), Self::Error>
where K: Serialize + ?Sized, V: Serialize + ?Sized,

Serialize a map entry consisting of a key and a value. Read more
Source§

impl SerializeSeq for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_element<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a sequence element.
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a sequence.
Source§

impl SerializeStructVariant for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_field<T>( &mut self, key: &'static str, value: &T, ) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a struct variant field.
Source§

fn skip_field(&mut self, key: &'static str) -> Result<(), Error>

Indicate that a struct variant field has been skipped. Read more
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a struct variant.
Source§

impl SerializeTuple for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_element<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a tuple element.
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a tuple.
Source§

impl SerializeTupleStruct for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_field<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a tuple struct field.
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a tuple struct.
Source§

impl SerializeTupleVariant for CompoundSerializer<'_>

Source§

type Ok = Tokens

Must match the Ok type of our Serializer.
Source§

type Error = Error

Must match the Error type of our Serializer.
Source§

fn serialize_field<T>(&mut self, value: &T) -> Result<(), Error>
where T: Serialize + ?Sized,

Serialize a tuple variant field.
Source§

fn end(self) -> Result<Tokens, Error>

Finish serializing a tuple variant.

Auto Trait Implementations§

§

impl<'a> Freeze for CompoundSerializer<'a>

§

impl<'a> RefUnwindSafe for CompoundSerializer<'a>

§

impl<'a> Send for CompoundSerializer<'a>

§

impl<'a> Sync for CompoundSerializer<'a>

§

impl<'a> Unpin for CompoundSerializer<'a>

§

impl<'a> UnwindSafe for CompoundSerializer<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.