use std::path::PathBuf;
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error("io error reading {path}: {source}", path = path.display())]
Io {
path: PathBuf,
#[source]
source: std::io::Error,
},
#[error("xml parse error in {path}: {message}", path = path.display())]
Xml {
path: PathBuf,
message: String,
},
#[error("invalid database entry in {path}: {message}", path = path.display())]
InvalidEntry {
path: PathBuf,
message: String,
},
#[error("no match: {0}")]
NoMatch(String),
}
pub type Result<T> = std::result::Result<T, Error>;