1
2
3
4
5
6
7
8
9
10
11
12
13
14
use anyhow::Result;
use std::path::PathBuf;

pub trait CachePair {
    const MAGIC_NUMBER: u64 = 0x1867C64E;
    const ARCHIVE_VERSION: u64 = 20;

    fn new(toc_path: PathBuf, cache_path: PathBuf, is_post_ensmallening: bool) -> Self;
    fn is_post_ensmallening(&self) -> bool;
    fn toc_path(&self) -> PathBuf;
    fn cache_path(&self) -> PathBuf;
    fn read_toc(&self) -> Result<()>;
    fn unread_toc(&self);
}