znippy_common/
lib.rs

1extern crate core;
2
3pub mod common_config;
4pub mod index;
5mod int_ring;
6pub use int_ring::{ChunkQueue, RingBuffer};
7
8pub mod chunkrevolver;
9pub use chunkrevolver::{ChunkRevolver, get_chunk_slice, split_into_microchunks};
10
11pub mod meta;
12pub use meta::{ChunkMeta, FileMeta};
13
14use serde::{Deserialize, Serialize};
15
16pub mod decompress;
17mod skip;
18
19pub use decompress::decompress_archive;
20
21pub use index::{
22    VerifyReport, ZNIPPY_INDEX_SCHEMA, attach_metadata, build_arrow_batch_from_files,
23    extract_config_from_arrow_metadata, is_probably_compressed, list_archive_contents,
24    read_znippy_index, should_skip_compression, verify_archive_integrity, znippy_index_schema,
25};
26
27#[derive(Debug)]
28pub struct CompressionReport {
29    pub total_files: u64,
30    pub compressed_files: u64,
31    pub uncompressed_files: u64,
32    pub total_dirs: u64,
33    pub total_bytes_in: u64,
34    pub total_bytes_out: u64,
35    pub compressed_bytes: u64,
36    pub uncompressed_bytes: u64,
37    pub compression_ratio: f32, // 0.0–100.0
38    pub chunks: u64,
39}