#![allow(clippy::missing_errors_doc)]
pub mod ignore;
pub mod notify_watcher;
pub mod polling_watcher;
pub mod recovery;
pub mod settle;
use crate::core::NormalizedPath;
pub use ignore::IgnoreFilter;
pub use notify_watcher::NotifyWatcher;
pub use polling_watcher::{
PollWatchBatch, PollWatchObserver, PollingWatcher, PollingWatcherConfig,
};
pub use recovery::OverflowRecovery;
pub use settle::{SettleBuffer, SettledEvent};
#[derive(Debug, Clone)]
pub enum WatchEvent {
Modified(NormalizedPath),
Created(NormalizedPath),
Removed(NormalizedPath),
Renamed {
from: NormalizedPath,
to: NormalizedPath,
},
Overflow,
Error(String),
}
#[derive(Debug, Clone)]
pub struct WatcherConfig {
pub settle_window_ms: u64,
pub ignore_patterns: Vec<String>,
}
impl Default for WatcherConfig {
fn default() -> Self {
Self {
settle_window_ms: 50,
ignore_patterns: IgnoreFilter::default_patterns(),
}
}
}