miden_client/rpc/errors/node/block.rs
1use alloc::string::String;
2
3use thiserror::Error;
4
5// GET BLOCK HEADER ERROR
6// ================================================================================================
7
8// Error codes match `internal_error` in `miden-node/crates/rpc/src/server/api/error_codes.rs`. The
9// node has no method-specific codes for this endpoint.
10#[derive(Debug, Clone, PartialEq, Eq, Error)]
11pub enum GetBlockHeaderError {
12 /// Internal server error (code 0)
13 #[error("internal server error")]
14 Internal,
15 /// Error code not recognized by this client version. This can happen if the node is newer than
16 /// the client and has added new error variants.
17 #[error("unknown error code {code}: {message}")]
18 Unknown { code: u8, message: String },
19}
20
21impl GetBlockHeaderError {
22 pub fn from_code(code: u8, message: &str) -> Self {
23 match code {
24 0 => Self::Internal,
25 _ => Self::Unknown { code, message: String::from(message) },
26 }
27 }
28}
29
30// GET BLOCK BY NUMBER ERROR
31// ================================================================================================
32
33// Error codes match `internal_error` in `miden-node/crates/rpc/src/server/api/error_codes.rs`. The
34// node has no method-specific codes for this endpoint.
35#[derive(Debug, Clone, PartialEq, Eq, Error)]
36pub enum GetBlockByNumberError {
37 /// Internal server error (code 0)
38 #[error("internal server error")]
39 Internal,
40 /// Error code not recognized by this client version. This can happen if the node is newer than
41 /// the client and has added new error variants.
42 #[error("unknown error code {code}: {message}")]
43 Unknown { code: u8, message: String },
44}
45
46impl GetBlockByNumberError {
47 pub fn from_code(code: u8, message: &str) -> Self {
48 match code {
49 0 => Self::Internal,
50 _ => Self::Unknown { code, message: String::from(message) },
51 }
52 }
53}