pub trait Compressor<B: ByteBufMut> {
    type BufMut: ByteBufMut;

    // Required method
    fn compress<R, F>(buf: &mut B, f: F) -> Result<R, EncodeError>
       where F: FnOnce(&mut Self::BufMut) -> Result<R, EncodeError>;
}
Expand description

A trait for record compression algorithms.

Required Associated Types§

source

type BufMut: ByteBufMut

Target buffer type for compression.

Required Methods§

source

fn compress<R, F>(buf: &mut B, f: F) -> Result<R, EncodeError>
where F: FnOnce(&mut Self::BufMut) -> Result<R, EncodeError>,

Compresses into provided ByteBufMut, with records encoded by F into R.

Object Safety§

This trait is not object safe.

Implementors§