1use crate::{
2 no_std::{
3 fmt::Error as FmtError, io::Error as IoError, num::ParseIntError as NumParseIntError,
4 String,
5 },
6 AddressError, AmountError, FormatError, PublicKeyError, TransactionError,
7};
8
9#[derive(Debug, Error)]
10pub enum Error {
11 #[error("Runtime Error:{0}")]
12 RuntimeError(String),
13
14 #[error("Invalid Address: {0}")]
15 InvalidAddress(#[from] AddressError),
16
17 #[error("Invalid Transaction: {0:}")]
18 InvalidTransaction(#[from] TransactionError),
19
20 #[error("Invalid Amount: {0:}")]
21 InvalidAmount(#[from] AmountError),
22
23 #[error("Invalid PublickKey: {0:}")]
24 InvalidPublickKey(#[from] PublicKeyError),
25
26 #[error("Invalid Format: {0:}")]
27 InvalidFormat(#[from] FormatError),
28
29 #[error("io error: {0:}")]
30 Io(#[from] IoError),
31
32 #[error("fmt error: {0:}")]
33 Fmt(#[from] FmtError),
34
35 #[error("fromHex error: {0:}")]
36 FromHex(#[from] ::hex::FromHexError),
37
38 #[error("parsing error: {0:}")]
39 ParseInt(#[from] NumParseIntError),
40}