peridot_archive/
lib.rs

1//! Peridot Archive
2
3mod entry;
4mod entry_tree;
5mod utils;
6
7use bitflags::bitflags;
8
9pub use self::entry::{AssetEntryHeadingPair, AssetNameRef};
10mod write;
11pub use self::write::ArchiveWrite;
12mod read;
13pub use self::read::{
14    Archive, ArchiveAsync, ArchiveBinReader, ArchiveBinReaderAsync, ArchiveReadError,
15};
16
17#[repr(C)]
18pub struct LinearPaired2u64(u64, u64);
19
20bitflags! {
21    pub struct ContentFlags : u8 {
22        const EMPTY = 0;
23        const ROOT_HASH_TREE_EXACT = 0x01;
24    }
25}
26
27/// 展開後のサイズが値として入る。圧縮指定時には無視されるので適当な値を指定する
28#[derive(Debug)]
29pub enum CompressionMethod {
30    None,
31    Zlib(u64),
32    Lz4(u64),
33    Zstd11(u64),
34}