Skip to content

Commit 4426fe6

Browse files
committed
crc: error shortcut + thiserror, #6250
1 parent 6e4d6f5 commit 4426fe6

File tree

1 file changed

+10
-25
lines changed
  • stacks-node/src/burnchains/rpc/bitcoin_rpc_client

1 file changed

+10
-25
lines changed

stacks-node/src/burnchains/rpc/bitcoin_rpc_client/mod.rs

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ use stacks::types::chainstate::BurnchainHeaderHash;
3434
use stacks::util::hash::hex_bytes;
3535
use stacks_common::deps_common::bitcoin::blockdata::script::Script;
3636
use stacks_common::deps_common::bitcoin::blockdata::transaction::Transaction;
37-
use stacks_common::deps_common::bitcoin::network::serialize::serialize_hex;
37+
use stacks_common::deps_common::bitcoin::network::serialize::{
38+
serialize_hex, Error as bitcoin_serialize_error,
39+
};
3840

3941
use crate::burnchains::rpc::rpc_transport::{RpcAuth, RpcError, RpcTransport};
4042

@@ -326,34 +328,17 @@ pub struct BitcoinRpcClient {
326328
}
327329

328330
/// Represents errors that can occur when using [`BitcoinRpcClient`].
329-
#[derive(Debug)]
331+
#[derive(Debug, thiserror::Error)]
330332
pub enum BitcoinRpcClientError {
331333
// RPC Transport errors
332-
Rpc(RpcError),
334+
#[error("Rcp error: {0}")]
335+
Rpc(#[from] RpcError),
333336
// JSON serialization errors
334-
Serialization(serde_json::Error),
337+
#[error("Serialization error: {0}")]
338+
Serialization(#[from] serde_json::Error),
335339
// Bitcoin serialization errors
336-
BitcoinSerialization(stacks_common::deps_common::bitcoin::network::serialize::Error),
337-
}
338-
339-
impl From<RpcError> for BitcoinRpcClientError {
340-
fn from(err: RpcError) -> Self {
341-
BitcoinRpcClientError::Rpc(err)
342-
}
343-
}
344-
345-
impl From<serde_json::Error> for BitcoinRpcClientError {
346-
fn from(err: serde_json::Error) -> Self {
347-
BitcoinRpcClientError::Serialization(err)
348-
}
349-
}
350-
351-
impl From<stacks_common::deps_common::bitcoin::network::serialize::Error>
352-
for BitcoinRpcClientError
353-
{
354-
fn from(err: stacks_common::deps_common::bitcoin::network::serialize::Error) -> Self {
355-
BitcoinRpcClientError::BitcoinSerialization(err)
356-
}
340+
#[error("Bitcoin Serialization error: {0}")]
341+
BitcoinSerialization(#[from] bitcoin_serialize_error),
357342
}
358343

359344
/// Alias for results returned from client operations.

0 commit comments

Comments
 (0)