mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
Add serde-bincode-compat for receipt (#14399)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
This commit is contained in:
@ -34,7 +34,7 @@ reth-engine-local.workspace = true
|
|||||||
reth-tasks.workspace = true
|
reth-tasks.workspace = true
|
||||||
|
|
||||||
# currently need to enable this for workspace level
|
# currently need to enable this for workspace level
|
||||||
reth-optimism-primitives = { workspace = true, features = ["arbitrary", "serde"] }
|
reth-optimism-primitives = { workspace = true, features = ["arbitrary", "serde", "serde-bincode-compat"] }
|
||||||
|
|
||||||
# rpc
|
# rpc
|
||||||
jsonrpsee.workspace = true
|
jsonrpsee.workspace = true
|
||||||
|
|||||||
@ -193,6 +193,15 @@ impl InMemorySize for Receipt {
|
|||||||
|
|
||||||
impl reth_primitives_traits::Receipt for Receipt {}
|
impl reth_primitives_traits::Receipt for Receipt {}
|
||||||
|
|
||||||
|
#[cfg(feature = "serde-bincode-compat")]
|
||||||
|
impl reth_primitives_traits::serde_bincode_compat::SerdeBincodeCompat for Receipt {
|
||||||
|
type BincodeRepr<'a> = Self;
|
||||||
|
|
||||||
|
fn as_repr(&self) -> Self::BincodeRepr<'_> {
|
||||||
|
self.clone()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|||||||
@ -211,6 +211,15 @@ impl InMemorySize for OpReceipt {
|
|||||||
|
|
||||||
impl reth_primitives_traits::Receipt for OpReceipt {}
|
impl reth_primitives_traits::Receipt for OpReceipt {}
|
||||||
|
|
||||||
|
#[cfg(feature = "serde-bincode-compat")]
|
||||||
|
impl reth_primitives_traits::serde_bincode_compat::SerdeBincodeCompat for OpReceipt {
|
||||||
|
type BincodeRepr<'a> = Self;
|
||||||
|
|
||||||
|
fn as_repr(&self) -> Self::BincodeRepr<'_> {
|
||||||
|
self.clone()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// Trait for deposit receipt.
|
/// Trait for deposit receipt.
|
||||||
pub trait DepositReceipt: reth_primitives_traits::Receipt {
|
pub trait DepositReceipt: reth_primitives_traits::Receipt {
|
||||||
/// Returns deposit receipt if it is a deposit transaction.
|
/// Returns deposit receipt if it is a deposit transaction.
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
//! Receipt abstraction
|
//! Receipt abstraction
|
||||||
|
|
||||||
use crate::{InMemorySize, MaybeCompact, MaybeSerde};
|
use crate::{InMemorySize, MaybeCompact, MaybeSerde, MaybeSerdeBincodeCompat};
|
||||||
use alloc::vec::Vec;
|
use alloc::vec::Vec;
|
||||||
use alloy_consensus::{
|
use alloy_consensus::{
|
||||||
Eip2718EncodableReceipt, RlpDecodableReceipt, RlpEncodableReceipt, TxReceipt, Typed2718,
|
Eip2718EncodableReceipt, RlpDecodableReceipt, RlpEncodableReceipt, TxReceipt, Typed2718,
|
||||||
@ -27,6 +27,7 @@ pub trait Receipt:
|
|||||||
+ Typed2718
|
+ Typed2718
|
||||||
+ MaybeSerde
|
+ MaybeSerde
|
||||||
+ InMemorySize
|
+ InMemorySize
|
||||||
|
+ MaybeSerdeBincodeCompat
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user