rustywallet_address/
error.rs1use thiserror::Error;
4
5#[derive(Debug, Clone, PartialEq, Eq, Error)]
7pub enum AddressError {
8 #[error("Invalid public key: {0}")]
10 InvalidPublicKey(String),
11
12 #[error("Invalid address format: {0}")]
14 InvalidFormat(String),
15
16 #[error("Checksum mismatch")]
18 ChecksumMismatch,
19
20 #[error("Unsupported address type: {0}")]
22 UnsupportedAddressType(String),
23
24 #[error("Network mismatch: expected {expected}, got {actual}")]
26 NetworkMismatch { expected: String, actual: String },
27
28 #[error("SegWit requires compressed public key")]
30 UncompressedKeyForSegWit,
31
32 #[error("Invalid Bech32 encoding: {0}")]
34 InvalidBech32(String),
35
36 #[error("Invalid Base58 encoding: {0}")]
38 InvalidBase58(String),
39}