1pub(crate) const FILE_MAGIC: &[u8; 8] = b"HRRYFILE";
2pub(crate) const TRAILER_MAGIC: &[u8; 4] = b"HRRY";
3pub(crate) const FILE_HEADER_SIZE: u64 = 64;
4pub(crate) const TRAILER_SIZE: u64 = 40;
5pub(crate) const SUPPORTED_CONTAINER_VERSION_MAJOR: u8 = 1;
6pub(crate) const MIN_DATA_BUFFER_ALIGNMENT: u32 = 4096;
7pub(crate) const MAX_DATA_BUFFER_ALIGNMENT: u32 = 2 * 1024 * 1024;
8
9pub(crate) mod file_flags {
10 pub const HAS_KV_METADATA: u32 = 1 << 0;
11 pub const SORTED_INDEX: u32 = 1 << 1;
12 pub const HAS_INDEX_CRC32C: u32 = 1 << 2;
13 pub const RESERVED_MASK: u32 = !0x07u32;
14}
15
16pub mod reader;
17pub mod types;
18pub mod writer;
19
20pub use reader::{FileComposite, FileItem, FileReader, FileTensor, DEFAULT_MAX_COMPOSITE_DEPTH};
21pub use types::{FileWriterOptions, IndexEntry, KvValue};
22pub use writer::{FileCompositeNode, FileWriter};