1mod byte_budget;
2mod db_pool;
3mod error;
4mod facade;
5pub mod freshness;
6mod lock;
7mod mapping;
8pub mod metrics;
9mod ogg_index;
10mod reader;
11mod refresh_diff;
12mod scan;
13mod template;
14mod tree;
15
16pub use db_pool::DbPool;
17pub use error::{CoreError, Result};
18pub use facade::{Attr, Fh, Mode, MountConfig, Musefs, PassthroughFd};
19pub use musefs_db::convert;
20pub use reader::{HeaderCache, ResolvedFile, read_at, read_at_with_file};
21pub use scan::scan_directory_full_oracle;
22pub use scan::{
23 RevalidateStats, ScanOptions, ScanStats, revalidate, revalidate_with, scan_directory,
24 scan_directory_with,
25};
26pub use template::{Template, TemplateError};
27pub use tree::{Node, NodeKind, VirtualTree};
28
29#[cfg(test)]
30mod cross_layer_caps {
31 #[test]
32 fn structural_body_cap_matches_flac_block_limit() {
33 assert_eq!(
34 u64::try_from(musefs_db::limits::MAX_STRUCTURAL_BODY_LEN).unwrap(),
35 musefs_format::flac::MAX_BLOCK_BODY,
36 "db structural body cap must equal FLAC's 24-bit block limit",
37 );
38 }
39}