use std::collections::HashSet;
use std::path::PathBuf;
#[derive(Debug)]
pub enum Event {
Modified(HashSet<PathBuf>),
Deleted(HashSet<PathBuf>),
RootChanged(PathBuf),
Error,
}
unsafe impl Send for Event {}
unsafe impl Sync for Event {}
impl Event {
pub fn kind(&self) -> &'static str {
match self {
Event::Modified(_) => "modified",
Event::Deleted(_) => "deleted",
Event::RootChanged(_) => "rootChanged",
Event::Error => "error",
}
}
pub fn paths<'a>(&'a self) -> impl Iterator<Item = &'a PathBuf> {
match self {
Event::Modified(paths) => paths.iter(),
Event::Deleted(paths) => paths.iter(),
Event::RootChanged(_) => unimplemented!(),
Event::Error => unimplemented!(),
}
}
}