pub trait Compressor: Send + Sync {
// Required methods
fn compression_type(&self) -> CompressionType;
fn compress(&self, input: &[u8]) -> Result<Vec<u8>>;
fn decompress(&self, input: &[u8], max_output: usize) -> Result<Vec<u8>>;
fn name(&self) -> &'static str;
}Expand description
Trait for pluggable compression algorithms.
Implement this trait to add custom compression support to Crous.
ⓘ
struct MyCompressor;
impl Compressor for MyCompressor {
fn compression_type(&self) -> CompressionType { /* ... */ }
fn compress(&self, input: &[u8]) -> Result<Vec<u8>> { /* ... */ }
fn decompress(&self, input: &[u8], max_output: usize) -> Result<Vec<u8>> { /* ... */ }
}Required Methods§
Sourcefn compression_type(&self) -> CompressionType
fn compression_type(&self) -> CompressionType
The compression type identifier for block headers.