use thiserror::Error as ThisError;
#[derive(Debug, ThisError)]
pub enum Error {
#[error("IO error: `{0}`")]
IoError(#[from] std::io::Error),
#[error("non-UTF-8 string")]
Utf8Error,
#[error("capture group does not exist")]
CaptureError,
#[error("could not find any files to parse")]
EmptyFileListError,
#[error("required file missing: `{0}`")]
MissingFileError(String),
#[error("glob error: `{0}`")]
GlobError(#[from] globwalk::GlobError),
#[error("regex error: `{0}`")]
RegexError(#[from] regex::Error),
}