1use ckb_error::{Error, ErrorKind, prelude::*};
2use ckb_types::packed::Byte32;
3
4#[derive(Error, Debug, Clone, Eq, PartialEq)]
6pub enum SpecError {
7 #[error("FileNotFound")]
9 FileNotFound(String),
10
11 #[error("ChainNameNotAllowed: {0}")]
13 ChainNameNotAllowed(String),
14
15 #[error("GenesisMismatch(expected: {expected}, actual: {actual})")]
17 GenesisMismatch {
18 expected: Byte32,
20 actual: Byte32,
22 },
23}
24
25impl From<SpecError> for Error {
26 fn from(error: SpecError) -> Self {
27 ErrorKind::Spec.because(error)
28 }
29}