@@ -27,6 +27,7 @@ use alloy_eips::eip7594::{BlobTransactionSidecarEip7594, BlobTransactionSidecarV
2727#[ cfg_attr( any( test, feature = "arbitrary" ) , derive( arbitrary:: Arbitrary ) ) ]
2828#[ cfg_attr( feature = "serde" , derive( serde:: Serialize ) ) ]
2929#[ cfg_attr( feature = "serde" , serde( untagged) ) ]
30+ #[ cfg_attr( feature = "borsh" , derive( borsh:: BorshSerialize , borsh:: BorshDeserialize ) ) ]
3031#[ doc( alias = "Eip4844TransactionVariant" ) ]
3132pub enum TxEip4844Variant < T = BlobTransactionSidecar > {
3233 /// A standalone transaction with blob hashes and max blob fee.
@@ -514,6 +515,7 @@ where
514515#[ cfg_attr( any( test, feature = "arbitrary" ) , derive( arbitrary:: Arbitrary ) ) ]
515516#[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
516517#[ cfg_attr( feature = "serde" , serde( rename_all = "camelCase" ) ) ]
518+ #[ cfg_attr( feature = "borsh" , derive( borsh:: BorshSerialize , borsh:: BorshDeserialize ) ) ]
517519#[ doc( alias = "Eip4844Transaction" , alias = "TransactionEip4844" , alias = "Eip4844Tx" ) ]
518520pub struct TxEip4844 {
519521 /// Added as EIP-pub 155: Simple replay attack protection
@@ -566,6 +568,8 @@ pub struct TxEip4844 {
566568 /// and `accessed_storage_keys` global sets (introduced in EIP-2929).
567569 /// A gas cost is charged, though at a discount relative to the cost of
568570 /// accessing outside the list.
571+ #[ cfg_attr( feature = "borsh" , borsh( skip) ) ]
572+ // TODO: Implement Borsh for AccessList in alloy_eip2930
569573 pub access_list : AccessList ,
570574
571575 /// It contains a vector of fixed size hash(32 bytes)
@@ -834,6 +838,7 @@ impl<T> From<TxEip4844WithSidecar<T>> for TxEip4844 {
834838#[ cfg_attr( any( test, feature = "arbitrary" ) , derive( arbitrary:: Arbitrary ) ) ]
835839#[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
836840#[ cfg_attr( feature = "serde" , serde( rename_all = "camelCase" ) ) ]
841+ #[ cfg_attr( feature = "borsh" , derive( borsh:: BorshSerialize , borsh:: BorshDeserialize ) ) ]
837842#[ doc( alias = "Eip4844TransactionWithSidecar" , alias = "Eip4844TxWithSidecar" ) ]
838843pub struct TxEip4844WithSidecar < T = BlobTransactionSidecar > {
839844 /// The actual transaction.
0 commit comments