pub trait Compressor<B: ByteBufMut> {
type BufMut: ByteBufMut;
// Required method
fn compress<R, F>(buf: &mut B, f: F) -> Result<R>
where F: FnOnce(&mut Self::BufMut) -> Result<R>;
}Expand description
A trait for record compression algorithms.
Required Associated Types§
sourcetype BufMut: ByteBufMut
type BufMut: ByteBufMut
Target buffer type for compression.
Required Methods§
Object Safety§
This trait is not object safe.
Implementors§
source§impl<B: ByteBufMut> Compressor<B> for Gzip
Available on crate feature gzip only.
impl<B: ByteBufMut> Compressor<B> for Gzip
Available on crate feature
gzip only.source§impl<B: ByteBufMut> Compressor<B> for Lz4
Available on crate feature lz4 only.
impl<B: ByteBufMut> Compressor<B> for Lz4
Available on crate feature
lz4 only.source§impl<B: ByteBufMut> Compressor<B> for None
impl<B: ByteBufMut> Compressor<B> for None
source§impl<B: ByteBufMut> Compressor<B> for Snappy
Available on crate feature snappy only.
impl<B: ByteBufMut> Compressor<B> for Snappy
Available on crate feature
snappy only.source§impl<B: ByteBufMut> Compressor<B> for Zstd
Available on crate feature zstd only.
impl<B: ByteBufMut> Compressor<B> for Zstd
Available on crate feature
zstd only.