pub trait EncoderValue: Sized {
    // Required method
    fn encode<E: Encoder>(&self, encoder: &mut E);

    // Provided methods
    fn encode_mut<E: Encoder>(&mut self, encoder: &mut E) { ... }
    fn encoding_size(&self) -> usize { ... }
    fn encoding_size_for_encoder<E: Encoder>(&self, encoder: &E) -> usize { ... }
    fn encode_with_len_prefix<Len: TryFrom<usize> + EncoderValue, E: Encoder>(
        &self,
        encoder: &mut E
    )
       where Self: Sized,
             Len::Error: Debug { ... }
}

Required Methods§

source

fn encode<E: Encoder>(&self, encoder: &mut E)

Encodes the value into the encoder

Provided Methods§

source

fn encode_mut<E: Encoder>(&mut self, encoder: &mut E)

Encodes the value into the encoder, while potentially mutating the value itself

source

fn encoding_size(&self) -> usize

Returns the encoding size with no buffer constrains

source

fn encoding_size_for_encoder<E: Encoder>(&self, encoder: &E) -> usize

Returns the encoding size for the given encoder’s capacity

source

fn encode_with_len_prefix<Len: TryFrom<usize> + EncoderValue, E: Encoder>( &self, encoder: &mut E )where Self: Sized, Len::Error: Debug,

Encodes the value into the encoder with a prefix of Len

Implementations on Foreign Types§

source§

impl EncoderValue for i64

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for f32

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for &mut [u8]

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for u128

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for &[u8]

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for &Bytes

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for i8

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for ()

source§

fn encode<E: Encoder>(&self, _encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for i128

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for u16

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for f64

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for u8

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for i32

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for u32

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for u64

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl EncoderValue for i16

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

source§

impl<T: EncoderValue> EncoderValue for Option<T>

source§

fn encode<E: Encoder>(&self, buffer: &mut E)

source§

fn encode_mut<E: Encoder>(&mut self, buffer: &mut E)

source§

impl EncoderValue for Bytes

source§

fn encode<E: Encoder>(&self, encoder: &mut E)

source§

fn encoding_size(&self) -> usize

source§

fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize

Implementors§

source§

impl EncoderValue for DecoderBuffer<'_>

source§

impl EncoderValue for DecoderBufferMut<'_>

source§

impl EncoderValue for i24

source§

impl EncoderValue for i48

source§

impl EncoderValue for u24

source§

impl EncoderValue for u48

source§

impl EncoderValue for I16where I16: AsBytes,

source§

impl EncoderValue for I32where I32: AsBytes,

source§

impl EncoderValue for I64where I64: AsBytes,

source§

impl EncoderValue for I128where I128: AsBytes,

source§

impl EncoderValue for U16where U16: AsBytes,

source§

impl EncoderValue for U32where U32: AsBytes,

source§

impl EncoderValue for U64where U64: AsBytes,

source§

impl EncoderValue for U128where U128: AsBytes,

source§

impl<'a> EncoderValue for &'a I16where I16: AsBytes,

source§

impl<'a> EncoderValue for &'a I32where I32: AsBytes,

source§

impl<'a> EncoderValue for &'a I64where I64: AsBytes,

source§

impl<'a> EncoderValue for &'a I128where I128: AsBytes,

source§

impl<'a> EncoderValue for &'a U16where U16: AsBytes,

source§

impl<'a> EncoderValue for &'a U32where U32: AsBytes,

source§

impl<'a> EncoderValue for &'a U64where U64: AsBytes,

source§

impl<'a> EncoderValue for &'a U128where U128: AsBytes,

source§

impl<'a> EncoderValue for &'a mut I16where I16: AsBytes,

source§

impl<'a> EncoderValue for &'a mut I32where I32: AsBytes,

source§

impl<'a> EncoderValue for &'a mut I64where I64: AsBytes,

source§

impl<'a> EncoderValue for &'a mut I128where I128: AsBytes,

source§

impl<'a> EncoderValue for &'a mut U16where U16: AsBytes,

source§

impl<'a> EncoderValue for &'a mut U32where U32: AsBytes,

source§

impl<'a> EncoderValue for &'a mut U64where U64: AsBytes,

source§

impl<'a> EncoderValue for &'a mut U128where U128: AsBytes,