raiden_state_machine/
errors.rs

1#![warn(clippy::missing_docs_in_private_items)]
2
3use std::{
4	error,
5	fmt,
6};
7
8/// The state transition error type.
9#[derive(Debug, Clone)]
10pub struct StateTransitionError {
11	pub msg: String,
12}
13
14impl fmt::Display for StateTransitionError {
15	fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
16		write!(f, "{}", self.msg)
17	}
18}
19
20impl error::Error for StateTransitionError {
21	fn source(&self) -> Option<&(dyn error::Error + 'static)> {
22		// Generic error, underlying cause isn't tracked.
23		None
24	}
25}
26#[allow(clippy::from_over_into)]
27impl Into<StateTransitionError> for String {
28	fn into(self) -> StateTransitionError {
29		StateTransitionError { msg: self }
30	}
31}