@@ -9,10 +9,20 @@ namespace eosio { namespace chain {
9
9
10
10
enum transaction_extension_id {
11
11
deferred_transaction_generation_context_id = 0 ,
12
- resource_payer_id,
12
+ reserved_tx_ext_id_1 = 1 ,
13
+ reserved_tx_ext_id_2 = 2 ,
14
+ reserved_tx_ext_id_3 = 3 ,
15
+ reserved_tx_ext_id_4 = 4 ,
16
+ reserved_tx_ext_id_5 = 5 ,
17
+ reserved_tx_ext_id_6 = 6 ,
18
+ reserved_tx_ext_id_7 = 7 ,
19
+ reserved_tx_ext_id_8 = 8 ,
20
+ reserved_tx_ext_id_9 = 9 ,
21
+ infrablockchain_transaction_fee_payer_tx_ext_id = 10 ,
22
+ infrablockchain_transaction_vote_tx_ext_id = 11 ,
13
23
TRANSACTION_EXTENSION_ID_COUNT,
14
24
15
- // @see infrablockchain:: chain::transaction_extension_id for additional tx exts for InfraBlockchain
25
+ // @see infrablockchain/ chain/transaction_extensions.hpp for additional tx exts for InfraBlockchain
16
26
};
17
27
18
28
struct deferred_transaction_generation_context : fc::reflect_init {
@@ -34,6 +44,27 @@ namespace eosio { namespace chain {
34
44
account_name sender;
35
45
};
36
46
47
+ #define RESERVED_DUMMY_TX_EXT_CONTEXT (num ) \
48
+ struct reserved_dummy_transaction_extension_context_ ##num : fc::reflect_init { \
49
+ static constexpr uint16_t extension_id () { return transaction_extension_id::reserved_tx_ext_id_##num; } \
50
+ static constexpr bool enforce_unique () { return true ; } \
51
+ reserved_dummy_transaction_extension_context_##num() = default ; \
52
+ reserved_dummy_transaction_extension_context_##num( uint64_t dummy ) \
53
+ :dummy( dummy ) {} \
54
+ void reflector_init () {} \
55
+ uint64_t dummy; \
56
+ };
57
+
58
+ RESERVED_DUMMY_TX_EXT_CONTEXT (1 )
59
+ RESERVED_DUMMY_TX_EXT_CONTEXT (2 )
60
+ RESERVED_DUMMY_TX_EXT_CONTEXT (3 )
61
+ RESERVED_DUMMY_TX_EXT_CONTEXT (4 )
62
+ RESERVED_DUMMY_TX_EXT_CONTEXT (5 )
63
+ RESERVED_DUMMY_TX_EXT_CONTEXT (6 )
64
+ RESERVED_DUMMY_TX_EXT_CONTEXT (7 )
65
+ RESERVED_DUMMY_TX_EXT_CONTEXT (8 )
66
+ RESERVED_DUMMY_TX_EXT_CONTEXT (9 )
67
+
37
68
namespace detail {
38
69
template <typename ... Ts>
39
70
struct transaction_extension_types {
@@ -43,9 +74,18 @@ namespace eosio { namespace chain {
43
74
}
44
75
45
76
using transaction_extension_types = detail::transaction_extension_types<
46
- deferred_transaction_generation_context,
47
- infrablockchain::chain::transaction_fee_payer_tx_ext,
48
- infrablockchain::chain::transaction_vote_tx_ext
77
+ deferred_transaction_generation_context, // 0
78
+ reserved_dummy_transaction_extension_context_1, // 1
79
+ reserved_dummy_transaction_extension_context_2, // 2
80
+ reserved_dummy_transaction_extension_context_3, // 3
81
+ reserved_dummy_transaction_extension_context_4, // 4
82
+ reserved_dummy_transaction_extension_context_5, // 5
83
+ reserved_dummy_transaction_extension_context_6, // 6
84
+ reserved_dummy_transaction_extension_context_7, // 7
85
+ reserved_dummy_transaction_extension_context_8, // 8
86
+ reserved_dummy_transaction_extension_context_9, // 9
87
+ infrablockchain::chain::transaction_fee_payer_tx_ext, // 10
88
+ infrablockchain::chain::transaction_vote_tx_ext // 11
49
89
>;
50
90
51
91
using transaction_extension = transaction_extension_types::transaction_extension_t ;
@@ -364,6 +404,15 @@ namespace eosio { namespace chain {
364
404
} } // / namespace eosio::chain
365
405
366
406
FC_REFLECT (eosio::chain::deferred_transaction_generation_context, (sender_trx_id)(sender_id)(sender) )
407
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_1, (dummy) )
408
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_2, (dummy) )
409
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_3, (dummy) )
410
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_4, (dummy) )
411
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_5, (dummy) )
412
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_6, (dummy) )
413
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_7, (dummy) )
414
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_8, (dummy) )
415
+ FC_REFLECT(eosio::chain::reserved_dummy_transaction_extension_context_9, (dummy) )
367
416
FC_REFLECT( eosio::chain::transaction_header, (expiration)(ref_block_num)(ref_block_prefix)
368
417
(max_net_usage_words)(max_cpu_usage_ms)(delay_sec) )
369
418
FC_REFLECT_DERIVED( eosio::chain::transaction, (eosio::chain::transaction_header), (context_free_actions)(actions)(transaction_extensions) )
0 commit comments