#![cfg_attr(not(any(test, feature = "std")), no_std)]
#![forbid(unsafe_code)]
extern crate alloc;
mod cache;
mod codec;
mod error;
mod frontend;
mod path;
mod read_cap;
mod source;
mod verify;
#[cfg(feature = "verify")]
mod verity;
pub use cache::BlockCache;
pub use codec::{decode, lz4_block_with_dict, microlzma_block_decode, Codec};
pub use error::{FoldError, Result};
pub use frontend::{DirEntry, FileKind, FoldFrontend, Metadata, NodeId, SubstrateCtx};
pub use path::{metadata_path, read_dir_path, read_path, resolve, MAX_SYMLINKS};
pub use read_cap::{
checked_block_len, checked_full_read_len, MAX_BOOT_FILE_BYTES, MAX_DECOMPRESSED_BLOCK_BYTES,
};
pub use source::{BlockSource, SliceSource};
pub use verify::{NoVerifier, Verifier};
#[cfg(feature = "verify")]
pub use verity::{fsverity_digest_sha256, MerkleVerifier, Sha256Digest, DEFAULT_BLOCK_LOG};