Skip to main content

Crate bonds_core

Crate bonds_core 

Source
Expand description

§bonds-core

Core library for creating and managing bonds (symlink-based directory links) backed by SQLite persistence.

§Quick example

use bonds_core::{BondError, BondManager};
use std::path::PathBuf;

// `BondManager::new(None)` uses ~/.bonds/bonds.db by default.
let manager = BondManager::new(None)?;
let source = PathBuf::from("/path/to/source");
let target = PathBuf::from("/path/to/target-link");

// This creates a symlink on disk and persists the record in SQLite.
let _bond = manager.create_bond(source, target, Some("my-bond".to_string()))?;

Re-exports§

pub use bond::Bond;
pub use config::BondsConfig;
pub use error::BondError;
pub use error::ErrorKind;
pub use manager::BondManager;

Modules§

bond
Bond domain model types (for example, Bond).
config
User configuration loading/saving (~/.bonds/config.toml).
error
Public error types returned by this crate.
manager
High-level manager for bond lifecycle operations.