Skip to main content

Serialize

Trait Serialize 

Source
pub trait Serialize: Sized {
    // Required methods
    fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>;
    fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>;
}
Expand description

A value that can be serialized to and deserialized from a byte buffer.

Required Methods§

Source

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Encodes this value by appending it to the buffer.

Source

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Decodes the value by consuming the next one in the buffer.

Returns bincake::DeserializeError if the encoded data is malformed.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl Serialize for String

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for bool

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for f32

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for f64

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for i8

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for i16

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for i32

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for i64

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for i128

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for isize

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for u8

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for u16

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for u32

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for u64

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for u128

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl Serialize for usize

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl<T: Serialize, U: Serialize, V: Serialize> Serialize for (T, U, V)

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Source§

impl<T: Serialize, U: Serialize> Serialize for (T, U)

Source§

fn encode(&self, dest: &mut Vec<u8>) -> Result<(), EncodeError>

Source§

fn decode(src: &mut Tape<'_, u8>) -> Result<Self, DecodeError>

Implementors§