walletconnect_sdk/
error.rs1use crate::types::JsonRpcError;
6
7pub type Result<T, E = Error> = core::result::Result<T, E>;
8
9#[derive(Debug)]
10pub enum Error {
11 RelayProtocolNotMentioned,
12 InvalidUri,
13 SymKeyNotMentioned,
14 PathEndNotFound,
15 EmptyParams,
16 PairingNotApproved,
17 MethodIsNone(String),
18 InvalidIrnTag(u16),
19 ParseInt(std::num::ParseIntError),
20 JsonRpc(JsonRpcError),
21 Anyhow(anyhow::Error),
22 Reqwest(reqwest::Error),
23 InternalError(String),
24 InternalError2(&'static str),
25 InternalError3(&'static str, String),
26 SerdePlainError(serde_plain::Error),
27 SerdeJsonError(serde_json::Error),
28 FromHexError(alloy::hex::FromHexError),
30 AesError(aes_gcm::Error),
31 FromUtf8Error(std::string::FromUtf8Error),
32 FmtError(std::fmt::Error),
33 SignatureError(alloy::primitives::SignatureError),
34 TimeError(time::error::Format),
35 SystemTimeError(std::time::SystemTimeError),
36}
37
38impl From<&'static str> for Error {
39 fn from(e: &'static str) -> Self {
40 Error::InternalError2(e)
41 }
42}
43
44impl From<String> for Error {
45 fn from(e: String) -> Self {
46 Error::InternalError(e)
47 }
48}
49
50impl From<std::num::ParseIntError> for Error {
51 fn from(e: std::num::ParseIntError) -> Self {
52 Error::ParseInt(e)
53 }
54}
55
56impl From<JsonRpcError> for Error {
57 fn from(e: JsonRpcError) -> Self {
58 Error::JsonRpc(e)
59 }
60}
61
62impl From<anyhow::Error> for Error {
63 fn from(e: anyhow::Error) -> Self {
64 Error::Anyhow(e)
65 }
66}
67
68impl From<reqwest::Error> for Error {
69 fn from(e: reqwest::Error) -> Self {
70 Error::Reqwest(e)
71 }
72}
73
74impl From<serde_plain::Error> for Error {
75 fn from(e: serde_plain::Error) -> Self {
76 Error::SerdePlainError(e)
77 }
78}
79
80impl From<serde_json::Error> for Error {
81 fn from(e: serde_json::Error) -> Self {
82 Error::SerdeJsonError(e)
83 }
84}
85
86impl From<alloy::hex::FromHexError> for Error {
87 fn from(e: alloy::hex::FromHexError) -> Self {
88 Error::FromHexError(e)
89 }
90}
91
92impl From<aes_gcm::Error> for Error {
93 fn from(e: aes_gcm::Error) -> Self {
94 Error::AesError(e)
95 }
96}
97
98impl From<std::string::FromUtf8Error> for Error {
99 fn from(e: std::string::FromUtf8Error) -> Self {
100 Error::FromUtf8Error(e)
101 }
102}
103
104impl From<std::fmt::Error> for Error {
105 fn from(e: std::fmt::Error) -> Self {
106 Error::FmtError(e)
107 }
108}
109
110impl From<alloy::primitives::SignatureError> for Error {
111 fn from(e: alloy::primitives::SignatureError) -> Self {
112 Error::SignatureError(e)
113 }
114}
115
116impl From<time::error::Format> for Error {
117 fn from(e: time::error::Format) -> Self {
118 Error::TimeError(e)
119 }
120}
121
122impl From<std::time::SystemTimeError> for Error {
123 fn from(e: std::time::SystemTimeError) -> Self {
124 Error::SystemTimeError(e)
125 }
126}