terra_rust_cli/
errors.rs

1#![allow(missing_docs)]
2
3use std::num::{ParseFloatError, ParseIntError};
4use terra_rust_api::errors::TerraRustAPIError;
5use terra_rust_wallet::errors::TerraRustWalletError;
6use thiserror::Error;
7
8#[derive(Error, Debug)]
9pub enum TerraRustCLIError {
10    #[error("Bad Implementation. Missing CLI Argument {0}")]
11    MissingArgument(String),
12    #[error("IO Error")]
13    IOErr(#[from] ::std::io::Error),
14    #[error("Number Float Error")]
15    NumberFloatErr(#[from] ParseFloatError),
16    #[error("Number Int Error")]
17    NumberIntErr(#[from] ParseIntError),
18    #[error(transparent)]
19    TerraRustAPIError(#[from] TerraRustAPIError),
20    #[error(transparent)]
21    TerraRustWalletError(#[from] TerraRustWalletError),
22    #[error(transparent)]
23    SerdeJson(#[from] ::serde_json::Error),
24    #[error(transparent)]
25    Regex(#[from] ::regex::Error),
26    #[error("missing environment variable {0}")]
27    MissingEnv(String),
28}