1use thiserror::Error as ThisError;
5
6#[allow(missing_docs)]
8#[derive(Debug, ThisError)]
9pub enum Error {
10 #[error("[subcryptor] {0:?}")]
11 ArrayBytes(array_bytes::Error),
12 #[error(transparent)]
13 Base64Decode(#[from] base64::DecodeError),
14 #[error(transparent)]
15 CryptoSecretBox(#[from] CryptoSecretBox),
16 #[error("[subcryptor] from base58 error, {0:?}")]
17 FromBase58(base58::FromBase58Error),
18 #[error("[subcryptor] invalid prefix, {0:?}")]
19 InvalidPrefix(u8),
20 #[error("[subcryptor] invalid ss58 address, {0:?}")]
21 InvalidSs58Address(String),
22 #[error(transparent)]
23 Scrypt(#[from] scrypt::errors::InvalidOutputLen),
24 #[error("[subcryptor] unsupported encryption type")]
25 UnsupportedEncryptionType,
26 #[error("[subcryptor] unsupported network, {0:?}")]
27 UnsupportedNetwork(String),
28}
29
30#[allow(missing_docs)]
32#[derive(Debug, ThisError)]
33pub enum CryptoSecretBox {
34 #[error("[subcryptor] crypto secretbox general error, {0:?}")]
35 General(crypto_secretbox::Error),
36 #[error("[subcryptor] crypto secretbox cipher error, {0:?}")]
37 Cipher(crypto_secretbox::cipher::InvalidLength),
38}