1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
use crate::SignatureErrors;
use hex::FromHexError;
use snafu::*;

#[derive(Debug, Snafu)]
pub enum PrivateKeyErrors {
    #[snafu(display("Could not decode Base58 string: {} {}", string, error))]
    Base58Decode {
      error: anyhow::Error,
      string: String
    },
    
    #[snafu(display("Could not parse hex: {}", error))]
    ParseHex {
      error: FromHexError
    },

    #[snafu(display("Could not parse hex: {}", error))]
    ByteDecode{
      error: anyhow::Error
    },

    #[snafu(display("Invalid Point: {}", error))]
    InvalidPoint {
      error: elliptic_curve::Error
    },

    #[snafu(display("Could not generate secret key: {}", error))]
    SecretKey {
      error: anyhow::Error
    },

    SignatureError {
      error: anyhow::Error
    },

    #[snafu(display("Something went wrong: {}", message))]
    Other{
      message: String
    }
}