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
46
47
48
49
50
51
//! froggr: A simple file system implementation using the 9P protocol
//!
//! A simple file system implementation using the 9P protocol.
//!
//! ## Features
//!
//! - Flexible namespace management through bind operations
//! - Multiple binding modes (Replace, Before, After, Create)
//! - Union directories
//! - Custom environments
//!
//! ## Quick Start
//!
//! ```rust,no_run
//! use froggr::{FilesystemManager, NineP, BindMode};
//! use std::path::PathBuf;
//!
//! # fn main() -> anyhow::Result<()> {
//! // Create a new filesystem
//! let fs = NineP::new(PathBuf::from("/tmp/test"))?;
//! let manager = FilesystemManager::new(fs);
//!
//! // Bind a directory
//! manager.bind(
//! "/source/path".as_ref(),
//! "/target/path".as_ref(),
//! BindMode::Replace
//! )?;
//! # Ok(())
//! # }
//! ```
//!
//! ## Bind Modes
//!
//! - `Replace`: Replaces existing content at the mountpoint
//! - `Before`: Adds content with higher priority
//! - `After`: Adds content with lower priority
//! - `Create`: Creates mountpoint if needed
pub use FilesystemManager;
pub use NineP;
// Re-export commonly used types
pub use BindMode;