1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! # Hadris
//!
//! A unified package for working with filesystem and disk image formats.
//!
//! This meta-crate re-exports the individual hadris crates, providing
//! a single dependency for accessing all supported formats:
//!
//! - **`iso`** — ISO 9660 with Joliet, Rock Ridge, and El-Torito boot support
//! - **`fat`** — FAT12/16/32 with long filenames and optional caching
//! - **`udf`** — Universal Disk Format (UDF) 1.02–2.60
//! - **`cpio`** — CPIO newc/CRC archive format
//!
//! ## Feature Flags
//!
//! | Feature | Default | Description |
//! |-----------|---------|-------------|
//! | `iso9660` | Yes | ISO 9660 filesystem support |
//! | `fat` | Yes | FAT12/16/32 filesystem support |
//! | `cpio` | Yes | CPIO archive support |
//! | `udf` | No | UDF filesystem support |
//! | `sync` | No | Synchronous API for all enabled formats |
//! | `async` | No | Asynchronous API for all enabled formats |
//!
//! ## Quick Start
//!
//! ```rust,no_run
//! // Read an ISO image
//! use hadris::iso::sync::IsoImage;
//! let file = std::fs::File::open("image.iso").unwrap();
//! let iso = IsoImage::open(file).unwrap();
//! let pvd = iso.read_pvd();
//! println!("Volume: {}", pvd.volume_identifier);
//! ```
pub use hadris_iso as iso;
pub use hadris_fat as fat;
pub use hadris_udf as udf;
pub use hadris_cpio as cpio;