pub trait Codec {
type CompressionError: Error + Send + Sync + 'static;
type DecompressionError: Error + Send + Sync + 'static;
// Required methods
fn compress(&self, data: &[u8]) -> Result<Vec<u8>, Self::CompressionError>;
fn decompress_checked(
&self,
src: &[u8],
dst: &mut [u8],
) -> Result<(), Self::DecompressionError>;
// Provided methods
fn decompress(&self, src: &[u8], dst: &mut [u8]) { ... }
fn decompress_with_length(&self, src: &[u8], len: usize) -> Vec<u8> ⓘ { ... }
}Expand description
Compression codec for the include_assets crate
Required Associated Types§
Sourcetype CompressionError: Error + Send + Sync + 'static
type CompressionError: Error + Send + Sync + 'static
Errors that might occur during compression
Sourcetype DecompressionError: Error + Send + Sync + 'static
type DecompressionError: Error + Send + Sync + 'static
Errors that might occur during decompression
Required Methods§
Sourcefn compress(&self, data: &[u8]) -> Result<Vec<u8>, Self::CompressionError>
fn compress(&self, data: &[u8]) -> Result<Vec<u8>, Self::CompressionError>
Compress data to a newly allocated vector.
Sourcefn decompress_checked(
&self,
src: &[u8],
dst: &mut [u8],
) -> Result<(), Self::DecompressionError>
fn decompress_checked( &self, src: &[u8], dst: &mut [u8], ) -> Result<(), Self::DecompressionError>
Decompress data in src to dst.
Fails if the length of dst doesn’t exactly match the length of the uncompressed data.
If decompression fails for any reason, the contents of dst are unspecified.
Provided Methods§
Sourcefn decompress(&self, src: &[u8], dst: &mut [u8])
fn decompress(&self, src: &[u8], dst: &mut [u8])
Like Codec::decompress_checked, but panics on error.