pub trait CompressionStrategy {
type Error: Error + Send + Sync + 'static;
// Required methods
fn compress(&mut self, data: &[u8]) -> Result<Vec<u8>, Self::Error>;
fn decompress(&self, data: &[u8]) -> Result<Vec<u8>, Self::Error>;
fn metadata(&self) -> CompressionMetadata;
fn stats(&self) -> CompressionStats;
fn reset(&mut self);
}Expand description
A trait for compression algorithms that can compress and decompress data
Required Associated Types§
Required Methods§
Sourcefn metadata(&self) -> CompressionMetadata
fn metadata(&self) -> CompressionMetadata
Returns metadata about this compression algorithm
Sourcefn stats(&self) -> CompressionStats
fn stats(&self) -> CompressionStats
Returns the current compression statistics