pub trait NestedEncodeOutput {
    // Required method
    fn write(&mut self, bytes: &[u8]);

    // Provided methods
    fn push_byte(&mut self, byte: u8) { ... }
    fn supports_specialized_type<T: TryStaticCast>() -> bool { ... }
    fn push_specialized<T, C, H>(
        &mut self,
        _context: C,
        _value: &T,
        h: H
    ) -> Result<(), H::HandledErr>
       where T: TryStaticCast,
             C: TryStaticCast,
             H: EncodeErrorHandler { ... }
}
Expand description

Trait that allows appending bytes. Used especially by the NestedEncode trait to output data.

In principle it can be anything, but in practice we only keep 1 implementation, which is Vec. This is to avoid code duplication by monomorphization.

Required Methods§

source

fn write(&mut self, bytes: &[u8])

Write to the output.

Provided Methods§

source

fn push_byte(&mut self, byte: u8)

Write a single byte to the output.

source

fn supports_specialized_type<T: TryStaticCast>() -> bool

source

fn push_specialized<T, C, H>( &mut self, _context: C, _value: &T, h: H ) -> Result<(), H::HandledErr>

Object Safety§

This trait is not object safe.

Implementors§