use libutils_issue::Issue;
use core::fmt::{
Result as Format,
Formatter,
Display
};
use std::time::Instant;
pub struct Problem {
pub chain: Vec<&'static str>,
pub issue: Issue,
pub _at: Instant
}
impl Display for Problem {
fn fmt(&self, formatter: &mut Formatter<'_>) -> Format {write!(
formatter,
"@ {}\n{:#?}: {}{}\n",
self.chain.join(" > "),
self.issue.severity,
self.issue.name,
self.issue.description.as_ref().map(|description| format!("\n {description}")).unwrap_or_default()
)}
}