reth_codecs/alloy/
mod.rs

1//! Implements Compact for alloy types.
2
3/// Will make it a pub mod if test-utils is enabled
4macro_rules! cond_mod {
5    ($($mod_name:ident),*) => {
6        $(
7            #[cfg(feature = "test-utils")]
8            pub mod $mod_name;
9            #[cfg(not(feature = "test-utils"))]
10            pub(crate) mod $mod_name;
11        )*
12    };
13}
14
15cond_mod!(
16    access_list,
17    authorization_list,
18    genesis_account,
19    header,
20    log,
21    signature,
22    trie,
23    txkind,
24    withdrawal
25);
26
27pub mod transaction;
28
29#[cfg(test)]
30mod tests {
31    use crate::{
32        alloy::{
33            genesis_account::{GenesisAccount, GenesisAccountRef, StorageEntries, StorageEntry},
34            header::{Header, HeaderExt},
35            transaction::{
36                eip1559::TxEip1559, eip2930::TxEip2930, eip4844::TxEip4844, eip7702::TxEip7702,
37                legacy::TxLegacy,
38            },
39            withdrawal::Withdrawal,
40        },
41        test_utils::UnusedBits,
42        validate_bitflag_backwards_compat,
43    };
44
45    #[test]
46    fn validate_bitflag_backwards_compat() {
47        // In case of failure, refer to the documentation of the
48        // [`validate_bitflag_backwards_compat`] macro for detailed instructions on handling
49        // it.
50        validate_bitflag_backwards_compat!(Header, UnusedBits::Zero);
51        validate_bitflag_backwards_compat!(HeaderExt, UnusedBits::NotZero);
52        validate_bitflag_backwards_compat!(TxEip2930, UnusedBits::Zero);
53        validate_bitflag_backwards_compat!(StorageEntries, UnusedBits::Zero);
54        validate_bitflag_backwards_compat!(StorageEntry, UnusedBits::Zero);
55
56        validate_bitflag_backwards_compat!(GenesisAccountRef<'_>, UnusedBits::NotZero);
57        validate_bitflag_backwards_compat!(GenesisAccount, UnusedBits::NotZero);
58        validate_bitflag_backwards_compat!(TxEip1559, UnusedBits::NotZero);
59        validate_bitflag_backwards_compat!(TxEip4844, UnusedBits::NotZero);
60        validate_bitflag_backwards_compat!(TxEip7702, UnusedBits::NotZero);
61        validate_bitflag_backwards_compat!(TxLegacy, UnusedBits::NotZero);
62        validate_bitflag_backwards_compat!(Withdrawal, UnusedBits::NotZero);
63    }
64}