#[derive(Debug)] pub enum ErrorStatus { IOError, ParsingError } pub struct Error { pub status: ErrorStatus, pub data: String } impl core::fmt::Debug for Error { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "A {:?} error has occured.\nDetails: {}", self.status, self.data) } }