primitive: introduce reth Transaction trait (#11728)

This commit is contained in:
Thomas Coratger
2024-10-15 10:02:00 +02:00
committed by GitHub
parent 0dbc374639
commit cf38ff5401
2 changed files with 29 additions and 0 deletions

View File

@@ -23,6 +23,9 @@ pub use account::{Account, Bytecode};
pub mod receipt;
pub use receipt::Receipt;
pub mod transaction;
pub use transaction::Transaction;
mod integer_list;
pub use integer_list::{IntegerList, IntegerListError};

View File

@@ -0,0 +1,26 @@
//! Transaction abstraction
use alloc::fmt;
use reth_codecs::Compact;
use serde::{Deserialize, Serialize};
/// Helper trait that unifies all behaviour required by transaction to support full node operations.
pub trait FullTransaction: Transaction + Compact {}
impl<T> FullTransaction for T where T: Transaction + Compact {}
/// Abstraction of a transaction.
pub trait Transaction:
alloy_consensus::Transaction
+ Clone
+ fmt::Debug
+ PartialEq
+ Eq
+ Default
+ alloy_rlp::Encodable
+ alloy_rlp::Decodable
+ Serialize
+ for<'de> Deserialize<'de>
{
}