#[derive(Debug, Clone, PartialEq, Eq)]
pub enum Error {
InvalidMxId(String),
UnknownBusinessArea(String),
Deserialize(String),
Serialize(String),
}
impl core::fmt::Display for Error {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
match self {
Error::InvalidMxId(s) => write!(f, "invalid ISO 20022 message id: {s}"),
Error::UnknownBusinessArea(s) => write!(f, "unknown business area: {s}"),
Error::Deserialize(s) => write!(f, "XML deserialization failed: {s}"),
Error::Serialize(s) => write!(f, "XML serialization failed: {s}"),
}
}
}
impl std::error::Error for Error {}
pub type Result<T> = core::result::Result<T, Error>;