use diffsol::error::DiffsolError;
use std::fmt;
#[derive(Debug)]
pub struct DiffsolRtError(DiffsolError);
impl fmt::Display for DiffsolRtError {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "{}", self.0)
}
}
impl std::error::Error for DiffsolRtError {}
impl DiffsolRtError {
pub(crate) fn named(self, name: &str) -> Self {
let message = match self.0 {
DiffsolError::Other(message) => message,
other => other.to_string(),
};
DiffsolError::Other(format!("{name}: {message}")).into()
}
}
impl From<DiffsolError> for DiffsolRtError {
fn from(other: DiffsolError) -> Self {
DiffsolRtError(other)
}
}