use std::any;
type VariableName = &'static str;
#[derive(Debug)]
#[derive(thiserror::Error)]
#[error(
"\n\t[{}]: erreur liée aux variables d'environnement. Raison: {0}",
any::type_name::<Self>()
)]
pub enum Error {
IO(#[from] std::io::Error),
#[error("La déclaration n'a pas pu être analysée")]
ParseLineDeclaration,
#[error("Impossible d'analyser la variable d'environnement « {0} ».")]
BadFormat(VariableName),
#[error("La variable d'environnement « {0} » est manquante.")]
NotFound(VariableName),
#[error("Erreur interne: {0}")]
Internal(String),
}