Line data Source code
1 : /* Automatically generated by fd_pb_gen.py. Do not edit. */
2 :
3 : #include "block.pb.h"
4 :
5 : static int
6 : fd_exec_test_cost_tracker_encode( fd_pb_encoder_t * enc,
7 1220 : void const * msg_ ) {
8 1220 : fd_exec_test_cost_tracker_t const * msg = msg_;
9 1220 : if( msg->block_cost && FD_UNLIKELY( !fd_pb_push_uint64( enc, 1U, msg->block_cost ) ) ) return 0;
10 1220 : return 1;
11 1220 : }
12 :
13 : static int
14 : fd_exec_test_cost_tracker_decode( fd_pb_inbuf_t * in,
15 : void * msg_,
16 610 : fd_spad_t * spad FD_PARAM_UNUSED ) {
17 610 : fd_exec_test_cost_tracker_t * msg = msg_;
18 1002 : while( fd_pb_inbuf_sz( in ) ) {
19 391 : fd_pb_tlv_t tlv[1];
20 391 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
21 391 : switch( tlv->field_id ) {
22 392 : case 1:
23 392 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->block_cost ) ) ) return 0;
24 392 : break;
25 392 : default:
26 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
27 0 : break;
28 391 : }
29 391 : }
30 611 : return 1;
31 610 : }
32 :
33 : fd_pb_msgdesc_t const fd_exec_test_cost_tracker_desc = {
34 : .encode = fd_exec_test_cost_tracker_encode,
35 : .decode = fd_exec_test_cost_tracker_decode
36 : };
37 :
38 : static int
39 : fd_exec_test_inflation_encode( fd_pb_encoder_t * enc,
40 0 : void const * msg_ ) {
41 0 : fd_exec_test_inflation_t const * msg = msg_;
42 0 : if( fd_pb_enc_nonzero( &msg->initial, sizeof(msg->initial) ) && FD_UNLIKELY( !fd_pb_push_double( enc, 1U, msg->initial ) ) ) return 0;
43 0 : if( fd_pb_enc_nonzero( &msg->terminal, sizeof(msg->terminal) ) && FD_UNLIKELY( !fd_pb_push_double( enc, 2U, msg->terminal ) ) ) return 0;
44 0 : if( fd_pb_enc_nonzero( &msg->taper, sizeof(msg->taper) ) && FD_UNLIKELY( !fd_pb_push_double( enc, 3U, msg->taper ) ) ) return 0;
45 0 : if( fd_pb_enc_nonzero( &msg->foundation, sizeof(msg->foundation) ) && FD_UNLIKELY( !fd_pb_push_double( enc, 4U, msg->foundation ) ) ) return 0;
46 0 : if( fd_pb_enc_nonzero( &msg->foundation_term, sizeof(msg->foundation_term) ) && FD_UNLIKELY( !fd_pb_push_double( enc, 5U, msg->foundation_term ) ) ) return 0;
47 0 : return 1;
48 0 : }
49 :
50 : static int
51 : fd_exec_test_inflation_decode( fd_pb_inbuf_t * in,
52 : void * msg_,
53 607 : fd_spad_t * spad FD_PARAM_UNUSED ) {
54 607 : fd_exec_test_inflation_t * msg = msg_;
55 3642 : while( fd_pb_inbuf_sz( in ) ) {
56 3033 : fd_pb_tlv_t tlv[1];
57 3033 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
58 3033 : switch( tlv->field_id ) {
59 608 : case 1:
60 608 : if( FD_UNLIKELY( !fd_pb_dec_double( tlv, &msg->initial ) ) ) return 0;
61 608 : break;
62 609 : case 2:
63 609 : if( FD_UNLIKELY( !fd_pb_dec_double( tlv, &msg->terminal ) ) ) return 0;
64 609 : break;
65 609 : case 3:
66 609 : if( FD_UNLIKELY( !fd_pb_dec_double( tlv, &msg->taper ) ) ) return 0;
67 609 : break;
68 609 : case 4:
69 609 : if( FD_UNLIKELY( !fd_pb_dec_double( tlv, &msg->foundation ) ) ) return 0;
70 609 : break;
71 609 : case 5:
72 609 : if( FD_UNLIKELY( !fd_pb_dec_double( tlv, &msg->foundation_term ) ) ) return 0;
73 609 : break;
74 609 : default:
75 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
76 0 : break;
77 3033 : }
78 3033 : }
79 609 : return 1;
80 607 : }
81 :
82 : fd_pb_msgdesc_t const fd_exec_test_inflation_desc = {
83 : .encode = fd_exec_test_inflation_encode,
84 : .decode = fd_exec_test_inflation_decode
85 : };
86 :
87 : static int
88 : fd_exec_test_epoch_credit_encode( fd_pb_encoder_t * enc,
89 0 : void const * msg_ ) {
90 0 : fd_exec_test_epoch_credit_t const * msg = msg_;
91 0 : if( msg->epoch && FD_UNLIKELY( !fd_pb_push_uint64( enc, 1U, msg->epoch ) ) ) return 0;
92 0 : if( msg->credits && FD_UNLIKELY( !fd_pb_push_uint64( enc, 2U, msg->credits ) ) ) return 0;
93 0 : if( msg->prev_credits && FD_UNLIKELY( !fd_pb_push_uint64( enc, 3U, msg->prev_credits ) ) ) return 0;
94 0 : return 1;
95 0 : }
96 :
97 : static int
98 : fd_exec_test_epoch_credit_decode( fd_pb_inbuf_t * in,
99 : void * msg_,
100 31816 : fd_spad_t * spad FD_PARAM_UNUSED ) {
101 31816 : fd_exec_test_epoch_credit_t * msg = msg_;
102 124767 : while( fd_pb_inbuf_sz( in ) ) {
103 93013 : fd_pb_tlv_t tlv[1];
104 93013 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
105 93013 : switch( tlv->field_id ) {
106 31497 : case 1:
107 31497 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->epoch ) ) ) return 0;
108 31497 : break;
109 31811 : case 2:
110 31811 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->credits ) ) ) return 0;
111 31811 : break;
112 31811 : case 3:
113 30180 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->prev_credits ) ) ) return 0;
114 30180 : break;
115 30180 : default:
116 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
117 0 : break;
118 93013 : }
119 93013 : }
120 31754 : return 1;
121 31816 : }
122 :
123 : fd_pb_msgdesc_t const fd_exec_test_epoch_credit_desc = {
124 : .encode = fd_exec_test_epoch_credit_encode,
125 : .decode = fd_exec_test_epoch_credit_decode
126 : };
127 :
128 : static int
129 : fd_exec_test_prev_vote_account_encode( fd_pb_encoder_t * enc,
130 0 : void const * msg_ ) {
131 0 : fd_exec_test_prev_vote_account_t const * msg = msg_;
132 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 1U, msg->address, 32UL ) ) ) return 0;
133 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 2U, msg->node_pubkey, 32UL ) ) ) return 0;
134 0 : if( msg->stake && FD_UNLIKELY( !fd_pb_push_uint64( enc, 3U, msg->stake ) ) ) return 0;
135 0 : if( msg->commission_bps && FD_UNLIKELY( !fd_pb_push_uint32( enc, 4U, msg->commission_bps ) ) ) return 0;
136 0 : for( ulong i=0UL; i<msg->epoch_credits_count; i++ ) {
137 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 5U, &fd_exec_test_epoch_credit_desc, &msg->epoch_credits[ i ] ) ) ) return 0;
138 0 : }
139 0 : if( msg->version && FD_UNLIKELY( !fd_pb_push_int64( enc, 6U, (long)msg->version ) ) ) return 0;
140 0 : if( FD_UNLIKELY( msg->inflation_rewards_collector.size>32U ) ) return 0;
141 0 : if( msg->inflation_rewards_collector.size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 7U, msg->inflation_rewards_collector.bytes, msg->inflation_rewards_collector.size ) ) ) return 0;
142 0 : if( FD_UNLIKELY( msg->block_revenue_collector.size>32U ) ) return 0;
143 0 : if( msg->block_revenue_collector.size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 8U, msg->block_revenue_collector.bytes, msg->block_revenue_collector.size ) ) ) return 0;
144 0 : if( msg->block_revenue_commission_bps && FD_UNLIKELY( !fd_pb_push_uint32( enc, 9U, msg->block_revenue_commission_bps ) ) ) return 0;
145 0 : if( msg->pending_delegator_rewards && FD_UNLIKELY( !fd_pb_push_uint64( enc, 10U, msg->pending_delegator_rewards ) ) ) return 0;
146 0 : return 1;
147 0 : }
148 :
149 : static int
150 : fd_exec_test_prev_vote_account_decode( fd_pb_inbuf_t * in,
151 : void * msg_,
152 2008 : fd_spad_t * spad ) {
153 2008 : fd_exec_test_prev_vote_account_t * msg = msg_;
154 43273 : while( fd_pb_inbuf_sz( in ) ) {
155 41272 : fd_pb_tlv_t tlv[1];
156 41272 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
157 41272 : switch( tlv->field_id ) {
158 2010 : case 1:
159 2010 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->address, 32UL ) ) ) return 0;
160 2010 : break;
161 2011 : case 2:
162 2011 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->node_pubkey, 32UL ) ) ) return 0;
163 2011 : break;
164 2011 : case 3:
165 2011 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->stake ) ) ) return 0;
166 2011 : break;
167 2011 : case 4:
168 1991 : if( FD_UNLIKELY( !fd_pb_dec_uint32( tlv, &msg->commission_bps ) ) ) return 0;
169 1991 : break;
170 31860 : case 5:
171 31860 : {
172 31860 : void * ele = fd_pb_dec_grow( spad, &msg->epoch_credits, &msg->epoch_credits_count, alignof(fd_exec_test_epoch_credit_t), sizeof(fd_exec_test_epoch_credit_t) );
173 31860 : if( FD_UNLIKELY( !ele ) ) return 0;
174 31860 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_epoch_credit_desc, ele ) ) ) return 0;
175 31860 : }
176 31860 : break;
177 31860 : case 6:
178 1417 : if( FD_UNLIKELY( !fd_pb_dec_int32( tlv, (int *)&msg->version ) ) ) return 0;
179 1417 : break;
180 1417 : case 7:
181 48 : if( FD_UNLIKELY( !fd_pb_dec_bytes_static( in, tlv, msg->inflation_rewards_collector.bytes, &msg->inflation_rewards_collector.size, 32UL ) ) ) return 0;
182 48 : break;
183 48 : case 8:
184 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_static( in, tlv, msg->block_revenue_collector.bytes, &msg->block_revenue_collector.size, 32UL ) ) ) return 0;
185 0 : break;
186 0 : case 9:
187 0 : if( FD_UNLIKELY( !fd_pb_dec_uint32( tlv, &msg->block_revenue_commission_bps ) ) ) return 0;
188 0 : break;
189 0 : case 10:
190 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->pending_delegator_rewards ) ) ) return 0;
191 0 : break;
192 0 : default:
193 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
194 0 : break;
195 41272 : }
196 41272 : }
197 2001 : return 1;
198 2008 : }
199 :
200 : fd_pb_msgdesc_t const fd_exec_test_prev_vote_account_desc = {
201 : .encode = fd_exec_test_prev_vote_account_encode,
202 : .decode = fd_exec_test_prev_vote_account_decode
203 : };
204 :
205 : static int
206 : fd_exec_test_block_bank_encode( fd_pb_encoder_t * enc,
207 0 : void const * msg_ ) {
208 0 : fd_exec_test_block_bank_t const * msg = msg_;
209 0 : for( ulong i=0UL; i<msg->blockhash_queue_count; i++ ) {
210 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_blockhash_queue_entry_desc, &msg->blockhash_queue[ i ] ) ) ) return 0;
211 0 : }
212 0 : if( msg->rbh_lamports_per_signature && FD_UNLIKELY( !fd_pb_push_uint32( enc, 2U, msg->rbh_lamports_per_signature ) ) ) return 0;
213 0 : if( msg->has_fee_rate_governor && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_fee_rate_governor_desc, &msg->fee_rate_governor ) ) ) return 0;
214 0 : if( msg->slot && FD_UNLIKELY( !fd_pb_push_uint64( enc, 4U, msg->slot ) ) ) return 0;
215 0 : if( msg->parent_slot && FD_UNLIKELY( !fd_pb_push_uint64( enc, 5U, msg->parent_slot ) ) ) return 0;
216 0 : if( msg->capitalization && FD_UNLIKELY( !fd_pb_push_uint64( enc, 6U, msg->capitalization ) ) ) return 0;
217 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 7U, msg->ns_per_slot, 16UL ) ) ) return 0;
218 0 : if( msg->has_inflation && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 8U, &fd_exec_test_inflation_desc, &msg->inflation ) ) ) return 0;
219 0 : if( msg->block_height && FD_UNLIKELY( !fd_pb_push_uint64( enc, 9U, msg->block_height ) ) ) return 0;
220 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 10U, msg->poh, 32UL ) ) ) return 0;
221 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 11U, msg->parent_bank_hash, 32UL ) ) ) return 0;
222 0 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 12U, msg->parent_lt_hash, 2048UL ) ) ) return 0;
223 0 : if( msg->parent_signature_count && FD_UNLIKELY( !fd_pb_push_uint64( enc, 13U, msg->parent_signature_count ) ) ) return 0;
224 0 : if( msg->has_features && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 16U, &fd_exec_test_feature_set_desc, &msg->features ) ) ) return 0;
225 0 : for( ulong i=0UL; i<msg->vote_accounts_t_1_count; i++ ) {
226 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 17U, &fd_exec_test_prev_vote_account_desc, &msg->vote_accounts_t_1[ i ] ) ) ) return 0;
227 0 : }
228 0 : for( ulong i=0UL; i<msg->vote_accounts_t_2_count; i++ ) {
229 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 18U, &fd_exec_test_prev_vote_account_desc, &msg->vote_accounts_t_2[ i ] ) ) ) return 0;
230 0 : }
231 0 : return 1;
232 0 : }
233 :
234 : static int
235 : fd_exec_test_block_bank_decode( fd_pb_inbuf_t * in,
236 : void * msg_,
237 611 : fd_spad_t * spad ) {
238 611 : fd_exec_test_block_bank_t * msg = msg_;
239 186286 : while( fd_pb_inbuf_sz( in ) ) {
240 186065 : fd_pb_tlv_t tlv[1];
241 186065 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
242 186065 : switch( tlv->field_id ) {
243 175321 : case 1:
244 175321 : {
245 175321 : void * ele = fd_pb_dec_grow( spad, &msg->blockhash_queue, &msg->blockhash_queue_count, alignof(fd_exec_test_blockhash_queue_entry_t), sizeof(fd_exec_test_blockhash_queue_entry_t) );
246 175321 : if( FD_UNLIKELY( !ele ) ) return 0;
247 175321 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_blockhash_queue_entry_desc, ele ) ) ) return 0;
248 175321 : }
249 175321 : break;
250 175321 : case 2:
251 610 : if( FD_UNLIKELY( !fd_pb_dec_uint32( tlv, &msg->rbh_lamports_per_signature ) ) ) return 0;
252 610 : break;
253 610 : case 3:
254 610 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_fee_rate_governor_desc, &msg->fee_rate_governor ) ) ) return 0;
255 610 : msg->has_fee_rate_governor = 1;
256 610 : break;
257 610 : case 4:
258 610 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->slot ) ) ) return 0;
259 610 : break;
260 610 : case 5:
261 592 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->parent_slot ) ) ) return 0;
262 592 : break;
263 606 : case 6:
264 606 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->capitalization ) ) ) return 0;
265 606 : break;
266 610 : case 7:
267 610 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->ns_per_slot, 16UL ) ) ) return 0;
268 610 : break;
269 610 : case 8:
270 609 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_inflation_desc, &msg->inflation ) ) ) return 0;
271 609 : msg->has_inflation = 1;
272 609 : break;
273 592 : case 9:
274 592 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->block_height ) ) ) return 0;
275 592 : break;
276 610 : case 10:
277 610 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->poh, 32UL ) ) ) return 0;
278 610 : break;
279 611 : case 11:
280 611 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->parent_bank_hash, 32UL ) ) ) return 0;
281 611 : break;
282 611 : case 12:
283 611 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->parent_lt_hash, 2048UL ) ) ) return 0;
284 611 : break;
285 611 : case 13:
286 610 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->parent_signature_count ) ) ) return 0;
287 610 : break;
288 611 : case 16:
289 611 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_feature_set_desc, &msg->features ) ) ) return 0;
290 611 : msg->has_features = 1;
291 611 : break;
292 1023 : case 17:
293 1023 : {
294 1023 : void * ele = fd_pb_dec_grow( spad, &msg->vote_accounts_t_1, &msg->vote_accounts_t_1_count, alignof(fd_exec_test_prev_vote_account_t), sizeof(fd_exec_test_prev_vote_account_t) );
295 1023 : if( FD_UNLIKELY( !ele ) ) return 0;
296 1023 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_prev_vote_account_desc, ele ) ) ) return 0;
297 1023 : }
298 1023 : break;
299 1023 : case 18:
300 993 : {
301 993 : void * ele = fd_pb_dec_grow( spad, &msg->vote_accounts_t_2, &msg->vote_accounts_t_2_count, alignof(fd_exec_test_prev_vote_account_t), sizeof(fd_exec_test_prev_vote_account_t) );
302 993 : if( FD_UNLIKELY( !ele ) ) return 0;
303 993 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_prev_vote_account_desc, ele ) ) ) return 0;
304 993 : }
305 993 : break;
306 993 : default:
307 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
308 0 : break;
309 186065 : }
310 186065 : }
311 221 : return 1;
312 611 : }
313 :
314 : fd_pb_msgdesc_t const fd_exec_test_block_bank_desc = {
315 : .encode = fd_exec_test_block_bank_encode,
316 : .decode = fd_exec_test_block_bank_decode
317 : };
318 :
319 : static int
320 : fd_exec_test_block_context_encode( fd_pb_encoder_t * enc,
321 0 : void const * msg_ ) {
322 0 : fd_exec_test_block_context_t const * msg = msg_;
323 0 : for( ulong i=0UL; i<msg->txns_count; i++ ) {
324 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_sanitized_transaction_desc, &msg->txns[ i ] ) ) ) return 0;
325 0 : }
326 0 : for( ulong i=0UL; i<msg->acct_states_count; i++ ) {
327 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 2U, &fd_exec_test_acct_state_desc, &msg->acct_states[ i ] ) ) ) return 0;
328 0 : }
329 0 : if( msg->has_bank && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 6U, &fd_exec_test_block_bank_desc, &msg->bank ) ) ) return 0;
330 0 : return 1;
331 0 : }
332 :
333 : static int
334 : fd_exec_test_block_context_decode( fd_pb_inbuf_t * in,
335 : void * msg_,
336 608 : fd_spad_t * spad ) {
337 608 : fd_exec_test_block_context_t * msg = msg_;
338 14611 : while( fd_pb_inbuf_sz( in ) ) {
339 14000 : fd_pb_tlv_t tlv[1];
340 14000 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
341 14000 : switch( tlv->field_id ) {
342 446 : case 1:
343 446 : {
344 446 : void * ele = fd_pb_dec_grow( spad, &msg->txns, &msg->txns_count, alignof(fd_exec_test_sanitized_transaction_t), sizeof(fd_exec_test_sanitized_transaction_t) );
345 446 : if( FD_UNLIKELY( !ele ) ) return 0;
346 446 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_sanitized_transaction_desc, ele ) ) ) return 0;
347 446 : }
348 446 : break;
349 12924 : case 2:
350 12924 : {
351 12924 : void * ele = fd_pb_dec_grow( spad, &msg->acct_states, &msg->acct_states_count, alignof(fd_exec_test_acct_state_t), sizeof(fd_exec_test_acct_state_t) );
352 12924 : if( FD_UNLIKELY( !ele ) ) return 0;
353 12924 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_acct_state_desc, ele ) ) ) return 0;
354 12924 : }
355 12924 : break;
356 12924 : case 6:
357 609 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_block_bank_desc, &msg->bank ) ) ) return 0;
358 609 : msg->has_bank = 1;
359 609 : break;
360 0 : default:
361 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
362 0 : break;
363 14000 : }
364 14000 : }
365 611 : return 1;
366 608 : }
367 :
368 : fd_pb_msgdesc_t const fd_exec_test_block_context_desc = {
369 : .encode = fd_exec_test_block_context_encode,
370 : .decode = fd_exec_test_block_context_decode
371 : };
372 :
373 : static int
374 : fd_exec_test_leader_schedule_effects_encode( fd_pb_encoder_t * enc,
375 1221 : void const * msg_ ) {
376 1221 : fd_exec_test_leader_schedule_effects_t const * msg = msg_;
377 1221 : if( msg->leaders_epoch && FD_UNLIKELY( !fd_pb_push_uint64( enc, 1U, msg->leaders_epoch ) ) ) return 0;
378 1221 : if( msg->leaders_slot0 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 2U, msg->leaders_slot0 ) ) ) return 0;
379 1221 : if( msg->leaders_slot_cnt && FD_UNLIKELY( !fd_pb_push_uint64( enc, 3U, msg->leaders_slot_cnt ) ) ) return 0;
380 1221 : if( msg->leader_pub_cnt && FD_UNLIKELY( !fd_pb_push_uint64( enc, 4U, msg->leader_pub_cnt ) ) ) return 0;
381 1221 : if( msg->leaders_sched_cnt && FD_UNLIKELY( !fd_pb_push_uint64( enc, 5U, msg->leaders_sched_cnt ) ) ) return 0;
382 1221 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 6U, msg->leader_schedule_hash, 16UL ) ) ) return 0;
383 1221 : return 1;
384 1221 : }
385 :
386 : static int
387 : fd_exec_test_leader_schedule_effects_decode( fd_pb_inbuf_t * in,
388 : void * msg_,
389 609 : fd_spad_t * spad FD_PARAM_UNUSED ) {
390 609 : fd_exec_test_leader_schedule_effects_t * msg = msg_;
391 4212 : while( fd_pb_inbuf_sz( in ) ) {
392 3598 : fd_pb_tlv_t tlv[1];
393 3598 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
394 3598 : switch( tlv->field_id ) {
395 591 : case 1:
396 591 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->leaders_epoch ) ) ) return 0;
397 591 : break;
398 591 : case 2:
399 591 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->leaders_slot0 ) ) ) return 0;
400 591 : break;
401 609 : case 3:
402 609 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->leaders_slot_cnt ) ) ) return 0;
403 609 : break;
404 611 : case 4:
405 611 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->leader_pub_cnt ) ) ) return 0;
406 611 : break;
407 611 : case 5:
408 611 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->leaders_sched_cnt ) ) ) return 0;
409 611 : break;
410 611 : case 6:
411 611 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->leader_schedule_hash, 16UL ) ) ) return 0;
412 611 : break;
413 611 : default:
414 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
415 0 : break;
416 3598 : }
417 3598 : }
418 614 : return 1;
419 609 : }
420 :
421 : fd_pb_msgdesc_t const fd_exec_test_leader_schedule_effects_desc = {
422 : .encode = fd_exec_test_leader_schedule_effects_encode,
423 : .decode = fd_exec_test_leader_schedule_effects_decode
424 : };
425 :
426 : static int
427 : fd_exec_test_stake_delegation_encode( fd_pb_encoder_t * enc,
428 2030 : void const * msg_ ) {
429 2030 : fd_exec_test_stake_delegation_t const * msg = msg_;
430 2030 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 1U, msg->stake_account, 32UL ) ) ) return 0;
431 2030 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 2U, msg->vote_account, 32UL ) ) ) return 0;
432 2030 : if( msg->stake && FD_UNLIKELY( !fd_pb_push_uint64( enc, 3U, msg->stake ) ) ) return 0;
433 2030 : if( msg->activation_epoch && FD_UNLIKELY( !fd_pb_push_uint64( enc, 4U, msg->activation_epoch ) ) ) return 0;
434 2030 : if( msg->deactivation_epoch && FD_UNLIKELY( !fd_pb_push_uint64( enc, 5U, msg->deactivation_epoch ) ) ) return 0;
435 2030 : if( msg->credits_observed && FD_UNLIKELY( !fd_pb_push_uint64( enc, 6U, msg->credits_observed ) ) ) return 0;
436 2030 : if( msg->lamports && FD_UNLIKELY( !fd_pb_push_uint64( enc, 7U, msg->lamports ) ) ) return 0;
437 2030 : if( msg->data_len && FD_UNLIKELY( !fd_pb_push_uint64( enc, 8U, msg->data_len ) ) ) return 0;
438 2030 : return 1;
439 2030 : }
440 :
441 : static int
442 : fd_exec_test_stake_delegation_decode( fd_pb_inbuf_t * in,
443 : void * msg_,
444 1013 : fd_spad_t * spad FD_PARAM_UNUSED ) {
445 1013 : fd_exec_test_stake_delegation_t * msg = msg_;
446 8627 : while( fd_pb_inbuf_sz( in ) ) {
447 7605 : fd_pb_tlv_t tlv[1];
448 7605 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
449 7605 : switch( tlv->field_id ) {
450 1014 : case 1:
451 1014 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->stake_account, 32UL ) ) ) return 0;
452 1014 : break;
453 1014 : case 2:
454 1013 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->vote_account, 32UL ) ) ) return 0;
455 1013 : break;
456 1013 : case 3:
457 990 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->stake ) ) ) return 0;
458 990 : break;
459 990 : case 4:
460 600 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->activation_epoch ) ) ) return 0;
461 600 : break;
462 1012 : case 5:
463 1012 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->deactivation_epoch ) ) ) return 0;
464 1012 : break;
465 1012 : case 6:
466 991 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->credits_observed ) ) ) return 0;
467 991 : break;
468 1014 : case 7:
469 1014 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->lamports ) ) ) return 0;
470 1014 : break;
471 1014 : case 8:
472 1014 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->data_len ) ) ) return 0;
473 1014 : break;
474 1014 : default:
475 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
476 0 : break;
477 7605 : }
478 7605 : }
479 1022 : return 1;
480 1013 : }
481 :
482 : fd_pb_msgdesc_t const fd_exec_test_stake_delegation_desc = {
483 : .encode = fd_exec_test_stake_delegation_encode,
484 : .decode = fd_exec_test_stake_delegation_decode
485 : };
486 :
487 : static int
488 : fd_exec_test_block_effects_encode( fd_pb_encoder_t * enc,
489 1220 : void const * msg_ ) {
490 1220 : fd_exec_test_block_effects_t const * msg = msg_;
491 1220 : if( msg->has_error && FD_UNLIKELY( !fd_pb_push_bool( enc, 1U, msg->has_error ) ) ) return 0;
492 1220 : if( msg->slot_capitalization && FD_UNLIKELY( !fd_pb_push_uint64( enc, 2U, msg->slot_capitalization ) ) ) return 0;
493 1220 : if( FD_UNLIKELY( !fd_pb_push_bytes( enc, 3U, msg->bank_hash, 32UL ) ) ) return 0;
494 1220 : if( msg->has_cost_tracker && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 4U, &fd_exec_test_cost_tracker_desc, &msg->cost_tracker ) ) ) return 0;
495 1220 : if( msg->has_leader_schedule && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 5U, &fd_exec_test_leader_schedule_effects_desc, &msg->leader_schedule ) ) ) return 0;
496 3250 : for( ulong i=0UL; i<msg->stake_delegations_count; i++ ) {
497 2030 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 6U, &fd_exec_test_stake_delegation_desc, &msg->stake_delegations[ i ] ) ) ) return 0;
498 2030 : }
499 1220 : return 1;
500 1220 : }
501 :
502 : static int
503 : fd_exec_test_block_effects_decode( fd_pb_inbuf_t * in,
504 : void * msg_,
505 610 : fd_spad_t * spad ) {
506 610 : fd_exec_test_block_effects_t * msg = msg_;
507 4056 : while( fd_pb_inbuf_sz( in ) ) {
508 3443 : fd_pb_tlv_t tlv[1];
509 3443 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
510 3443 : switch( tlv->field_id ) {
511 1 : case 1:
512 1 : if( FD_UNLIKELY( !fd_pb_dec_bool( tlv, &msg->has_error ) ) ) return 0;
513 1 : break;
514 610 : case 2:
515 610 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->slot_capitalization ) ) ) return 0;
516 610 : break;
517 610 : case 3:
518 607 : if( FD_UNLIKELY( !fd_pb_dec_bytes_fixed( in, tlv, msg->bank_hash, 32UL ) ) ) return 0;
519 607 : break;
520 611 : case 4:
521 611 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_cost_tracker_desc, &msg->cost_tracker ) ) ) return 0;
522 611 : msg->has_cost_tracker = 1;
523 611 : break;
524 610 : case 5:
525 610 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_leader_schedule_effects_desc, &msg->leader_schedule ) ) ) return 0;
526 610 : msg->has_leader_schedule = 1;
527 610 : break;
528 1013 : case 6:
529 1013 : {
530 1013 : void * ele = fd_pb_dec_grow( spad, &msg->stake_delegations, &msg->stake_delegations_count, alignof(fd_exec_test_stake_delegation_t), sizeof(fd_exec_test_stake_delegation_t) );
531 1013 : if( FD_UNLIKELY( !ele ) ) return 0;
532 1013 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_stake_delegation_desc, ele ) ) ) return 0;
533 1013 : }
534 1013 : break;
535 1013 : default:
536 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
537 0 : break;
538 3443 : }
539 3443 : }
540 613 : return 1;
541 610 : }
542 :
543 : fd_pb_msgdesc_t const fd_exec_test_block_effects_desc = {
544 : .encode = fd_exec_test_block_effects_encode,
545 : .decode = fd_exec_test_block_effects_decode
546 : };
547 :
548 : static int
549 : fd_exec_test_block_fixture_encode( fd_pb_encoder_t * enc,
550 0 : void const * msg_ ) {
551 0 : fd_exec_test_block_fixture_t const * msg = msg_;
552 0 : if( msg->has_metadata && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
553 0 : if( msg->has_input && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 2U, &fd_exec_test_block_context_desc, &msg->input ) ) ) return 0;
554 0 : if( msg->has_output && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_block_effects_desc, &msg->output ) ) ) return 0;
555 0 : return 1;
556 0 : }
557 :
558 : static int
559 : fd_exec_test_block_fixture_decode( fd_pb_inbuf_t * in,
560 : void * msg_,
561 607 : fd_spad_t * spad ) {
562 607 : fd_exec_test_block_fixture_t * msg = msg_;
563 2431 : while( fd_pb_inbuf_sz( in ) ) {
564 1817 : fd_pb_tlv_t tlv[1];
565 1817 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
566 1817 : switch( tlv->field_id ) {
567 606 : case 1:
568 606 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
569 606 : msg->has_metadata = 1;
570 606 : break;
571 607 : case 2:
572 607 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_block_context_desc, &msg->input ) ) ) return 0;
573 607 : msg->has_input = 1;
574 607 : break;
575 608 : case 3:
576 608 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_block_effects_desc, &msg->output ) ) ) return 0;
577 608 : msg->has_output = 1;
578 608 : break;
579 0 : default:
580 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
581 0 : break;
582 1817 : }
583 1817 : }
584 614 : return 1;
585 607 : }
586 :
587 : fd_pb_msgdesc_t const fd_exec_test_block_fixture_desc = {
588 : .encode = fd_exec_test_block_fixture_encode,
589 : .decode = fd_exec_test_block_fixture_decode
590 : };
591 :
|