assemblyline_markings/
errors.rs#[derive(Debug)]
pub enum Errors {
InvalidClassification(String),
InvalidDefinition(String),
ClassificationNameEmpty
}
impl std::fmt::Display for Errors {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Errors::InvalidClassification(message) => f.write_fmt(format_args!("An invalid classification string was provided: {message}")),
Errors::InvalidDefinition(message) => f.write_fmt(format_args!("An invalid classification config was provided: {message}")),
Errors::ClassificationNameEmpty => f.write_str("A name given in the classification definition is an empty string"),
}
}
}
impl std::error::Error for Errors {}
impl From<serde_yaml::Error> for Errors {
fn from(value: serde_yaml::Error) -> Self {
Self::InvalidDefinition(value.to_string())
}
}
impl From<std::io::Error> for Errors {
fn from(value: std::io::Error) -> Self {
Self::InvalidDefinition(value.to_string())
}
}