Serializer

Trait Serializer 

Source
pub trait Serializer {
Show 22 methods // Required methods fn begin_struct(&mut self, name: &str, fields: usize) -> SuccessResult; fn end_struct(&mut self, name: &str) -> SuccessResult; fn begin_collection(&mut self, name: &str, size: usize) -> SuccessResult; fn end_collection(&mut self, name: &str) -> SuccessResult; fn serialize_item<V: Serialize>( &mut self, i: usize, item: &V, pos: &Position, ) -> SuccessResult; fn serialize_field<V: Serialize>( &mut self, identifier: &str, value: &V, pos: &Position, ) -> SuccessResult; fn serialize_value<V: Serialize>( &mut self, value: &V, pos: &Position, ) -> SuccessResult; fn serialize_str(&mut self, value: &str) -> SuccessResult; fn serialize_i8(&mut self, value: &i8) -> SuccessResult; fn serialize_i16(&mut self, value: &i16) -> SuccessResult; fn serialize_i32(&mut self, value: &i32) -> SuccessResult; fn serialize_i64(&mut self, value: &i64) -> SuccessResult; fn serialize_i128(&mut self, value: &i128) -> SuccessResult; fn serialize_u8(&mut self, value: &u8) -> SuccessResult; fn serialize_u16(&mut self, value: &u16) -> SuccessResult; fn serialize_u32(&mut self, value: &u32) -> SuccessResult; fn serialize_u64(&mut self, value: &u64) -> SuccessResult; fn serialize_u128(&mut self, value: &u128) -> SuccessResult; fn serialize_f32(&mut self, value: &f32) -> SuccessResult; fn serialize_f64(&mut self, value: &f64) -> SuccessResult; fn serialize_usize(&mut self, value: &usize) -> SuccessResult; fn serialize_isize(&mut self, value: &isize) -> SuccessResult;
}
Expand description

Handles the serialization and formatting of an arbitrary serializable

Any Serializer must implement methods that allow for the serialization of all supported data types. These methods are then called in the implementation (most often derived) of the Serialize trait.

Required Methods§

Source

fn begin_struct(&mut self, name: &str, fields: usize) -> SuccessResult

Source

fn end_struct(&mut self, name: &str) -> SuccessResult

Source

fn begin_collection(&mut self, name: &str, size: usize) -> SuccessResult

Source

fn end_collection(&mut self, name: &str) -> SuccessResult

Source

fn serialize_item<V: Serialize>( &mut self, i: usize, item: &V, pos: &Position, ) -> SuccessResult

Source

fn serialize_field<V: Serialize>( &mut self, identifier: &str, value: &V, pos: &Position, ) -> SuccessResult

Source

fn serialize_value<V: Serialize>( &mut self, value: &V, pos: &Position, ) -> SuccessResult

Source

fn serialize_str(&mut self, value: &str) -> SuccessResult

Source

fn serialize_i8(&mut self, value: &i8) -> SuccessResult

Source

fn serialize_i16(&mut self, value: &i16) -> SuccessResult

Source

fn serialize_i32(&mut self, value: &i32) -> SuccessResult

Source

fn serialize_i64(&mut self, value: &i64) -> SuccessResult

Source

fn serialize_i128(&mut self, value: &i128) -> SuccessResult

Source

fn serialize_u8(&mut self, value: &u8) -> SuccessResult

Source

fn serialize_u16(&mut self, value: &u16) -> SuccessResult

Source

fn serialize_u32(&mut self, value: &u32) -> SuccessResult

Source

fn serialize_u64(&mut self, value: &u64) -> SuccessResult

Source

fn serialize_u128(&mut self, value: &u128) -> SuccessResult

Source

fn serialize_f32(&mut self, value: &f32) -> SuccessResult

Source

fn serialize_f64(&mut self, value: &f64) -> SuccessResult

Source

fn serialize_usize(&mut self, value: &usize) -> SuccessResult

Source

fn serialize_isize(&mut self, value: &isize) -> SuccessResult

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.

Implementors§

Source§

impl<'w, W: Write, F: WriteFormatter<W>> Serializer for JsonSerializer<'w, W, F>