1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use thiserror::Error;
use wasm_bindgen::JsValue;

#[derive(Error, Debug)]
pub enum BigNumberError {
    #[error(transparent)]
    Std(#[from] std::num::ParseIntError),
    #[error(transparent)]
    PrimitiveUint(#[from] uint::FromStrRadixErr),
    #[error(transparent)]
    PrimitiveHash(#[from] rustc_hex::FromHexError),
}

impl From<BigNumberError> for JsValue {
    fn from(err: BigNumberError) -> Self {
        format!("{:?}", err).into()
    }
}