nakamoto_wallet/
error.rs

1use std::io;
2
3use nakamoto_client::handle;
4use thiserror::Error;
5
6use crate::{
7    input,
8    wallet::{db, hw, ui},
9};
10
11/// An error occuring in the wallet.
12#[derive(Error, Debug)]
13pub enum Error {
14    #[error("client handle error: {0}")]
15    Handle(#[from] handle::Error),
16    #[error("client error: {0}")]
17    Client(#[from] nakamoto_client::Error),
18    #[error("i/o error: {0}")]
19    Io(#[from] io::Error),
20    #[error("input error: {0}")]
21    Input(#[from] input::Error),
22    #[error("ui error: {0}")]
23    Ui(#[from] ui::Error),
24    #[error("channel error: {0}")]
25    Channel(#[from] crossbeam_channel::RecvError),
26    #[error(transparent)]
27    Db(#[from] db::Error),
28    #[error(transparent)]
29    Hw(#[from] hw::Error),
30}