Trait bitstream_io::write::HuffmanWrite

source ·
pub trait HuffmanWrite<E: Endianness> {
    // Required method
    fn write_huffman<T>(
        &mut self,
        tree: &WriteHuffmanTree<E, T>,
        symbol: T
    ) -> Result<()>
       where T: Ord + Copy;
}
Expand description

A trait for anything that can write Huffman codes of a given endianness to an output stream

Required Methods§

source

fn write_huffman<T>( &mut self, tree: &WriteHuffmanTree<E, T>, symbol: T ) -> Result<()>
where T: Ord + Copy,

Writes Huffman code for the given symbol to the stream.

§Errors

Passes along any I/O error from the underlying stream.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<N, E> HuffmanWrite<E> for BitCounter<N, E>
where E: Endianness, N: AddAssign + From<u32>,

source§

impl<N, E> HuffmanWrite<E> for BitRecorder<N, E>
where E: Endianness, N: Copy + From<u32> + AddAssign + Rem<Output = N> + Eq,

source§

impl<W: Write, E: Endianness> HuffmanWrite<E> for BitWriter<W, E>