Skip to content

Commit bbb5446

Browse files
authored
Add support to DecodeWithMemTracking (#62)
* Use DecodeWithMemTracking for Log * Use DecodeWithMemTracking for TransactionV2 * Use DecodeWithMemTracking for EIP1559Transaction * Use DecodeWithMemTracking for EIP2930Transaction * Use DecodeWithMemTracking for LegacyTransaction * Use DecodeWithMemTracking for TransactionSignature * Use DecodeWithMemTracking for TransactionAction * Use DecodeWithMemTracking for AccessListItem * Use DecodeWithMemTracking for TransactionRecoveryId * Fix DecodeWithMemTracking impl
1 parent 3be0d8f commit bbb5446

File tree

5 files changed

+52
-9
lines changed

5 files changed

+52
-9
lines changed

src/log.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,12 @@ use crate::Bytes;
88
#[derive(rlp::RlpEncodable, rlp::RlpDecodable)]
99
#[cfg_attr(
1010
feature = "with-scale",
11-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
11+
derive(
12+
scale_codec::Encode,
13+
scale_codec::Decode,
14+
scale_codec::DecodeWithMemTracking,
15+
scale_info::TypeInfo
16+
)
1217
)]
1318
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
1419
pub struct Log {

src/transaction/eip1559.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,12 @@ use crate::{
1010
#[derive(Clone, Debug, PartialEq, Eq)]
1111
#[cfg_attr(
1212
feature = "with-scale",
13-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
13+
derive(
14+
scale_codec::Encode,
15+
scale_codec::Decode,
16+
scale_codec::DecodeWithMemTracking,
17+
scale_info::TypeInfo
18+
)
1419
)]
1520
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
1621
pub struct EIP1559Transaction {

src/transaction/eip2930.rs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@ use crate::{transaction::TransactionAction, Bytes};
99
#[derive(Clone, Debug, PartialEq, Eq)]
1010
#[cfg_attr(
1111
feature = "with-scale",
12-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
12+
derive(
13+
scale_codec::Encode,
14+
scale_codec::Decode,
15+
scale_codec::DecodeWithMemTracking,
16+
scale_info::TypeInfo
17+
)
1318
)]
1419
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
1520
pub struct AccessListItem {
@@ -39,7 +44,12 @@ pub type AccessList = Vec<AccessListItem>;
3944
#[derive(Clone, Debug, PartialEq, Eq)]
4045
#[cfg_attr(
4146
feature = "with-scale",
42-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
47+
derive(
48+
scale_codec::Encode,
49+
scale_codec::Decode,
50+
scale_codec::DecodeWithMemTracking,
51+
scale_info::TypeInfo
52+
)
4353
)]
4454
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
4555
pub struct EIP2930Transaction {

src/transaction/legacy.rs

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@ use crate::Bytes;
99
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
1010
#[cfg_attr(
1111
feature = "with-scale",
12-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
12+
derive(
13+
scale_codec::Encode,
14+
scale_codec::Decode,
15+
scale_codec::DecodeWithMemTracking,
16+
scale_info::TypeInfo
17+
)
1318
)]
1419
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
1520
pub enum TransactionAction {
@@ -45,7 +50,12 @@ impl rlp::Decodable for TransactionAction {
4550
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
4651
#[cfg_attr(
4752
feature = "with-scale",
48-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
53+
derive(
54+
scale_codec::Encode,
55+
scale_codec::Decode,
56+
scale_codec::DecodeWithMemTracking,
57+
scale_info::TypeInfo
58+
)
4959
)]
5060
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
5161
pub struct TransactionRecoveryId(pub u64);
@@ -77,7 +87,10 @@ impl TransactionRecoveryId {
7787
}
7888

7989
#[derive(Clone, Debug, PartialEq, Eq)]
80-
#[cfg_attr(feature = "with-scale", derive(scale_info::TypeInfo))]
90+
#[cfg_attr(
91+
feature = "with-scale",
92+
derive(scale_info::TypeInfo, scale_codec::DecodeWithMemTracking)
93+
)]
8194
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
8295
pub struct TransactionSignature {
8396
v: TransactionRecoveryId,
@@ -171,7 +184,12 @@ impl scale_codec::Decode for TransactionSignature {
171184
#[derive(Clone, Debug, PartialEq, Eq)]
172185
#[cfg_attr(
173186
feature = "with-scale",
174-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
187+
derive(
188+
scale_codec::Encode,
189+
scale_codec::Decode,
190+
scale_codec::DecodeWithMemTracking,
191+
scale_info::TypeInfo
192+
)
175193
)]
176194
#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))]
177195
pub struct LegacyTransaction {

src/transaction/mod.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,12 @@ impl EnvelopedDecodable for TransactionV1 {
105105
#[derive(Clone, Debug, PartialEq, Eq)]
106106
#[cfg_attr(
107107
feature = "with-scale",
108-
derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo)
108+
derive(
109+
scale_codec::Encode,
110+
scale_codec::Decode,
111+
scale_codec::DecodeWithMemTracking,
112+
scale_info::TypeInfo
113+
)
109114
)]
110115
#[cfg_attr(
111116
feature = "with-serde",

0 commit comments

Comments
 (0)