use std::fmt::Display;
#[derive(Debug)]
pub enum FileSourceError {
MissingFileName,
MissingFileExtension,
UnknownExtension,
UnknownFileName,
UnknownLanguageId,
}
impl std::error::Error for FileSourceError {}
impl Display for FileSourceError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::MissingFileName => {
write!(f, "The path has no file name")
}
Self::MissingFileExtension => {
write!(f, "The path has no file extension")
}
Self::UnknownExtension => {
write!(f, "The parser can't parse the extension yet")
}
Self::UnknownFileName => {
write!(f, "The parser doesn't recognize the file yet")
}
Self::UnknownLanguageId => {
write!(f, "The parser can't parse the language yet")
}
}
}
}