diff options
Diffstat (limited to 'vendor/miniz_oxide/src/deflate/buffer.rs')
-rw-r--r-- | vendor/miniz_oxide/src/deflate/buffer.rs | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/vendor/miniz_oxide/src/deflate/buffer.rs b/vendor/miniz_oxide/src/deflate/buffer.rs deleted file mode 100644 index f246c07..0000000 --- a/vendor/miniz_oxide/src/deflate/buffer.rs +++ /dev/null @@ -1,58 +0,0 @@ -//! Buffer wrappers implementing default so we can allocate the buffers with `Box::default()` -//! to avoid stack copies. Box::new() doesn't at the moment, and using a vec means we would lose -//! static length info. - -use crate::deflate::core::{LZ_DICT_SIZE, MAX_MATCH_LEN}; - -/// Size of the buffer of lz77 encoded data. -pub const LZ_CODE_BUF_SIZE: usize = 64 * 1024; -/// Size of the output buffer. -pub const OUT_BUF_SIZE: usize = (LZ_CODE_BUF_SIZE * 13) / 10; -pub const LZ_DICT_FULL_SIZE: usize = LZ_DICT_SIZE + MAX_MATCH_LEN - 1 + 1; - -/// Size of hash values in the hash chains. -pub const LZ_HASH_BITS: i32 = 15; -/// How many bits to shift when updating the current hash value. -pub const LZ_HASH_SHIFT: i32 = (LZ_HASH_BITS + 2) / 3; -/// Size of the chained hash tables. -pub const LZ_HASH_SIZE: usize = 1 << LZ_HASH_BITS; - -#[inline] -pub fn update_hash(current_hash: u16, byte: u8) -> u16 { - ((current_hash << LZ_HASH_SHIFT) ^ u16::from(byte)) & (LZ_HASH_SIZE as u16 - 1) -} - -pub struct HashBuffers { - pub dict: [u8; LZ_DICT_FULL_SIZE], - pub next: [u16; LZ_DICT_SIZE], - pub hash: [u16; LZ_DICT_SIZE], -} - -impl HashBuffers { - #[inline] - pub fn reset(&mut self) { - *self = HashBuffers::default(); - } -} - -impl Default for HashBuffers { - fn default() -> HashBuffers { - HashBuffers { - dict: [0; LZ_DICT_FULL_SIZE], - next: [0; LZ_DICT_SIZE], - hash: [0; LZ_DICT_SIZE], - } - } -} - -pub struct LocalBuf { - pub b: [u8; OUT_BUF_SIZE], -} - -impl Default for LocalBuf { - fn default() -> LocalBuf { - LocalBuf { - b: [0; OUT_BUF_SIZE], - } - } -} |