#[derive(Debug)]
pub enum ExportError {
IO(std::io::Error),
Emit(yaml_rust::EmitError),
Validation(TreeError),
}
impl From<std::io::Error> for ExportError {
fn from(item: std::io::Error) -> Self {
ExportError::IO(item)
}
}
impl From<yaml_rust::EmitError> for ExportError {
fn from(item: yaml_rust::EmitError) -> Self {
ExportError::Emit(item)
}
}
impl From<TreeError> for ExportError {
fn from(item: TreeError) -> Self {
ExportError::Validation(item)
}
}
#[derive(Debug)]
pub enum ImportError {
IO(std::io::Error),
Scan(yaml_rust::ScanError),
Validation(TreeError),
MultipleDocumentsProvided(),
}
impl From<std::io::Error> for ImportError {
fn from(item: std::io::Error) -> Self {
ImportError::IO(item)
}
}
impl From<yaml_rust::ScanError> for ImportError {
fn from(item: yaml_rust::ScanError) -> Self {
ImportError::Scan(item)
}
}
impl From<TreeError> for ImportError {
fn from(item: TreeError) -> Self {
ImportError::Validation(item)
}
}
#[derive(Debug)]
pub enum TreeError {
RootNotSet(),
CurrentNotSet(),
NodeDNE(String),
Validation(String),
}