pub enum EthAppError<E: Error> {
Show 20 variants
Transport(LedgerAppError<E>),
InvalidBip32Path(String),
InvalidAddress(String),
InvalidSignature(String),
TransactionTooLarge {
size: usize,
max: usize,
},
MessageTooLarge {
size: usize,
max: usize,
},
InvalidTransaction(String),
InvalidMessage(String),
HexError(String),
InvalidChainId(u64),
UserRejected,
ConfigurationError(String),
FeatureNotSupported(String),
ChunkError(String),
InvalidResponseData(String),
InvalidEip712Data(String),
Eip712StructError(String),
Eip712FilterError(String),
UnsupportedVersion(String),
DeviceStatus {
sw: u16,
description: String,
},
}Expand description
Ethereum application specific errors
Variants§
Transport(LedgerAppError<E>)
Error from the underlying transport/device
InvalidBip32Path(String)
Invalid BIP32 derivation path
InvalidAddress(String)
Invalid Ethereum address format
InvalidSignature(String)
Invalid signature format
TransactionTooLarge
Transaction data too large
MessageTooLarge
Message data too large
InvalidTransaction(String)
Invalid transaction format
InvalidMessage(String)
Invalid message format
HexError(String)
Hex encoding/decoding error
InvalidChainId(u64)
Invalid chain ID
UserRejected
Device rejected the operation
ConfigurationError(String)
Application configuration error
FeatureNotSupported(String)
Feature not supported by current app version
ChunkError(String)
Data chunk error during multi-chunk operations
InvalidResponseData(String)
Invalid response data from device
InvalidEip712Data(String)
Invalid EIP-712 data
Eip712StructError(String)
EIP-712 struct definition error
Eip712FilterError(String)
EIP-712 filtering error
UnsupportedVersion(String)
Unsupported app version
DeviceStatus
Device returned a specific status word
Implementations§
Source§impl<E: Error> EthAppError<E>
impl<E: Error> EthAppError<E>
Sourcepub fn is_user_rejected(&self) -> bool
pub fn is_user_rejected(&self) -> bool
Check if error is due to user rejection
Sourcepub fn is_transport_error(&self) -> bool
pub fn is_transport_error(&self) -> bool
Check if error is due to transport/communication issues
Sourcepub fn is_invalid_input(&self) -> bool
pub fn is_invalid_input(&self) -> bool
Check if error is due to invalid input parameters
Trait Implementations§
Source§impl<E: Clone + Error> Clone for EthAppError<E>
impl<E: Clone + Error> Clone for EthAppError<E>
Source§fn clone(&self) -> EthAppError<E>
fn clone(&self) -> EthAppError<E>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<E: Error> Display for EthAppError<E>where
LedgerAppError<E>: Display,
impl<E: Error> Display for EthAppError<E>where
LedgerAppError<E>: Display,
Source§impl<E: Error> Error for EthAppError<E>
impl<E: Error> Error for EthAppError<E>
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl<E: Error> From<LedgerAppError<E>> for EthAppError<E>
impl<E: Error> From<LedgerAppError<E>> for EthAppError<E>
Source§fn from(source: LedgerAppError<E>) -> Self
fn from(source: LedgerAppError<E>) -> Self
Source§impl<E: PartialEq + Error> PartialEq for EthAppError<E>
impl<E: PartialEq + Error> PartialEq for EthAppError<E>
Source§fn eq(&self, other: &EthAppError<E>) -> bool
fn eq(&self, other: &EthAppError<E>) -> bool
self and other values to be equal, and is used by ==.