Skip to main content

hypercall_settlement/
error.rs

1use std::fmt;
2
3/// Settlement validation failure.
4#[derive(Debug, Clone, PartialEq, Eq)]
5pub struct SettlementError {
6    message: String,
7}
8
9impl SettlementError {
10    pub(crate) fn new(message: impl Into<String>) -> Self {
11        Self {
12            message: message.into(),
13        }
14    }
15
16    /// Human-readable error message.
17    pub fn message(&self) -> &str {
18        &self.message
19    }
20}
21
22impl fmt::Display for SettlementError {
23    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
24        f.write_str(&self.message)
25    }
26}
27
28impl std::error::Error for SettlementError {}