radix_common/address/
errors.rs1use bech32;
2use sbor::rust::fmt;
3
4#[derive(Debug, Clone, PartialEq, Eq)]
5pub enum AddressBech32EncodeError {
6 Bech32mEncodingError(bech32::Error),
7 FormatError(fmt::Error),
8 MissingEntityTypeByte,
9 InvalidEntityTypeId(u8),
10}
11
12#[cfg(not(feature = "alloc"))]
13impl std::error::Error for AddressBech32EncodeError {}
14
15impl fmt::Display for AddressBech32EncodeError {
16 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
17 write!(f, "{:?}", self)
18 }
19}
20
21#[derive(Debug, Clone, PartialEq, Eq)]
22pub enum AddressBech32DecodeError {
23 MissingEntityTypeByte,
24 Bech32mEncodingError(bech32::Error),
25 Bech32mDecodingError(bech32::Error),
26 InvalidVariant(bech32::Variant),
27 InvalidEntityTypeId(u8),
28 InvalidHrp,
29}
30
31#[cfg(not(feature = "alloc"))]
32impl std::error::Error for AddressBech32DecodeError {}
33
34impl fmt::Display for AddressBech32DecodeError {
35 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
36 write!(f, "{:?}", self)
37 }
38}