Trait SizedEncode

Source
pub trait SizedEncode: Encode {
    // Required method
    fn exact_requiring_bytes(&self) -> u64;
}
Expand description

This trait indicates that the encoder always knows the exact bytes required to encode remaining items.

Required Methods§

Source

fn exact_requiring_bytes(&self) -> u64

Returns the exact number of bytes required to encode all the items remaining in the encoder.

Implementations on Foreign Types§

Source§

impl<'a, E: ?Sized + SizedEncode> SizedEncode for &'a mut E

Source§

impl<E: ?Sized + SizedEncode> SizedEncode for Box<E>

Implementors§

Source§

impl SizedEncode for F32beEncoder

Source§

impl SizedEncode for F32leEncoder

Source§

impl SizedEncode for F64beEncoder

Source§

impl SizedEncode for F64leEncoder

Source§

impl SizedEncode for I8Encoder

Source§

impl SizedEncode for I16beEncoder

Source§

impl SizedEncode for I16leEncoder

Source§

impl SizedEncode for I32beEncoder

Source§

impl SizedEncode for I32leEncoder

Source§

impl SizedEncode for I64beEncoder

Source§

impl SizedEncode for I64leEncoder

Source§

impl SizedEncode for U8Encoder

Source§

impl SizedEncode for U16beEncoder

Source§

impl SizedEncode for U16leEncoder

Source§

impl SizedEncode for U24beEncoder

Source§

impl SizedEncode for U24leEncoder

Source§

impl SizedEncode for U32beEncoder

Source§

impl SizedEncode for U32leEncoder

Source§

impl SizedEncode for U40beEncoder

Source§

impl SizedEncode for U40leEncoder

Source§

impl SizedEncode for U48beEncoder

Source§

impl SizedEncode for U48leEncoder

Source§

impl SizedEncode for U56beEncoder

Source§

impl SizedEncode for U56leEncoder

Source§

impl SizedEncode for U64beEncoder

Source§

impl SizedEncode for U64leEncoder

Source§

impl SizedEncode for NullEncoder

Source§

impl<B: AsRef<[u8]>> SizedEncode for BytesEncoder<B>

Source§

impl<C, E, F> SizedEncode for MapErr<C, E, F>
where C: SizedEncode, F: Fn(Error) -> E, Error: From<E>,

Source§

impl<C, T, E, F> SizedEncode for TryMapFrom<C, T, E, F>
where C: SizedEncode, F: Fn(T) -> Result<C::Item, E>, Error: From<E>,

Source§

impl<E0, E1> SizedEncode for TupleEncoder<(E0, E1)>
where E0: SizedEncode, E1: SizedEncode,

Source§

impl<E0, E1, E2> SizedEncode for TupleEncoder<(E0, E1, E2)>
where E0: SizedEncode, E1: SizedEncode, E2: SizedEncode,

Source§

impl<E0, E1, E2, E3> SizedEncode for TupleEncoder<(E0, E1, E2, E3)>

Source§

impl<E0, E1, E2, E3, E4> SizedEncode for TupleEncoder<(E0, E1, E2, E3, E4)>

Source§

impl<E0, E1, E2, E3, E4, E5> SizedEncode for TupleEncoder<(E0, E1, E2, E3, E4, E5)>

Source§

impl<E0, E1, E2, E3, E4, E5, E6> SizedEncode for TupleEncoder<(E0, E1, E2, E3, E4, E5, E6)>

Source§

impl<E0, E1, E2, E3, E4, E5, E6, E7> SizedEncode for TupleEncoder<(E0, E1, E2, E3, E4, E5, E6, E7)>

Source§

impl<E, T, F> SizedEncode for MapFrom<E, T, F>
where E: SizedEncode, F: Fn(T) -> E::Item,

Source§

impl<E: Encode> SizedEncode for Length<E>

Source§

impl<E: Encode> SizedEncode for PreEncode<E>

Source§

impl<E: SizedEncode> SizedEncode for Last<E>

Source§

impl<E: SizedEncode> SizedEncode for MaxBytes<E>

Source§

impl<E: SizedEncode> SizedEncode for Optional<E>

Source§

impl<E: SizedEncode> SizedEncode for Slice<E>

Source§

impl<S: AsRef<str>> SizedEncode for Utf8Encoder<S>