use crate::core::events::Event;
use std::path::PathBuf;
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum WorkspaceEvent {
FileAdded { path: PathBuf },
FileUpdated { path: PathBuf },
FileRemoved { path: PathBuf },
}
impl Event for WorkspaceEvent {}
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum DependencyEvent {
DependencyAdded {
from: PathBuf,
to: PathBuf,
},
FileRemoved { path: PathBuf },
}
impl Event for DependencyEvent {}
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum SymbolTableEvent {
SymbolInserted {
qualified_name: String,
symbol_id: usize,
},
ImportAdded {
import_path: String,
},
FileChanged {
file_path: String,
},
}
impl Event for SymbolTableEvent {}