kaspa_wallet_cli/
error.rs

1use kaspa_wallet_core::error::Error as WalletError;
2use workflow_core::channel::ChannelError;
3use workflow_terminal::error::Error as TerminalError;
4
5use thiserror::Error;
6
7#[derive(Debug, Error)]
8pub enum Error {
9    #[error("Error: {0}")]
10    String(String),
11
12    #[error("Wallet error: {0}")]
13    WalletError(#[from] WalletError),
14
15    #[error("Cli error {0}")]
16    TerminalError(#[from] TerminalError),
17    // #[error("RPC error: {0}")]
18    // RpcError(#[from] RpcError),
19    #[error("Channel error")]
20    ChannelError(String),
21    // #[error("Channel error")]
22    // ChannelError(String),
23}
24
25impl From<Error> for TerminalError {
26    fn from(e: Error) -> TerminalError {
27        TerminalError::String(e.to_string())
28    }
29}
30
31impl<T> From<ChannelError<T>> for Error {
32    fn from(e: ChannelError<T>) -> Error {
33        Error::ChannelError(e.to_string())
34    }
35}