1#![allow(clippy::enum_variant_names)]
9#![allow(clippy::large_enum_variant)]
10#![allow(clippy::upper_case_acronyms)]
11
12use parol_runtime::log::trace;
13#[allow(unused_imports)]
14use parol_runtime::parol_macros::{pop_and_reverse_item, pop_item};
15use parol_runtime::parser::{ParseTreeType, UserActionsTrait};
16use parol_runtime::{ParserError, Result, Token};
17use std::marker::PhantomData;
18
19pub trait VerylGrammarTrait {
22 fn comments_term(&mut self, _arg: &CommentsTerm) -> Result<()> {
24 Ok(())
25 }
26
27 fn string_literal_term(&mut self, _arg: &StringLiteralTerm) -> Result<()> {
29 Ok(())
30 }
31
32 fn exponent_term(&mut self, _arg: &ExponentTerm) -> Result<()> {
34 Ok(())
35 }
36
37 fn fixed_point_term(&mut self, _arg: &FixedPointTerm) -> Result<()> {
39 Ok(())
40 }
41
42 fn based_term(&mut self, _arg: &BasedTerm) -> Result<()> {
44 Ok(())
45 }
46
47 fn all_bit_term(&mut self, _arg: &AllBitTerm) -> Result<()> {
49 Ok(())
50 }
51
52 fn base_less_term(&mut self, _arg: &BaseLessTerm) -> Result<()> {
54 Ok(())
55 }
56
57 fn minus_colon_term(&mut self, _arg: &MinusColonTerm) -> Result<()> {
59 Ok(())
60 }
61
62 fn minus_g_t_term(&mut self, _arg: &MinusGTTerm) -> Result<()> {
64 Ok(())
65 }
66
67 fn l_t_minus_term(&mut self, _arg: <MinusTerm) -> Result<()> {
69 Ok(())
70 }
71
72 fn plus_colon_term(&mut self, _arg: &PlusColonTerm) -> Result<()> {
74 Ok(())
75 }
76
77 fn assignment_operator_term(&mut self, _arg: &AssignmentOperatorTerm) -> Result<()> {
79 Ok(())
80 }
81
82 fn diamond_operator_term(&mut self, _arg: &DiamondOperatorTerm) -> Result<()> {
84 Ok(())
85 }
86
87 fn operator08_term(&mut self, _arg: &Operator08Term) -> Result<()> {
89 Ok(())
90 }
91
92 fn operator07_term(&mut self, _arg: &Operator07Term) -> Result<()> {
94 Ok(())
95 }
96
97 fn operator06_term(&mut self, _arg: &Operator06Term) -> Result<()> {
99 Ok(())
100 }
101
102 fn operator02_term(&mut self, _arg: &Operator02Term) -> Result<()> {
104 Ok(())
105 }
106
107 fn operator01_term(&mut self, _arg: &Operator01Term) -> Result<()> {
109 Ok(())
110 }
111
112 fn operator05_term(&mut self, _arg: &Operator05Term) -> Result<()> {
114 Ok(())
115 }
116
117 fn operator04_term(&mut self, _arg: &Operator04Term) -> Result<()> {
119 Ok(())
120 }
121
122 fn operator03_term(&mut self, _arg: &Operator03Term) -> Result<()> {
124 Ok(())
125 }
126
127 fn unary_operator_term(&mut self, _arg: &UnaryOperatorTerm) -> Result<()> {
129 Ok(())
130 }
131
132 fn colon_colon_l_angle_term(&mut self, _arg: &ColonColonLAngleTerm) -> Result<()> {
134 Ok(())
135 }
136
137 fn colon_colon_term(&mut self, _arg: &ColonColonTerm) -> Result<()> {
139 Ok(())
140 }
141
142 fn colon_term(&mut self, _arg: &ColonTerm) -> Result<()> {
144 Ok(())
145 }
146
147 fn comma_term(&mut self, _arg: &CommaTerm) -> Result<()> {
149 Ok(())
150 }
151
152 fn dot_dot_equ_term(&mut self, _arg: &DotDotEquTerm) -> Result<()> {
154 Ok(())
155 }
156
157 fn dot_dot_term(&mut self, _arg: &DotDotTerm) -> Result<()> {
159 Ok(())
160 }
161
162 fn dot_term(&mut self, _arg: &DotTerm) -> Result<()> {
164 Ok(())
165 }
166
167 fn equ_term(&mut self, _arg: &EquTerm) -> Result<()> {
169 Ok(())
170 }
171
172 fn hash_l_bracket_term(&mut self, _arg: &HashLBracketTerm) -> Result<()> {
174 Ok(())
175 }
176
177 fn hash_term(&mut self, _arg: &HashTerm) -> Result<()> {
179 Ok(())
180 }
181
182 fn l_angle_term(&mut self, _arg: &LAngleTerm) -> Result<()> {
184 Ok(())
185 }
186
187 fn question_term(&mut self, _arg: &QuestionTerm) -> Result<()> {
189 Ok(())
190 }
191
192 fn quote_l_brace_term(&mut self, _arg: &QuoteLBraceTerm) -> Result<()> {
194 Ok(())
195 }
196
197 fn quote_term(&mut self, _arg: &QuoteTerm) -> Result<()> {
199 Ok(())
200 }
201
202 fn escaped_l_brace_term(&mut self, _arg: &EscapedLBraceTerm) -> Result<()> {
204 Ok(())
205 }
206
207 fn triple_l_brace_term(&mut self, _arg: &TripleLBraceTerm) -> Result<()> {
209 Ok(())
210 }
211
212 fn l_brace_term(&mut self, _arg: &LBraceTerm) -> Result<()> {
214 Ok(())
215 }
216
217 fn l_bracket_term(&mut self, _arg: &LBracketTerm) -> Result<()> {
219 Ok(())
220 }
221
222 fn l_paren_term(&mut self, _arg: &LParenTerm) -> Result<()> {
224 Ok(())
225 }
226
227 fn r_angle_term(&mut self, _arg: &RAngleTerm) -> Result<()> {
229 Ok(())
230 }
231
232 fn escaped_r_brace_term(&mut self, _arg: &EscapedRBraceTerm) -> Result<()> {
234 Ok(())
235 }
236
237 fn triple_r_brace_term(&mut self, _arg: &TripleRBraceTerm) -> Result<()> {
239 Ok(())
240 }
241
242 fn r_brace_term(&mut self, _arg: &RBraceTerm) -> Result<()> {
244 Ok(())
245 }
246
247 fn r_bracket_term(&mut self, _arg: &RBracketTerm) -> Result<()> {
249 Ok(())
250 }
251
252 fn r_paren_term(&mut self, _arg: &RParenTerm) -> Result<()> {
254 Ok(())
255 }
256
257 fn semicolon_term(&mut self, _arg: &SemicolonTerm) -> Result<()> {
259 Ok(())
260 }
261
262 fn star_term(&mut self, _arg: &StarTerm) -> Result<()> {
264 Ok(())
265 }
266
267 fn alias_term(&mut self, _arg: &AliasTerm) -> Result<()> {
269 Ok(())
270 }
271
272 fn always_comb_term(&mut self, _arg: &AlwaysCombTerm) -> Result<()> {
274 Ok(())
275 }
276
277 fn always_ff_term(&mut self, _arg: &AlwaysFfTerm) -> Result<()> {
279 Ok(())
280 }
281
282 fn assign_term(&mut self, _arg: &AssignTerm) -> Result<()> {
284 Ok(())
285 }
286
287 fn as_term(&mut self, _arg: &AsTerm) -> Result<()> {
289 Ok(())
290 }
291
292 fn bind_term(&mut self, _arg: &BindTerm) -> Result<()> {
294 Ok(())
295 }
296
297 fn bit_term(&mut self, _arg: &BitTerm) -> Result<()> {
299 Ok(())
300 }
301
302 fn block_term(&mut self, _arg: &BlockTerm) -> Result<()> {
304 Ok(())
305 }
306
307 fn b_bool_term(&mut self, _arg: &BBoolTerm) -> Result<()> {
309 Ok(())
310 }
311
312 fn l_bool_term(&mut self, _arg: &LBoolTerm) -> Result<()> {
314 Ok(())
315 }
316
317 fn case_term(&mut self, _arg: &CaseTerm) -> Result<()> {
319 Ok(())
320 }
321
322 fn clock_term(&mut self, _arg: &ClockTerm) -> Result<()> {
324 Ok(())
325 }
326
327 fn clock_posedge_term(&mut self, _arg: &ClockPosedgeTerm) -> Result<()> {
329 Ok(())
330 }
331
332 fn clock_negedge_term(&mut self, _arg: &ClockNegedgeTerm) -> Result<()> {
334 Ok(())
335 }
336
337 fn connect_term(&mut self, _arg: &ConnectTerm) -> Result<()> {
339 Ok(())
340 }
341
342 fn const_term(&mut self, _arg: &ConstTerm) -> Result<()> {
344 Ok(())
345 }
346
347 fn converse_term(&mut self, _arg: &ConverseTerm) -> Result<()> {
349 Ok(())
350 }
351
352 fn default_term(&mut self, _arg: &DefaultTerm) -> Result<()> {
354 Ok(())
355 }
356
357 fn else_term(&mut self, _arg: &ElseTerm) -> Result<()> {
359 Ok(())
360 }
361
362 fn embed_term(&mut self, _arg: &EmbedTerm) -> Result<()> {
364 Ok(())
365 }
366
367 fn enum_term(&mut self, _arg: &EnumTerm) -> Result<()> {
369 Ok(())
370 }
371
372 fn f32_term(&mut self, _arg: &F32Term) -> Result<()> {
374 Ok(())
375 }
376
377 fn f64_term(&mut self, _arg: &F64Term) -> Result<()> {
379 Ok(())
380 }
381
382 fn false_term(&mut self, _arg: &FalseTerm) -> Result<()> {
384 Ok(())
385 }
386
387 fn final_term(&mut self, _arg: &FinalTerm) -> Result<()> {
389 Ok(())
390 }
391
392 fn for_term(&mut self, _arg: &ForTerm) -> Result<()> {
394 Ok(())
395 }
396
397 fn function_term(&mut self, _arg: &FunctionTerm) -> Result<()> {
399 Ok(())
400 }
401
402 fn i8_term(&mut self, _arg: &I8Term) -> Result<()> {
404 Ok(())
405 }
406
407 fn i16_term(&mut self, _arg: &I16Term) -> Result<()> {
409 Ok(())
410 }
411
412 fn i32_term(&mut self, _arg: &I32Term) -> Result<()> {
414 Ok(())
415 }
416
417 fn i64_term(&mut self, _arg: &I64Term) -> Result<()> {
419 Ok(())
420 }
421
422 fn if_reset_term(&mut self, _arg: &IfResetTerm) -> Result<()> {
424 Ok(())
425 }
426
427 fn if_term(&mut self, _arg: &IfTerm) -> Result<()> {
429 Ok(())
430 }
431
432 fn import_term(&mut self, _arg: &ImportTerm) -> Result<()> {
434 Ok(())
435 }
436
437 fn include_term(&mut self, _arg: &IncludeTerm) -> Result<()> {
439 Ok(())
440 }
441
442 fn initial_term(&mut self, _arg: &InitialTerm) -> Result<()> {
444 Ok(())
445 }
446
447 fn inout_term(&mut self, _arg: &InoutTerm) -> Result<()> {
449 Ok(())
450 }
451
452 fn input_term(&mut self, _arg: &InputTerm) -> Result<()> {
454 Ok(())
455 }
456
457 fn inside_term(&mut self, _arg: &InsideTerm) -> Result<()> {
459 Ok(())
460 }
461
462 fn inst_term(&mut self, _arg: &InstTerm) -> Result<()> {
464 Ok(())
465 }
466
467 fn interface_term(&mut self, _arg: &InterfaceTerm) -> Result<()> {
469 Ok(())
470 }
471
472 fn in_term(&mut self, _arg: &InTerm) -> Result<()> {
474 Ok(())
475 }
476
477 fn let_term(&mut self, _arg: &LetTerm) -> Result<()> {
479 Ok(())
480 }
481
482 fn logic_term(&mut self, _arg: &LogicTerm) -> Result<()> {
484 Ok(())
485 }
486
487 fn lsb_term(&mut self, _arg: &LsbTerm) -> Result<()> {
489 Ok(())
490 }
491
492 fn modport_term(&mut self, _arg: &ModportTerm) -> Result<()> {
494 Ok(())
495 }
496
497 fn module_term(&mut self, _arg: &ModuleTerm) -> Result<()> {
499 Ok(())
500 }
501
502 fn msb_term(&mut self, _arg: &MsbTerm) -> Result<()> {
504 Ok(())
505 }
506
507 fn output_term(&mut self, _arg: &OutputTerm) -> Result<()> {
509 Ok(())
510 }
511
512 fn outside_term(&mut self, _arg: &OutsideTerm) -> Result<()> {
514 Ok(())
515 }
516
517 fn package_term(&mut self, _arg: &PackageTerm) -> Result<()> {
519 Ok(())
520 }
521
522 fn param_term(&mut self, _arg: &ParamTerm) -> Result<()> {
524 Ok(())
525 }
526
527 fn proto_term(&mut self, _arg: &ProtoTerm) -> Result<()> {
529 Ok(())
530 }
531
532 fn pub_term(&mut self, _arg: &PubTerm) -> Result<()> {
534 Ok(())
535 }
536
537 fn repeat_term(&mut self, _arg: &RepeatTerm) -> Result<()> {
539 Ok(())
540 }
541
542 fn reset_term(&mut self, _arg: &ResetTerm) -> Result<()> {
544 Ok(())
545 }
546
547 fn reset_async_high_term(&mut self, _arg: &ResetAsyncHighTerm) -> Result<()> {
549 Ok(())
550 }
551
552 fn reset_async_low_term(&mut self, _arg: &ResetAsyncLowTerm) -> Result<()> {
554 Ok(())
555 }
556
557 fn reset_sync_high_term(&mut self, _arg: &ResetSyncHighTerm) -> Result<()> {
559 Ok(())
560 }
561
562 fn reset_sync_low_term(&mut self, _arg: &ResetSyncLowTerm) -> Result<()> {
564 Ok(())
565 }
566
567 fn return_term(&mut self, _arg: &ReturnTerm) -> Result<()> {
569 Ok(())
570 }
571
572 fn rev_term(&mut self, _arg: &RevTerm) -> Result<()> {
574 Ok(())
575 }
576
577 fn break_term(&mut self, _arg: &BreakTerm) -> Result<()> {
579 Ok(())
580 }
581
582 fn same_term(&mut self, _arg: &SameTerm) -> Result<()> {
584 Ok(())
585 }
586
587 fn signed_term(&mut self, _arg: &SignedTerm) -> Result<()> {
589 Ok(())
590 }
591
592 fn step_term(&mut self, _arg: &StepTerm) -> Result<()> {
594 Ok(())
595 }
596
597 fn string_term(&mut self, _arg: &StringTerm) -> Result<()> {
599 Ok(())
600 }
601
602 fn struct_term(&mut self, _arg: &StructTerm) -> Result<()> {
604 Ok(())
605 }
606
607 fn switch_term(&mut self, _arg: &SwitchTerm) -> Result<()> {
609 Ok(())
610 }
611
612 fn tri_term(&mut self, _arg: &TriTerm) -> Result<()> {
614 Ok(())
615 }
616
617 fn true_term(&mut self, _arg: &TrueTerm) -> Result<()> {
619 Ok(())
620 }
621
622 fn type_term(&mut self, _arg: &TypeTerm) -> Result<()> {
624 Ok(())
625 }
626
627 fn p8_term(&mut self, _arg: &P8Term) -> Result<()> {
629 Ok(())
630 }
631
632 fn p16_term(&mut self, _arg: &P16Term) -> Result<()> {
634 Ok(())
635 }
636
637 fn p32_term(&mut self, _arg: &P32Term) -> Result<()> {
639 Ok(())
640 }
641
642 fn p64_term(&mut self, _arg: &P64Term) -> Result<()> {
644 Ok(())
645 }
646
647 fn u8_term(&mut self, _arg: &U8Term) -> Result<()> {
649 Ok(())
650 }
651
652 fn u16_term(&mut self, _arg: &U16Term) -> Result<()> {
654 Ok(())
655 }
656
657 fn u32_term(&mut self, _arg: &U32Term) -> Result<()> {
659 Ok(())
660 }
661
662 fn u64_term(&mut self, _arg: &U64Term) -> Result<()> {
664 Ok(())
665 }
666
667 fn union_term(&mut self, _arg: &UnionTerm) -> Result<()> {
669 Ok(())
670 }
671
672 fn unsafe_term(&mut self, _arg: &UnsafeTerm) -> Result<()> {
674 Ok(())
675 }
676
677 fn var_term(&mut self, _arg: &VarTerm) -> Result<()> {
679 Ok(())
680 }
681
682 fn dollar_identifier_term(&mut self, _arg: &DollarIdentifierTerm) -> Result<()> {
684 Ok(())
685 }
686
687 fn identifier_term(&mut self, _arg: &IdentifierTerm) -> Result<()> {
689 Ok(())
690 }
691
692 fn any_term(&mut self, _arg: &AnyTerm) -> Result<()> {
694 Ok(())
695 }
696
697 fn comments(&mut self, _arg: &Comments) -> Result<()> {
699 Ok(())
700 }
701
702 fn start_token(&mut self, _arg: &StartToken) -> Result<()> {
704 Ok(())
705 }
706
707 fn string_literal_token(&mut self, _arg: &StringLiteralToken) -> Result<()> {
709 Ok(())
710 }
711
712 fn exponent_token(&mut self, _arg: &ExponentToken) -> Result<()> {
714 Ok(())
715 }
716
717 fn fixed_point_token(&mut self, _arg: &FixedPointToken) -> Result<()> {
719 Ok(())
720 }
721
722 fn based_token(&mut self, _arg: &BasedToken) -> Result<()> {
724 Ok(())
725 }
726
727 fn base_less_token(&mut self, _arg: &BaseLessToken) -> Result<()> {
729 Ok(())
730 }
731
732 fn all_bit_token(&mut self, _arg: &AllBitToken) -> Result<()> {
734 Ok(())
735 }
736
737 fn assignment_operator_token(&mut self, _arg: &AssignmentOperatorToken) -> Result<()> {
739 Ok(())
740 }
741
742 fn diamond_operator_token(&mut self, _arg: &DiamondOperatorToken) -> Result<()> {
744 Ok(())
745 }
746
747 fn operator01_token(&mut self, _arg: &Operator01Token) -> Result<()> {
749 Ok(())
750 }
751
752 fn operator02_token(&mut self, _arg: &Operator02Token) -> Result<()> {
754 Ok(())
755 }
756
757 fn operator03_token(&mut self, _arg: &Operator03Token) -> Result<()> {
759 Ok(())
760 }
761
762 fn operator04_token(&mut self, _arg: &Operator04Token) -> Result<()> {
764 Ok(())
765 }
766
767 fn operator05_token(&mut self, _arg: &Operator05Token) -> Result<()> {
769 Ok(())
770 }
771
772 fn operator06_token(&mut self, _arg: &Operator06Token) -> Result<()> {
774 Ok(())
775 }
776
777 fn operator07_token(&mut self, _arg: &Operator07Token) -> Result<()> {
779 Ok(())
780 }
781
782 fn operator08_token(&mut self, _arg: &Operator08Token) -> Result<()> {
784 Ok(())
785 }
786
787 fn unary_operator_token(&mut self, _arg: &UnaryOperatorToken) -> Result<()> {
789 Ok(())
790 }
791
792 fn colon_token(&mut self, _arg: &ColonToken) -> Result<()> {
794 Ok(())
795 }
796
797 fn colon_colon_l_angle_token(&mut self, _arg: &ColonColonLAngleToken) -> Result<()> {
799 Ok(())
800 }
801
802 fn colon_colon_token(&mut self, _arg: &ColonColonToken) -> Result<()> {
804 Ok(())
805 }
806
807 fn comma_token(&mut self, _arg: &CommaToken) -> Result<()> {
809 Ok(())
810 }
811
812 fn dot_dot_token(&mut self, _arg: &DotDotToken) -> Result<()> {
814 Ok(())
815 }
816
817 fn dot_dot_equ_token(&mut self, _arg: &DotDotEquToken) -> Result<()> {
819 Ok(())
820 }
821
822 fn dot_token(&mut self, _arg: &DotToken) -> Result<()> {
824 Ok(())
825 }
826
827 fn equ_token(&mut self, _arg: &EquToken) -> Result<()> {
829 Ok(())
830 }
831
832 fn hash_l_bracket_token(&mut self, _arg: &HashLBracketToken) -> Result<()> {
834 Ok(())
835 }
836
837 fn hash_token(&mut self, _arg: &HashToken) -> Result<()> {
839 Ok(())
840 }
841
842 fn question_token(&mut self, _arg: &QuestionToken) -> Result<()> {
844 Ok(())
845 }
846
847 fn quote_l_brace_token(&mut self, _arg: &QuoteLBraceToken) -> Result<()> {
849 Ok(())
850 }
851
852 fn quote_token(&mut self, _arg: &QuoteToken) -> Result<()> {
854 Ok(())
855 }
856
857 fn l_angle_token(&mut self, _arg: &LAngleToken) -> Result<()> {
859 Ok(())
860 }
861
862 fn embed_l_brace_token(&mut self, _arg: &EmbedLBraceToken) -> Result<()> {
864 Ok(())
865 }
866
867 fn escaped_l_brace_token(&mut self, _arg: &EscapedLBraceToken) -> Result<()> {
869 Ok(())
870 }
871
872 fn triple_l_brace_token(&mut self, _arg: &TripleLBraceToken) -> Result<()> {
874 Ok(())
875 }
876
877 fn l_brace_token(&mut self, _arg: &LBraceToken) -> Result<()> {
879 Ok(())
880 }
881
882 fn l_bracket_token(&mut self, _arg: &LBracketToken) -> Result<()> {
884 Ok(())
885 }
886
887 fn l_paren_token(&mut self, _arg: &LParenToken) -> Result<()> {
889 Ok(())
890 }
891
892 fn l_t_minus_token(&mut self, _arg: <MinusToken) -> Result<()> {
894 Ok(())
895 }
896
897 fn minus_colon_token(&mut self, _arg: &MinusColonToken) -> Result<()> {
899 Ok(())
900 }
901
902 fn minus_g_t_token(&mut self, _arg: &MinusGTToken) -> Result<()> {
904 Ok(())
905 }
906
907 fn plus_colon_token(&mut self, _arg: &PlusColonToken) -> Result<()> {
909 Ok(())
910 }
911
912 fn r_angle_token(&mut self, _arg: &RAngleToken) -> Result<()> {
914 Ok(())
915 }
916
917 fn embed_r_brace_token(&mut self, _arg: &EmbedRBraceToken) -> Result<()> {
919 Ok(())
920 }
921
922 fn escaped_r_brace_token(&mut self, _arg: &EscapedRBraceToken) -> Result<()> {
924 Ok(())
925 }
926
927 fn triple_r_brace_token(&mut self, _arg: &TripleRBraceToken) -> Result<()> {
929 Ok(())
930 }
931
932 fn r_brace_token(&mut self, _arg: &RBraceToken) -> Result<()> {
934 Ok(())
935 }
936
937 fn r_bracket_token(&mut self, _arg: &RBracketToken) -> Result<()> {
939 Ok(())
940 }
941
942 fn r_paren_token(&mut self, _arg: &RParenToken) -> Result<()> {
944 Ok(())
945 }
946
947 fn semicolon_token(&mut self, _arg: &SemicolonToken) -> Result<()> {
949 Ok(())
950 }
951
952 fn star_token(&mut self, _arg: &StarToken) -> Result<()> {
954 Ok(())
955 }
956
957 fn alias_token(&mut self, _arg: &AliasToken) -> Result<()> {
959 Ok(())
960 }
961
962 fn always_comb_token(&mut self, _arg: &AlwaysCombToken) -> Result<()> {
964 Ok(())
965 }
966
967 fn always_ff_token(&mut self, _arg: &AlwaysFfToken) -> Result<()> {
969 Ok(())
970 }
971
972 fn as_token(&mut self, _arg: &AsToken) -> Result<()> {
974 Ok(())
975 }
976
977 fn assign_token(&mut self, _arg: &AssignToken) -> Result<()> {
979 Ok(())
980 }
981
982 fn bind_token(&mut self, _arg: &BindToken) -> Result<()> {
984 Ok(())
985 }
986
987 fn bit_token(&mut self, _arg: &BitToken) -> Result<()> {
989 Ok(())
990 }
991
992 fn block_token(&mut self, _arg: &BlockToken) -> Result<()> {
994 Ok(())
995 }
996
997 fn b_bool_token(&mut self, _arg: &BBoolToken) -> Result<()> {
999 Ok(())
1000 }
1001
1002 fn l_bool_token(&mut self, _arg: &LBoolToken) -> Result<()> {
1004 Ok(())
1005 }
1006
1007 fn case_token(&mut self, _arg: &CaseToken) -> Result<()> {
1009 Ok(())
1010 }
1011
1012 fn clock_token(&mut self, _arg: &ClockToken) -> Result<()> {
1014 Ok(())
1015 }
1016
1017 fn clock_posedge_token(&mut self, _arg: &ClockPosedgeToken) -> Result<()> {
1019 Ok(())
1020 }
1021
1022 fn clock_negedge_token(&mut self, _arg: &ClockNegedgeToken) -> Result<()> {
1024 Ok(())
1025 }
1026
1027 fn connect_token(&mut self, _arg: &ConnectToken) -> Result<()> {
1029 Ok(())
1030 }
1031
1032 fn const_token(&mut self, _arg: &ConstToken) -> Result<()> {
1034 Ok(())
1035 }
1036
1037 fn converse_token(&mut self, _arg: &ConverseToken) -> Result<()> {
1039 Ok(())
1040 }
1041
1042 fn default_token(&mut self, _arg: &DefaultToken) -> Result<()> {
1044 Ok(())
1045 }
1046
1047 fn else_token(&mut self, _arg: &ElseToken) -> Result<()> {
1049 Ok(())
1050 }
1051
1052 fn embed_token(&mut self, _arg: &EmbedToken) -> Result<()> {
1054 Ok(())
1055 }
1056
1057 fn enum_token(&mut self, _arg: &EnumToken) -> Result<()> {
1059 Ok(())
1060 }
1061
1062 fn f32_token(&mut self, _arg: &F32Token) -> Result<()> {
1064 Ok(())
1065 }
1066
1067 fn f64_token(&mut self, _arg: &F64Token) -> Result<()> {
1069 Ok(())
1070 }
1071
1072 fn false_token(&mut self, _arg: &FalseToken) -> Result<()> {
1074 Ok(())
1075 }
1076
1077 fn final_token(&mut self, _arg: &FinalToken) -> Result<()> {
1079 Ok(())
1080 }
1081
1082 fn for_token(&mut self, _arg: &ForToken) -> Result<()> {
1084 Ok(())
1085 }
1086
1087 fn function_token(&mut self, _arg: &FunctionToken) -> Result<()> {
1089 Ok(())
1090 }
1091
1092 fn i8_token(&mut self, _arg: &I8Token) -> Result<()> {
1094 Ok(())
1095 }
1096
1097 fn i16_token(&mut self, _arg: &I16Token) -> Result<()> {
1099 Ok(())
1100 }
1101
1102 fn i32_token(&mut self, _arg: &I32Token) -> Result<()> {
1104 Ok(())
1105 }
1106
1107 fn i64_token(&mut self, _arg: &I64Token) -> Result<()> {
1109 Ok(())
1110 }
1111
1112 fn if_reset_token(&mut self, _arg: &IfResetToken) -> Result<()> {
1114 Ok(())
1115 }
1116
1117 fn if_token(&mut self, _arg: &IfToken) -> Result<()> {
1119 Ok(())
1120 }
1121
1122 fn import_token(&mut self, _arg: &ImportToken) -> Result<()> {
1124 Ok(())
1125 }
1126
1127 fn include_token(&mut self, _arg: &IncludeToken) -> Result<()> {
1129 Ok(())
1130 }
1131
1132 fn initial_token(&mut self, _arg: &InitialToken) -> Result<()> {
1134 Ok(())
1135 }
1136
1137 fn inout_token(&mut self, _arg: &InoutToken) -> Result<()> {
1139 Ok(())
1140 }
1141
1142 fn input_token(&mut self, _arg: &InputToken) -> Result<()> {
1144 Ok(())
1145 }
1146
1147 fn inside_token(&mut self, _arg: &InsideToken) -> Result<()> {
1149 Ok(())
1150 }
1151
1152 fn inst_token(&mut self, _arg: &InstToken) -> Result<()> {
1154 Ok(())
1155 }
1156
1157 fn interface_token(&mut self, _arg: &InterfaceToken) -> Result<()> {
1159 Ok(())
1160 }
1161
1162 fn in_token(&mut self, _arg: &InToken) -> Result<()> {
1164 Ok(())
1165 }
1166
1167 fn let_token(&mut self, _arg: &LetToken) -> Result<()> {
1169 Ok(())
1170 }
1171
1172 fn logic_token(&mut self, _arg: &LogicToken) -> Result<()> {
1174 Ok(())
1175 }
1176
1177 fn lsb_token(&mut self, _arg: &LsbToken) -> Result<()> {
1179 Ok(())
1180 }
1181
1182 fn modport_token(&mut self, _arg: &ModportToken) -> Result<()> {
1184 Ok(())
1185 }
1186
1187 fn module_token(&mut self, _arg: &ModuleToken) -> Result<()> {
1189 Ok(())
1190 }
1191
1192 fn msb_token(&mut self, _arg: &MsbToken) -> Result<()> {
1194 Ok(())
1195 }
1196
1197 fn output_token(&mut self, _arg: &OutputToken) -> Result<()> {
1199 Ok(())
1200 }
1201
1202 fn outside_token(&mut self, _arg: &OutsideToken) -> Result<()> {
1204 Ok(())
1205 }
1206
1207 fn package_token(&mut self, _arg: &PackageToken) -> Result<()> {
1209 Ok(())
1210 }
1211
1212 fn param_token(&mut self, _arg: &ParamToken) -> Result<()> {
1214 Ok(())
1215 }
1216
1217 fn proto_token(&mut self, _arg: &ProtoToken) -> Result<()> {
1219 Ok(())
1220 }
1221
1222 fn pub_token(&mut self, _arg: &PubToken) -> Result<()> {
1224 Ok(())
1225 }
1226
1227 fn repeat_token(&mut self, _arg: &RepeatToken) -> Result<()> {
1229 Ok(())
1230 }
1231
1232 fn reset_token(&mut self, _arg: &ResetToken) -> Result<()> {
1234 Ok(())
1235 }
1236
1237 fn reset_async_high_token(&mut self, _arg: &ResetAsyncHighToken) -> Result<()> {
1239 Ok(())
1240 }
1241
1242 fn reset_async_low_token(&mut self, _arg: &ResetAsyncLowToken) -> Result<()> {
1244 Ok(())
1245 }
1246
1247 fn reset_sync_high_token(&mut self, _arg: &ResetSyncHighToken) -> Result<()> {
1249 Ok(())
1250 }
1251
1252 fn reset_sync_low_token(&mut self, _arg: &ResetSyncLowToken) -> Result<()> {
1254 Ok(())
1255 }
1256
1257 fn return_token(&mut self, _arg: &ReturnToken) -> Result<()> {
1259 Ok(())
1260 }
1261
1262 fn rev_token(&mut self, _arg: &RevToken) -> Result<()> {
1264 Ok(())
1265 }
1266
1267 fn break_token(&mut self, _arg: &BreakToken) -> Result<()> {
1269 Ok(())
1270 }
1271
1272 fn same_token(&mut self, _arg: &SameToken) -> Result<()> {
1274 Ok(())
1275 }
1276
1277 fn signed_token(&mut self, _arg: &SignedToken) -> Result<()> {
1279 Ok(())
1280 }
1281
1282 fn step_token(&mut self, _arg: &StepToken) -> Result<()> {
1284 Ok(())
1285 }
1286
1287 fn string_token(&mut self, _arg: &StringToken) -> Result<()> {
1289 Ok(())
1290 }
1291
1292 fn struct_token(&mut self, _arg: &StructToken) -> Result<()> {
1294 Ok(())
1295 }
1296
1297 fn switch_token(&mut self, _arg: &SwitchToken) -> Result<()> {
1299 Ok(())
1300 }
1301
1302 fn tri_token(&mut self, _arg: &TriToken) -> Result<()> {
1304 Ok(())
1305 }
1306
1307 fn true_token(&mut self, _arg: &TrueToken) -> Result<()> {
1309 Ok(())
1310 }
1311
1312 fn type_token(&mut self, _arg: &TypeToken) -> Result<()> {
1314 Ok(())
1315 }
1316
1317 fn p8_token(&mut self, _arg: &P8Token) -> Result<()> {
1319 Ok(())
1320 }
1321
1322 fn p16_token(&mut self, _arg: &P16Token) -> Result<()> {
1324 Ok(())
1325 }
1326
1327 fn p32_token(&mut self, _arg: &P32Token) -> Result<()> {
1329 Ok(())
1330 }
1331
1332 fn p64_token(&mut self, _arg: &P64Token) -> Result<()> {
1334 Ok(())
1335 }
1336
1337 fn u8_token(&mut self, _arg: &U8Token) -> Result<()> {
1339 Ok(())
1340 }
1341
1342 fn u16_token(&mut self, _arg: &U16Token) -> Result<()> {
1344 Ok(())
1345 }
1346
1347 fn u32_token(&mut self, _arg: &U32Token) -> Result<()> {
1349 Ok(())
1350 }
1351
1352 fn u64_token(&mut self, _arg: &U64Token) -> Result<()> {
1354 Ok(())
1355 }
1356
1357 fn union_token(&mut self, _arg: &UnionToken) -> Result<()> {
1359 Ok(())
1360 }
1361
1362 fn unsafe_token(&mut self, _arg: &UnsafeToken) -> Result<()> {
1364 Ok(())
1365 }
1366
1367 fn var_token(&mut self, _arg: &VarToken) -> Result<()> {
1369 Ok(())
1370 }
1371
1372 fn dollar_identifier_token(&mut self, _arg: &DollarIdentifierToken) -> Result<()> {
1374 Ok(())
1375 }
1376
1377 fn identifier_token(&mut self, _arg: &IdentifierToken) -> Result<()> {
1379 Ok(())
1380 }
1381
1382 fn any_token(&mut self, _arg: &AnyToken) -> Result<()> {
1384 Ok(())
1385 }
1386
1387 fn start(&mut self, _arg: &Start) -> Result<()> {
1389 Ok(())
1390 }
1391
1392 fn string_literal(&mut self, _arg: &StringLiteral) -> Result<()> {
1394 Ok(())
1395 }
1396
1397 fn exponent(&mut self, _arg: &Exponent) -> Result<()> {
1399 Ok(())
1400 }
1401
1402 fn fixed_point(&mut self, _arg: &FixedPoint) -> Result<()> {
1404 Ok(())
1405 }
1406
1407 fn based(&mut self, _arg: &Based) -> Result<()> {
1409 Ok(())
1410 }
1411
1412 fn base_less(&mut self, _arg: &BaseLess) -> Result<()> {
1414 Ok(())
1415 }
1416
1417 fn all_bit(&mut self, _arg: &AllBit) -> Result<()> {
1419 Ok(())
1420 }
1421
1422 fn assignment_operator(&mut self, _arg: &AssignmentOperator) -> Result<()> {
1424 Ok(())
1425 }
1426
1427 fn diamond_operator(&mut self, _arg: &DiamondOperator) -> Result<()> {
1429 Ok(())
1430 }
1431
1432 fn operator01(&mut self, _arg: &Operator01) -> Result<()> {
1434 Ok(())
1435 }
1436
1437 fn operator02(&mut self, _arg: &Operator02) -> Result<()> {
1439 Ok(())
1440 }
1441
1442 fn operator03(&mut self, _arg: &Operator03) -> Result<()> {
1444 Ok(())
1445 }
1446
1447 fn operator04(&mut self, _arg: &Operator04) -> Result<()> {
1449 Ok(())
1450 }
1451
1452 fn operator05(&mut self, _arg: &Operator05) -> Result<()> {
1454 Ok(())
1455 }
1456
1457 fn operator06(&mut self, _arg: &Operator06) -> Result<()> {
1459 Ok(())
1460 }
1461
1462 fn operator07(&mut self, _arg: &Operator07) -> Result<()> {
1464 Ok(())
1465 }
1466
1467 fn operator08(&mut self, _arg: &Operator08) -> Result<()> {
1469 Ok(())
1470 }
1471
1472 fn unary_operator(&mut self, _arg: &UnaryOperator) -> Result<()> {
1474 Ok(())
1475 }
1476
1477 fn colon(&mut self, _arg: &Colon) -> Result<()> {
1479 Ok(())
1480 }
1481
1482 fn colon_colon_l_angle(&mut self, _arg: &ColonColonLAngle) -> Result<()> {
1484 Ok(())
1485 }
1486
1487 fn colon_colon(&mut self, _arg: &ColonColon) -> Result<()> {
1489 Ok(())
1490 }
1491
1492 fn comma(&mut self, _arg: &Comma) -> Result<()> {
1494 Ok(())
1495 }
1496
1497 fn dot_dot(&mut self, _arg: &DotDot) -> Result<()> {
1499 Ok(())
1500 }
1501
1502 fn dot_dot_equ(&mut self, _arg: &DotDotEqu) -> Result<()> {
1504 Ok(())
1505 }
1506
1507 fn dot(&mut self, _arg: &Dot) -> Result<()> {
1509 Ok(())
1510 }
1511
1512 fn equ(&mut self, _arg: &Equ) -> Result<()> {
1514 Ok(())
1515 }
1516
1517 fn hash_l_bracket(&mut self, _arg: &HashLBracket) -> Result<()> {
1519 Ok(())
1520 }
1521
1522 fn hash(&mut self, _arg: &Hash) -> Result<()> {
1524 Ok(())
1525 }
1526
1527 fn question(&mut self, _arg: &Question) -> Result<()> {
1529 Ok(())
1530 }
1531
1532 fn quote_l_brace(&mut self, _arg: &QuoteLBrace) -> Result<()> {
1534 Ok(())
1535 }
1536
1537 fn quote(&mut self, _arg: &Quote) -> Result<()> {
1539 Ok(())
1540 }
1541
1542 fn l_angle(&mut self, _arg: &LAngle) -> Result<()> {
1544 Ok(())
1545 }
1546
1547 fn embed_l_brace(&mut self, _arg: &EmbedLBrace) -> Result<()> {
1549 Ok(())
1550 }
1551
1552 fn escaped_l_brace(&mut self, _arg: &EscapedLBrace) -> Result<()> {
1554 Ok(())
1555 }
1556
1557 fn triple_l_brace(&mut self, _arg: &TripleLBrace) -> Result<()> {
1559 Ok(())
1560 }
1561
1562 fn l_brace(&mut self, _arg: &LBrace) -> Result<()> {
1564 Ok(())
1565 }
1566
1567 fn l_bracket(&mut self, _arg: &LBracket) -> Result<()> {
1569 Ok(())
1570 }
1571
1572 fn l_paren(&mut self, _arg: &LParen) -> Result<()> {
1574 Ok(())
1575 }
1576
1577 fn l_t_minus(&mut self, _arg: <Minus) -> Result<()> {
1579 Ok(())
1580 }
1581
1582 fn minus_colon(&mut self, _arg: &MinusColon) -> Result<()> {
1584 Ok(())
1585 }
1586
1587 fn minus_g_t(&mut self, _arg: &MinusGT) -> Result<()> {
1589 Ok(())
1590 }
1591
1592 fn plus_colon(&mut self, _arg: &PlusColon) -> Result<()> {
1594 Ok(())
1595 }
1596
1597 fn r_angle(&mut self, _arg: &RAngle) -> Result<()> {
1599 Ok(())
1600 }
1601
1602 fn embed_r_brace(&mut self, _arg: &EmbedRBrace) -> Result<()> {
1604 Ok(())
1605 }
1606
1607 fn escaped_r_brace(&mut self, _arg: &EscapedRBrace) -> Result<()> {
1609 Ok(())
1610 }
1611
1612 fn triple_r_brace(&mut self, _arg: &TripleRBrace) -> Result<()> {
1614 Ok(())
1615 }
1616
1617 fn r_brace(&mut self, _arg: &RBrace) -> Result<()> {
1619 Ok(())
1620 }
1621
1622 fn r_bracket(&mut self, _arg: &RBracket) -> Result<()> {
1624 Ok(())
1625 }
1626
1627 fn r_paren(&mut self, _arg: &RParen) -> Result<()> {
1629 Ok(())
1630 }
1631
1632 fn semicolon(&mut self, _arg: &Semicolon) -> Result<()> {
1634 Ok(())
1635 }
1636
1637 fn star(&mut self, _arg: &Star) -> Result<()> {
1639 Ok(())
1640 }
1641
1642 fn alias(&mut self, _arg: &Alias) -> Result<()> {
1644 Ok(())
1645 }
1646
1647 fn always_comb(&mut self, _arg: &AlwaysComb) -> Result<()> {
1649 Ok(())
1650 }
1651
1652 fn always_ff(&mut self, _arg: &AlwaysFf) -> Result<()> {
1654 Ok(())
1655 }
1656
1657 fn r#as(&mut self, _arg: &As) -> Result<()> {
1659 Ok(())
1660 }
1661
1662 fn assign(&mut self, _arg: &Assign) -> Result<()> {
1664 Ok(())
1665 }
1666
1667 fn bind(&mut self, _arg: &Bind) -> Result<()> {
1669 Ok(())
1670 }
1671
1672 fn bit(&mut self, _arg: &Bit) -> Result<()> {
1674 Ok(())
1675 }
1676
1677 fn block(&mut self, _arg: &Block) -> Result<()> {
1679 Ok(())
1680 }
1681
1682 fn b_bool(&mut self, _arg: &BBool) -> Result<()> {
1684 Ok(())
1685 }
1686
1687 fn l_bool(&mut self, _arg: &LBool) -> Result<()> {
1689 Ok(())
1690 }
1691
1692 fn r#break(&mut self, _arg: &Break) -> Result<()> {
1694 Ok(())
1695 }
1696
1697 fn case(&mut self, _arg: &Case) -> Result<()> {
1699 Ok(())
1700 }
1701
1702 fn clock(&mut self, _arg: &Clock) -> Result<()> {
1704 Ok(())
1705 }
1706
1707 fn clock_posedge(&mut self, _arg: &ClockPosedge) -> Result<()> {
1709 Ok(())
1710 }
1711
1712 fn clock_negedge(&mut self, _arg: &ClockNegedge) -> Result<()> {
1714 Ok(())
1715 }
1716
1717 fn connect(&mut self, _arg: &Connect) -> Result<()> {
1719 Ok(())
1720 }
1721
1722 fn r#const(&mut self, _arg: &Const) -> Result<()> {
1724 Ok(())
1725 }
1726
1727 fn converse(&mut self, _arg: &Converse) -> Result<()> {
1729 Ok(())
1730 }
1731
1732 fn defaul(&mut self, _arg: &Defaul) -> Result<()> {
1734 Ok(())
1735 }
1736
1737 fn r#else(&mut self, _arg: &Else) -> Result<()> {
1739 Ok(())
1740 }
1741
1742 fn embed(&mut self, _arg: &Embed) -> Result<()> {
1744 Ok(())
1745 }
1746
1747 fn r#enum(&mut self, _arg: &Enum) -> Result<()> {
1749 Ok(())
1750 }
1751
1752 fn f32(&mut self, _arg: &F32) -> Result<()> {
1754 Ok(())
1755 }
1756
1757 fn f64(&mut self, _arg: &F64) -> Result<()> {
1759 Ok(())
1760 }
1761
1762 fn r#false(&mut self, _arg: &False) -> Result<()> {
1764 Ok(())
1765 }
1766
1767 fn r#final(&mut self, _arg: &Final) -> Result<()> {
1769 Ok(())
1770 }
1771
1772 fn r#for(&mut self, _arg: &For) -> Result<()> {
1774 Ok(())
1775 }
1776
1777 fn function(&mut self, _arg: &Function) -> Result<()> {
1779 Ok(())
1780 }
1781
1782 fn i8(&mut self, _arg: &I8) -> Result<()> {
1784 Ok(())
1785 }
1786
1787 fn i16(&mut self, _arg: &I16) -> Result<()> {
1789 Ok(())
1790 }
1791
1792 fn i32(&mut self, _arg: &I32) -> Result<()> {
1794 Ok(())
1795 }
1796
1797 fn i64(&mut self, _arg: &I64) -> Result<()> {
1799 Ok(())
1800 }
1801
1802 fn r#if(&mut self, _arg: &If) -> Result<()> {
1804 Ok(())
1805 }
1806
1807 fn if_reset(&mut self, _arg: &IfReset) -> Result<()> {
1809 Ok(())
1810 }
1811
1812 fn import(&mut self, _arg: &Import) -> Result<()> {
1814 Ok(())
1815 }
1816
1817 fn r#in(&mut self, _arg: &In) -> Result<()> {
1819 Ok(())
1820 }
1821
1822 fn include(&mut self, _arg: &Include) -> Result<()> {
1824 Ok(())
1825 }
1826
1827 fn initial(&mut self, _arg: &Initial) -> Result<()> {
1829 Ok(())
1830 }
1831
1832 fn inout(&mut self, _arg: &Inout) -> Result<()> {
1834 Ok(())
1835 }
1836
1837 fn input(&mut self, _arg: &Input) -> Result<()> {
1839 Ok(())
1840 }
1841
1842 fn inside(&mut self, _arg: &Inside) -> Result<()> {
1844 Ok(())
1845 }
1846
1847 fn inst(&mut self, _arg: &Inst) -> Result<()> {
1849 Ok(())
1850 }
1851
1852 fn interface(&mut self, _arg: &Interface) -> Result<()> {
1854 Ok(())
1855 }
1856
1857 fn r#let(&mut self, _arg: &Let) -> Result<()> {
1859 Ok(())
1860 }
1861
1862 fn logic(&mut self, _arg: &Logic) -> Result<()> {
1864 Ok(())
1865 }
1866
1867 fn lsb(&mut self, _arg: &Lsb) -> Result<()> {
1869 Ok(())
1870 }
1871
1872 fn modport(&mut self, _arg: &Modport) -> Result<()> {
1874 Ok(())
1875 }
1876
1877 fn module(&mut self, _arg: &Module) -> Result<()> {
1879 Ok(())
1880 }
1881
1882 fn msb(&mut self, _arg: &Msb) -> Result<()> {
1884 Ok(())
1885 }
1886
1887 fn output(&mut self, _arg: &Output) -> Result<()> {
1889 Ok(())
1890 }
1891
1892 fn outside(&mut self, _arg: &Outside) -> Result<()> {
1894 Ok(())
1895 }
1896
1897 fn package(&mut self, _arg: &Package) -> Result<()> {
1899 Ok(())
1900 }
1901
1902 fn param(&mut self, _arg: &Param) -> Result<()> {
1904 Ok(())
1905 }
1906
1907 fn proto(&mut self, _arg: &Proto) -> Result<()> {
1909 Ok(())
1910 }
1911
1912 fn r#pub(&mut self, _arg: &Pub) -> Result<()> {
1914 Ok(())
1915 }
1916
1917 fn repeat(&mut self, _arg: &Repeat) -> Result<()> {
1919 Ok(())
1920 }
1921
1922 fn reset(&mut self, _arg: &Reset) -> Result<()> {
1924 Ok(())
1925 }
1926
1927 fn reset_async_high(&mut self, _arg: &ResetAsyncHigh) -> Result<()> {
1929 Ok(())
1930 }
1931
1932 fn reset_async_low(&mut self, _arg: &ResetAsyncLow) -> Result<()> {
1934 Ok(())
1935 }
1936
1937 fn reset_sync_high(&mut self, _arg: &ResetSyncHigh) -> Result<()> {
1939 Ok(())
1940 }
1941
1942 fn reset_sync_low(&mut self, _arg: &ResetSyncLow) -> Result<()> {
1944 Ok(())
1945 }
1946
1947 fn r#return(&mut self, _arg: &Return) -> Result<()> {
1949 Ok(())
1950 }
1951
1952 fn rev(&mut self, _arg: &Rev) -> Result<()> {
1954 Ok(())
1955 }
1956
1957 fn same(&mut self, _arg: &Same) -> Result<()> {
1959 Ok(())
1960 }
1961
1962 fn signed(&mut self, _arg: &Signed) -> Result<()> {
1964 Ok(())
1965 }
1966
1967 fn step(&mut self, _arg: &Step) -> Result<()> {
1969 Ok(())
1970 }
1971
1972 fn strin(&mut self, _arg: &Strin) -> Result<()> {
1974 Ok(())
1975 }
1976
1977 fn r#struct(&mut self, _arg: &Struct) -> Result<()> {
1979 Ok(())
1980 }
1981
1982 fn switch(&mut self, _arg: &Switch) -> Result<()> {
1984 Ok(())
1985 }
1986
1987 fn tri(&mut self, _arg: &Tri) -> Result<()> {
1989 Ok(())
1990 }
1991
1992 fn r#true(&mut self, _arg: &True) -> Result<()> {
1994 Ok(())
1995 }
1996
1997 fn r#type(&mut self, _arg: &Type) -> Result<()> {
1999 Ok(())
2000 }
2001
2002 fn p8(&mut self, _arg: &P8) -> Result<()> {
2004 Ok(())
2005 }
2006
2007 fn p16(&mut self, _arg: &P16) -> Result<()> {
2009 Ok(())
2010 }
2011
2012 fn p32(&mut self, _arg: &P32) -> Result<()> {
2014 Ok(())
2015 }
2016
2017 fn p64(&mut self, _arg: &P64) -> Result<()> {
2019 Ok(())
2020 }
2021
2022 fn u8(&mut self, _arg: &U8) -> Result<()> {
2024 Ok(())
2025 }
2026
2027 fn u16(&mut self, _arg: &U16) -> Result<()> {
2029 Ok(())
2030 }
2031
2032 fn u32(&mut self, _arg: &U32) -> Result<()> {
2034 Ok(())
2035 }
2036
2037 fn u64(&mut self, _arg: &U64) -> Result<()> {
2039 Ok(())
2040 }
2041
2042 fn r#union(&mut self, _arg: &Union) -> Result<()> {
2044 Ok(())
2045 }
2046
2047 fn r#unsafe(&mut self, _arg: &Unsafe) -> Result<()> {
2049 Ok(())
2050 }
2051
2052 fn var(&mut self, _arg: &Var) -> Result<()> {
2054 Ok(())
2055 }
2056
2057 fn dollar_identifier(&mut self, _arg: &DollarIdentifier) -> Result<()> {
2059 Ok(())
2060 }
2061
2062 fn identifier(&mut self, _arg: &Identifier) -> Result<()> {
2064 Ok(())
2065 }
2066
2067 fn any(&mut self, _arg: &Any) -> Result<()> {
2069 Ok(())
2070 }
2071
2072 fn number(&mut self, _arg: &Number) -> Result<()> {
2074 Ok(())
2075 }
2076
2077 fn integral_number(&mut self, _arg: &IntegralNumber) -> Result<()> {
2079 Ok(())
2080 }
2081
2082 fn real_number(&mut self, _arg: &RealNumber) -> Result<()> {
2084 Ok(())
2085 }
2086
2087 fn hierarchical_identifier(&mut self, _arg: &HierarchicalIdentifier) -> Result<()> {
2089 Ok(())
2090 }
2091
2092 fn scoped_identifier(&mut self, _arg: &ScopedIdentifier) -> Result<()> {
2094 Ok(())
2095 }
2096
2097 fn expression_identifier(&mut self, _arg: &ExpressionIdentifier) -> Result<()> {
2099 Ok(())
2100 }
2101
2102 fn generic_arg_identifier(&mut self, _arg: &GenericArgIdentifier) -> Result<()> {
2104 Ok(())
2105 }
2106
2107 fn expression(&mut self, _arg: &Expression) -> Result<()> {
2109 Ok(())
2110 }
2111
2112 fn if_expression(&mut self, _arg: &IfExpression) -> Result<()> {
2114 Ok(())
2115 }
2116
2117 fn expression01(&mut self, _arg: &Expression01) -> Result<()> {
2119 Ok(())
2120 }
2121
2122 fn expression02(&mut self, _arg: &Expression02) -> Result<()> {
2124 Ok(())
2125 }
2126
2127 fn expression01_op(&mut self, _arg: &Expression01Op) -> Result<()> {
2129 Ok(())
2130 }
2131
2132 fn expression02_op(&mut self, _arg: &Expression02Op) -> Result<()> {
2134 Ok(())
2135 }
2136
2137 fn factor(&mut self, _arg: &Factor) -> Result<()> {
2139 Ok(())
2140 }
2141
2142 fn boolean_literal(&mut self, _arg: &BooleanLiteral) -> Result<()> {
2144 Ok(())
2145 }
2146
2147 fn identifier_factor(&mut self, _arg: &IdentifierFactor) -> Result<()> {
2149 Ok(())
2150 }
2151
2152 fn factor_type_factor(&mut self, _arg: &FactorTypeFactor) -> Result<()> {
2154 Ok(())
2155 }
2156
2157 fn function_call(&mut self, _arg: &FunctionCall) -> Result<()> {
2159 Ok(())
2160 }
2161
2162 fn argument_list(&mut self, _arg: &ArgumentList) -> Result<()> {
2164 Ok(())
2165 }
2166
2167 fn argument_item(&mut self, _arg: &ArgumentItem) -> Result<()> {
2169 Ok(())
2170 }
2171
2172 fn argument_expression(&mut self, _arg: &ArgumentExpression) -> Result<()> {
2174 Ok(())
2175 }
2176
2177 fn struct_constructor(&mut self, _arg: &StructConstructor) -> Result<()> {
2179 Ok(())
2180 }
2181
2182 fn struct_constructor_list(&mut self, _arg: &StructConstructorList) -> Result<()> {
2184 Ok(())
2185 }
2186
2187 fn struct_constructor_item(&mut self, _arg: &StructConstructorItem) -> Result<()> {
2189 Ok(())
2190 }
2191
2192 fn concatenation_list(&mut self, _arg: &ConcatenationList) -> Result<()> {
2194 Ok(())
2195 }
2196
2197 fn concatenation_item(&mut self, _arg: &ConcatenationItem) -> Result<()> {
2199 Ok(())
2200 }
2201
2202 fn array_literal_list(&mut self, _arg: &ArrayLiteralList) -> Result<()> {
2204 Ok(())
2205 }
2206
2207 fn array_literal_item(&mut self, _arg: &ArrayLiteralItem) -> Result<()> {
2209 Ok(())
2210 }
2211
2212 fn case_expression(&mut self, _arg: &CaseExpression) -> Result<()> {
2214 Ok(())
2215 }
2216
2217 fn switch_expression(&mut self, _arg: &SwitchExpression) -> Result<()> {
2219 Ok(())
2220 }
2221
2222 fn type_expression(&mut self, _arg: &TypeExpression) -> Result<()> {
2224 Ok(())
2225 }
2226
2227 fn inside_expression(&mut self, _arg: &InsideExpression) -> Result<()> {
2229 Ok(())
2230 }
2231
2232 fn outside_expression(&mut self, _arg: &OutsideExpression) -> Result<()> {
2234 Ok(())
2235 }
2236
2237 fn range_list(&mut self, _arg: &RangeList) -> Result<()> {
2239 Ok(())
2240 }
2241
2242 fn range_item(&mut self, _arg: &RangeItem) -> Result<()> {
2244 Ok(())
2245 }
2246
2247 fn select(&mut self, _arg: &Select) -> Result<()> {
2249 Ok(())
2250 }
2251
2252 fn select_operator(&mut self, _arg: &SelectOperator) -> Result<()> {
2254 Ok(())
2255 }
2256
2257 fn width(&mut self, _arg: &Width) -> Result<()> {
2259 Ok(())
2260 }
2261
2262 fn array(&mut self, _arg: &Array) -> Result<()> {
2264 Ok(())
2265 }
2266
2267 fn range(&mut self, _arg: &Range) -> Result<()> {
2269 Ok(())
2270 }
2271
2272 fn range_operator(&mut self, _arg: &RangeOperator) -> Result<()> {
2274 Ok(())
2275 }
2276
2277 fn fixed_type(&mut self, _arg: &FixedType) -> Result<()> {
2279 Ok(())
2280 }
2281
2282 fn variable_type(&mut self, _arg: &VariableType) -> Result<()> {
2284 Ok(())
2285 }
2286
2287 fn user_defined_type(&mut self, _arg: &UserDefinedType) -> Result<()> {
2289 Ok(())
2290 }
2291
2292 fn type_modifier(&mut self, _arg: &TypeModifier) -> Result<()> {
2294 Ok(())
2295 }
2296
2297 fn factor_type(&mut self, _arg: &FactorType) -> Result<()> {
2299 Ok(())
2300 }
2301
2302 fn scalar_type(&mut self, _arg: &ScalarType) -> Result<()> {
2304 Ok(())
2305 }
2306
2307 fn array_type(&mut self, _arg: &ArrayType) -> Result<()> {
2309 Ok(())
2310 }
2311
2312 fn casting_type(&mut self, _arg: &CastingType) -> Result<()> {
2314 Ok(())
2315 }
2316
2317 fn clock_domain(&mut self, _arg: &ClockDomain) -> Result<()> {
2319 Ok(())
2320 }
2321
2322 fn statement_block(&mut self, _arg: &StatementBlock) -> Result<()> {
2324 Ok(())
2325 }
2326
2327 fn statement_block_group(&mut self, _arg: &StatementBlockGroup) -> Result<()> {
2329 Ok(())
2330 }
2331
2332 fn statement_block_item(&mut self, _arg: &StatementBlockItem) -> Result<()> {
2334 Ok(())
2335 }
2336
2337 fn statement(&mut self, _arg: &Statement) -> Result<()> {
2339 Ok(())
2340 }
2341
2342 fn let_statement(&mut self, _arg: &LetStatement) -> Result<()> {
2344 Ok(())
2345 }
2346
2347 fn identifier_statement(&mut self, _arg: &IdentifierStatement) -> Result<()> {
2349 Ok(())
2350 }
2351
2352 fn concatenation_assignment(&mut self, _arg: &ConcatenationAssignment) -> Result<()> {
2354 Ok(())
2355 }
2356
2357 fn assignment(&mut self, _arg: &Assignment) -> Result<()> {
2359 Ok(())
2360 }
2361
2362 fn if_statement(&mut self, _arg: &IfStatement) -> Result<()> {
2364 Ok(())
2365 }
2366
2367 fn if_reset_statement(&mut self, _arg: &IfResetStatement) -> Result<()> {
2369 Ok(())
2370 }
2371
2372 fn return_statement(&mut self, _arg: &ReturnStatement) -> Result<()> {
2374 Ok(())
2375 }
2376
2377 fn break_statement(&mut self, _arg: &BreakStatement) -> Result<()> {
2379 Ok(())
2380 }
2381
2382 fn for_statement(&mut self, _arg: &ForStatement) -> Result<()> {
2384 Ok(())
2385 }
2386
2387 fn case_statement(&mut self, _arg: &CaseStatement) -> Result<()> {
2389 Ok(())
2390 }
2391
2392 fn case_item(&mut self, _arg: &CaseItem) -> Result<()> {
2394 Ok(())
2395 }
2396
2397 fn case_condition(&mut self, _arg: &CaseCondition) -> Result<()> {
2399 Ok(())
2400 }
2401
2402 fn switch_statement(&mut self, _arg: &SwitchStatement) -> Result<()> {
2404 Ok(())
2405 }
2406
2407 fn switch_item(&mut self, _arg: &SwitchItem) -> Result<()> {
2409 Ok(())
2410 }
2411
2412 fn switch_condition(&mut self, _arg: &SwitchCondition) -> Result<()> {
2414 Ok(())
2415 }
2416
2417 fn attribute(&mut self, _arg: &Attribute) -> Result<()> {
2419 Ok(())
2420 }
2421
2422 fn attribute_list(&mut self, _arg: &AttributeList) -> Result<()> {
2424 Ok(())
2425 }
2426
2427 fn attribute_item(&mut self, _arg: &AttributeItem) -> Result<()> {
2429 Ok(())
2430 }
2431
2432 fn let_declaration(&mut self, _arg: &LetDeclaration) -> Result<()> {
2434 Ok(())
2435 }
2436
2437 fn var_declaration(&mut self, _arg: &VarDeclaration) -> Result<()> {
2439 Ok(())
2440 }
2441
2442 fn const_declaration(&mut self, _arg: &ConstDeclaration) -> Result<()> {
2444 Ok(())
2445 }
2446
2447 fn type_def_declaration(&mut self, _arg: &TypeDefDeclaration) -> Result<()> {
2449 Ok(())
2450 }
2451
2452 fn always_ff_declaration(&mut self, _arg: &AlwaysFfDeclaration) -> Result<()> {
2454 Ok(())
2455 }
2456
2457 fn always_ff_event_list(&mut self, _arg: &AlwaysFfEventList) -> Result<()> {
2459 Ok(())
2460 }
2461
2462 fn always_ff_clock(&mut self, _arg: &AlwaysFfClock) -> Result<()> {
2464 Ok(())
2465 }
2466
2467 fn always_ff_reset(&mut self, _arg: &AlwaysFfReset) -> Result<()> {
2469 Ok(())
2470 }
2471
2472 fn always_comb_declaration(&mut self, _arg: &AlwaysCombDeclaration) -> Result<()> {
2474 Ok(())
2475 }
2476
2477 fn assign_declaration(&mut self, _arg: &AssignDeclaration) -> Result<()> {
2479 Ok(())
2480 }
2481
2482 fn assign_destination(&mut self, _arg: &AssignDestination) -> Result<()> {
2484 Ok(())
2485 }
2486
2487 fn assign_concatenation_list(&mut self, _arg: &AssignConcatenationList) -> Result<()> {
2489 Ok(())
2490 }
2491
2492 fn assign_concatenation_item(&mut self, _arg: &AssignConcatenationItem) -> Result<()> {
2494 Ok(())
2495 }
2496
2497 fn connect_declaration(&mut self, _arg: &ConnectDeclaration) -> Result<()> {
2499 Ok(())
2500 }
2501
2502 fn modport_declaration(&mut self, _arg: &ModportDeclaration) -> Result<()> {
2504 Ok(())
2505 }
2506
2507 fn modport_list(&mut self, _arg: &ModportList) -> Result<()> {
2509 Ok(())
2510 }
2511
2512 fn modport_group(&mut self, _arg: &ModportGroup) -> Result<()> {
2514 Ok(())
2515 }
2516
2517 fn modport_item(&mut self, _arg: &ModportItem) -> Result<()> {
2519 Ok(())
2520 }
2521
2522 fn modport_default(&mut self, _arg: &ModportDefault) -> Result<()> {
2524 Ok(())
2525 }
2526
2527 fn modport_default_list(&mut self, _arg: &ModportDefaultList) -> Result<()> {
2529 Ok(())
2530 }
2531
2532 fn enum_declaration(&mut self, _arg: &EnumDeclaration) -> Result<()> {
2534 Ok(())
2535 }
2536
2537 fn enum_list(&mut self, _arg: &EnumList) -> Result<()> {
2539 Ok(())
2540 }
2541
2542 fn enum_group(&mut self, _arg: &EnumGroup) -> Result<()> {
2544 Ok(())
2545 }
2546
2547 fn enum_item(&mut self, _arg: &EnumItem) -> Result<()> {
2549 Ok(())
2550 }
2551
2552 fn struct_union(&mut self, _arg: &StructUnion) -> Result<()> {
2554 Ok(())
2555 }
2556
2557 fn struct_union_declaration(&mut self, _arg: &StructUnionDeclaration) -> Result<()> {
2559 Ok(())
2560 }
2561
2562 fn struct_union_list(&mut self, _arg: &StructUnionList) -> Result<()> {
2564 Ok(())
2565 }
2566
2567 fn struct_union_group(&mut self, _arg: &StructUnionGroup) -> Result<()> {
2569 Ok(())
2570 }
2571
2572 fn struct_union_item(&mut self, _arg: &StructUnionItem) -> Result<()> {
2574 Ok(())
2575 }
2576
2577 fn initial_declaration(&mut self, _arg: &InitialDeclaration) -> Result<()> {
2579 Ok(())
2580 }
2581
2582 fn final_declaration(&mut self, _arg: &FinalDeclaration) -> Result<()> {
2584 Ok(())
2585 }
2586
2587 fn inst_declaration(&mut self, _arg: &InstDeclaration) -> Result<()> {
2589 Ok(())
2590 }
2591
2592 fn bind_declaration(&mut self, _arg: &BindDeclaration) -> Result<()> {
2594 Ok(())
2595 }
2596
2597 fn component_instantiation(&mut self, _arg: &ComponentInstantiation) -> Result<()> {
2599 Ok(())
2600 }
2601
2602 fn inst_parameter(&mut self, _arg: &InstParameter) -> Result<()> {
2604 Ok(())
2605 }
2606
2607 fn inst_parameter_list(&mut self, _arg: &InstParameterList) -> Result<()> {
2609 Ok(())
2610 }
2611
2612 fn inst_parameter_group(&mut self, _arg: &InstParameterGroup) -> Result<()> {
2614 Ok(())
2615 }
2616
2617 fn inst_parameter_item(&mut self, _arg: &InstParameterItem) -> Result<()> {
2619 Ok(())
2620 }
2621
2622 fn inst_port(&mut self, _arg: &InstPort) -> Result<()> {
2624 Ok(())
2625 }
2626
2627 fn inst_port_list(&mut self, _arg: &InstPortList) -> Result<()> {
2629 Ok(())
2630 }
2631
2632 fn inst_port_group(&mut self, _arg: &InstPortGroup) -> Result<()> {
2634 Ok(())
2635 }
2636
2637 fn inst_port_item(&mut self, _arg: &InstPortItem) -> Result<()> {
2639 Ok(())
2640 }
2641
2642 fn with_parameter(&mut self, _arg: &WithParameter) -> Result<()> {
2644 Ok(())
2645 }
2646
2647 fn with_parameter_list(&mut self, _arg: &WithParameterList) -> Result<()> {
2649 Ok(())
2650 }
2651
2652 fn with_parameter_group(&mut self, _arg: &WithParameterGroup) -> Result<()> {
2654 Ok(())
2655 }
2656
2657 fn with_parameter_item(&mut self, _arg: &WithParameterItem) -> Result<()> {
2659 Ok(())
2660 }
2661
2662 fn generic_bound(&mut self, _arg: &GenericBound) -> Result<()> {
2664 Ok(())
2665 }
2666
2667 fn with_generic_parameter(&mut self, _arg: &WithGenericParameter) -> Result<()> {
2669 Ok(())
2670 }
2671
2672 fn with_generic_parameter_list(&mut self, _arg: &WithGenericParameterList) -> Result<()> {
2674 Ok(())
2675 }
2676
2677 fn with_generic_parameter_item(&mut self, _arg: &WithGenericParameterItem) -> Result<()> {
2679 Ok(())
2680 }
2681
2682 fn generic_proto_bound(&mut self, _arg: &GenericProtoBound) -> Result<()> {
2684 Ok(())
2685 }
2686
2687 fn with_generic_argument(&mut self, _arg: &WithGenericArgument) -> Result<()> {
2689 Ok(())
2690 }
2691
2692 fn with_generic_argument_list(&mut self, _arg: &WithGenericArgumentList) -> Result<()> {
2694 Ok(())
2695 }
2696
2697 fn with_generic_argument_item(&mut self, _arg: &WithGenericArgumentItem) -> Result<()> {
2699 Ok(())
2700 }
2701
2702 fn port_declaration(&mut self, _arg: &PortDeclaration) -> Result<()> {
2704 Ok(())
2705 }
2706
2707 fn port_declaration_list(&mut self, _arg: &PortDeclarationList) -> Result<()> {
2709 Ok(())
2710 }
2711
2712 fn port_declaration_group(&mut self, _arg: &PortDeclarationGroup) -> Result<()> {
2714 Ok(())
2715 }
2716
2717 fn port_declaration_item(&mut self, _arg: &PortDeclarationItem) -> Result<()> {
2719 Ok(())
2720 }
2721
2722 fn port_type_concrete(&mut self, _arg: &PortTypeConcrete) -> Result<()> {
2724 Ok(())
2725 }
2726
2727 fn port_default_value(&mut self, _arg: &PortDefaultValue) -> Result<()> {
2729 Ok(())
2730 }
2731
2732 fn port_type_abstract(&mut self, _arg: &PortTypeAbstract) -> Result<()> {
2734 Ok(())
2735 }
2736
2737 fn direction(&mut self, _arg: &Direction) -> Result<()> {
2739 Ok(())
2740 }
2741
2742 fn function_declaration(&mut self, _arg: &FunctionDeclaration) -> Result<()> {
2744 Ok(())
2745 }
2746
2747 fn import_declaration(&mut self, _arg: &ImportDeclaration) -> Result<()> {
2749 Ok(())
2750 }
2751
2752 fn unsafe_block(&mut self, _arg: &UnsafeBlock) -> Result<()> {
2754 Ok(())
2755 }
2756
2757 fn module_declaration(&mut self, _arg: &ModuleDeclaration) -> Result<()> {
2759 Ok(())
2760 }
2761
2762 fn module_group(&mut self, _arg: &ModuleGroup) -> Result<()> {
2764 Ok(())
2765 }
2766
2767 fn module_item(&mut self, _arg: &ModuleItem) -> Result<()> {
2769 Ok(())
2770 }
2771
2772 fn interface_declaration(&mut self, _arg: &InterfaceDeclaration) -> Result<()> {
2774 Ok(())
2775 }
2776
2777 fn interface_group(&mut self, _arg: &InterfaceGroup) -> Result<()> {
2779 Ok(())
2780 }
2781
2782 fn interface_item(&mut self, _arg: &InterfaceItem) -> Result<()> {
2784 Ok(())
2785 }
2786
2787 fn generate_if_declaration(&mut self, _arg: &GenerateIfDeclaration) -> Result<()> {
2789 Ok(())
2790 }
2791
2792 fn generate_for_declaration(&mut self, _arg: &GenerateForDeclaration) -> Result<()> {
2794 Ok(())
2795 }
2796
2797 fn generate_block_declaration(&mut self, _arg: &GenerateBlockDeclaration) -> Result<()> {
2799 Ok(())
2800 }
2801
2802 fn generate_named_block(&mut self, _arg: &GenerateNamedBlock) -> Result<()> {
2804 Ok(())
2805 }
2806
2807 fn generate_optional_named_block(&mut self, _arg: &GenerateOptionalNamedBlock) -> Result<()> {
2809 Ok(())
2810 }
2811
2812 fn generate_group(&mut self, _arg: &GenerateGroup) -> Result<()> {
2814 Ok(())
2815 }
2816
2817 fn generate_item(&mut self, _arg: &GenerateItem) -> Result<()> {
2819 Ok(())
2820 }
2821
2822 fn package_declaration(&mut self, _arg: &PackageDeclaration) -> Result<()> {
2824 Ok(())
2825 }
2826
2827 fn package_group(&mut self, _arg: &PackageGroup) -> Result<()> {
2829 Ok(())
2830 }
2831
2832 fn package_item(&mut self, _arg: &PackageItem) -> Result<()> {
2834 Ok(())
2835 }
2836
2837 fn alias_declaration(&mut self, _arg: &AliasDeclaration) -> Result<()> {
2839 Ok(())
2840 }
2841
2842 fn proto_declaration(&mut self, _arg: &ProtoDeclaration) -> Result<()> {
2844 Ok(())
2845 }
2846
2847 fn proto_module_declaration(&mut self, _arg: &ProtoModuleDeclaration) -> Result<()> {
2849 Ok(())
2850 }
2851
2852 fn proto_interface_declaration(&mut self, _arg: &ProtoInterfaceDeclaration) -> Result<()> {
2854 Ok(())
2855 }
2856
2857 fn proto_interface_item(&mut self, _arg: &ProtoInterfaceItem) -> Result<()> {
2859 Ok(())
2860 }
2861
2862 fn proto_package_declaration(&mut self, _arg: &ProtoPackageDeclaration) -> Result<()> {
2864 Ok(())
2865 }
2866
2867 fn proto_pacakge_item(&mut self, _arg: &ProtoPacakgeItem) -> Result<()> {
2869 Ok(())
2870 }
2871
2872 fn proto_const_declaration(&mut self, _arg: &ProtoConstDeclaration) -> Result<()> {
2874 Ok(())
2875 }
2876
2877 fn proto_type_def_declaration(&mut self, _arg: &ProtoTypeDefDeclaration) -> Result<()> {
2879 Ok(())
2880 }
2881
2882 fn proto_function_declaration(&mut self, _arg: &ProtoFunctionDeclaration) -> Result<()> {
2884 Ok(())
2885 }
2886
2887 fn proto_alias_declaration(&mut self, _arg: &ProtoAliasDeclaration) -> Result<()> {
2889 Ok(())
2890 }
2891
2892 fn embed_declaration(&mut self, _arg: &EmbedDeclaration) -> Result<()> {
2894 Ok(())
2895 }
2896
2897 fn embed_content(&mut self, _arg: &EmbedContent) -> Result<()> {
2899 Ok(())
2900 }
2901
2902 fn embed_scoped_identifier(&mut self, _arg: &EmbedScopedIdentifier) -> Result<()> {
2904 Ok(())
2905 }
2906
2907 fn embed_item(&mut self, _arg: &EmbedItem) -> Result<()> {
2909 Ok(())
2910 }
2911
2912 fn include_declaration(&mut self, _arg: &IncludeDeclaration) -> Result<()> {
2914 Ok(())
2915 }
2916
2917 fn description_group(&mut self, _arg: &DescriptionGroup) -> Result<()> {
2919 Ok(())
2920 }
2921
2922 fn description_item(&mut self, _arg: &DescriptionItem) -> Result<()> {
2924 Ok(())
2925 }
2926
2927 fn public_description_item(&mut self, _arg: &PublicDescriptionItem) -> Result<()> {
2929 Ok(())
2930 }
2931
2932 fn veryl(&mut self, _arg: &Veryl) -> Result<()> {
2934 Ok(())
2935 }
2936
2937 fn on_comment(&mut self, _token: Token<'_>) {}
2940}
2941
2942#[allow(dead_code)]
2953#[derive(Debug, Clone)]
2954pub struct NumberIntegralNumber {
2955 pub integral_number: Box<IntegralNumber>,
2956}
2957
2958#[allow(dead_code)]
2964#[derive(Debug, Clone)]
2965pub struct NumberRealNumber {
2966 pub real_number: Box<RealNumber>,
2967}
2968
2969#[allow(dead_code)]
2975#[derive(Debug, Clone)]
2976pub struct IntegralNumberBased {
2977 pub based: Box<Based>,
2978}
2979
2980#[allow(dead_code)]
2986#[derive(Debug, Clone)]
2987pub struct IntegralNumberBaseLess {
2988 pub base_less: Box<BaseLess>,
2989}
2990
2991#[allow(dead_code)]
2997#[derive(Debug, Clone)]
2998pub struct IntegralNumberAllBit {
2999 pub all_bit: Box<AllBit>,
3000}
3001
3002#[allow(dead_code)]
3008#[derive(Debug, Clone)]
3009pub struct RealNumberFixedPoint {
3010 pub fixed_point: Box<FixedPoint>,
3011}
3012
3013#[allow(dead_code)]
3019#[derive(Debug, Clone)]
3020pub struct RealNumberExponent {
3021 pub exponent: Box<Exponent>,
3022}
3023
3024#[allow(dead_code)]
3030#[derive(Debug, Clone)]
3031pub struct ScopedIdentifierGroupDollarIdentifier {
3032 pub dollar_identifier: Box<DollarIdentifier>,
3033}
3034
3035#[allow(dead_code)]
3041#[derive(Debug, Clone)]
3042pub struct ScopedIdentifierGroupIdentifierScopedIdentifierOpt {
3043 pub identifier: Box<Identifier>,
3044 pub scoped_identifier_opt: Option<ScopedIdentifierOpt>,
3045}
3046
3047#[allow(dead_code)]
3053#[derive(Debug, Clone)]
3054pub struct Expression01OpOperator01 {
3055 pub operator01: Box<Operator01>,
3056}
3057
3058#[allow(dead_code)]
3064#[derive(Debug, Clone)]
3065pub struct Expression01OpOperator02 {
3066 pub operator02: Box<Operator02>,
3067}
3068
3069#[allow(dead_code)]
3075#[derive(Debug, Clone)]
3076pub struct Expression01OpOperator03 {
3077 pub operator03: Box<Operator03>,
3078}
3079
3080#[allow(dead_code)]
3086#[derive(Debug, Clone)]
3087pub struct Expression01OpOperator04 {
3088 pub operator04: Box<Operator04>,
3089}
3090
3091#[allow(dead_code)]
3097#[derive(Debug, Clone)]
3098pub struct Expression01OpOperator05 {
3099 pub operator05: Box<Operator05>,
3100}
3101
3102#[allow(dead_code)]
3108#[derive(Debug, Clone)]
3109pub struct Expression01OpOperator06 {
3110 pub operator06: Box<Operator06>,
3111}
3112
3113#[allow(dead_code)]
3119#[derive(Debug, Clone)]
3120pub struct Expression01OpOperator07 {
3121 pub operator07: Box<Operator07>,
3122}
3123
3124#[allow(dead_code)]
3130#[derive(Debug, Clone)]
3131pub struct Expression01OpStar {
3132 pub star: Box<Star>,
3133}
3134
3135#[allow(dead_code)]
3141#[derive(Debug, Clone)]
3142pub struct Expression01OpOperator08 {
3143 pub operator08: Box<Operator08>,
3144}
3145
3146#[allow(dead_code)]
3152#[derive(Debug, Clone)]
3153pub struct Expression02OpUnaryOperator {
3154 pub unary_operator: Box<UnaryOperator>,
3155}
3156
3157#[allow(dead_code)]
3163#[derive(Debug, Clone)]
3164pub struct Expression02OpOperator06 {
3165 pub operator06: Box<Operator06>,
3166}
3167
3168#[allow(dead_code)]
3174#[derive(Debug, Clone)]
3175pub struct Expression02OpOperator05 {
3176 pub operator05: Box<Operator05>,
3177}
3178
3179#[allow(dead_code)]
3185#[derive(Debug, Clone)]
3186pub struct Expression02OpOperator03 {
3187 pub operator03: Box<Operator03>,
3188}
3189
3190#[allow(dead_code)]
3196#[derive(Debug, Clone)]
3197pub struct Expression02OpOperator04 {
3198 pub operator04: Box<Operator04>,
3199}
3200
3201#[allow(dead_code)]
3207#[derive(Debug, Clone)]
3208pub struct FactorNumber {
3209 pub number: Box<Number>,
3210}
3211
3212#[allow(dead_code)]
3218#[derive(Debug, Clone)]
3219pub struct FactorBooleanLiteral {
3220 pub boolean_literal: Box<BooleanLiteral>,
3221}
3222
3223#[allow(dead_code)]
3229#[derive(Debug, Clone)]
3230pub struct FactorIdentifierFactor {
3231 pub identifier_factor: Box<IdentifierFactor>,
3232}
3233
3234#[allow(dead_code)]
3240#[derive(Debug, Clone)]
3241pub struct FactorLParenExpressionRParen {
3242 pub l_paren: Box<LParen>,
3243 pub expression: Box<Expression>,
3244 pub r_paren: Box<RParen>,
3245}
3246
3247#[allow(dead_code)]
3253#[derive(Debug, Clone)]
3254pub struct FactorLBraceConcatenationListRBrace {
3255 pub l_brace: Box<LBrace>,
3256 pub concatenation_list: Box<ConcatenationList>,
3257 pub r_brace: Box<RBrace>,
3258}
3259
3260#[allow(dead_code)]
3266#[derive(Debug, Clone)]
3267pub struct FactorQuoteLBraceArrayLiteralListRBrace {
3268 pub quote_l_brace: Box<QuoteLBrace>,
3269 pub array_literal_list: Box<ArrayLiteralList>,
3270 pub r_brace: Box<RBrace>,
3271}
3272
3273#[allow(dead_code)]
3279#[derive(Debug, Clone)]
3280pub struct FactorCaseExpression {
3281 pub case_expression: Box<CaseExpression>,
3282}
3283
3284#[allow(dead_code)]
3290#[derive(Debug, Clone)]
3291pub struct FactorSwitchExpression {
3292 pub switch_expression: Box<SwitchExpression>,
3293}
3294
3295#[allow(dead_code)]
3301#[derive(Debug, Clone)]
3302pub struct FactorStringLiteral {
3303 pub string_literal: Box<StringLiteral>,
3304}
3305
3306#[allow(dead_code)]
3312#[derive(Debug, Clone)]
3313pub struct FactorFactorGroup {
3314 pub factor_group: Box<FactorGroup>,
3315}
3316
3317#[allow(dead_code)]
3323#[derive(Debug, Clone)]
3324pub struct FactorGroupMsb {
3325 pub msb: Box<Msb>,
3326}
3327
3328#[allow(dead_code)]
3334#[derive(Debug, Clone)]
3335pub struct FactorGroupLsb {
3336 pub lsb: Box<Lsb>,
3337}
3338
3339#[allow(dead_code)]
3345#[derive(Debug, Clone)]
3346pub struct FactorInsideExpression {
3347 pub inside_expression: Box<InsideExpression>,
3348}
3349
3350#[allow(dead_code)]
3356#[derive(Debug, Clone)]
3357pub struct FactorOutsideExpression {
3358 pub outside_expression: Box<OutsideExpression>,
3359}
3360
3361#[allow(dead_code)]
3367#[derive(Debug, Clone)]
3368pub struct FactorTypeExpression {
3369 pub type_expression: Box<TypeExpression>,
3370}
3371
3372#[allow(dead_code)]
3378#[derive(Debug, Clone)]
3379pub struct FactorFactorTypeFactor {
3380 pub factor_type_factor: Box<FactorTypeFactor>,
3381}
3382
3383#[allow(dead_code)]
3389#[derive(Debug, Clone)]
3390pub struct BooleanLiteralTrue {
3391 pub r#true: Box<True>,
3392}
3393
3394#[allow(dead_code)]
3400#[derive(Debug, Clone)]
3401pub struct BooleanLiteralFalse {
3402 pub r#false: Box<False>,
3403}
3404
3405#[allow(dead_code)]
3411#[derive(Debug, Clone)]
3412pub struct IdentifierFactorOptGroupFunctionCall {
3413 pub function_call: Box<FunctionCall>,
3414}
3415
3416#[allow(dead_code)]
3422#[derive(Debug, Clone)]
3423pub struct IdentifierFactorOptGroupStructConstructor {
3424 pub struct_constructor: Box<StructConstructor>,
3425}
3426
3427#[allow(dead_code)]
3433#[derive(Debug, Clone)]
3434pub struct ArrayLiteralItemGroupExpressionArrayLiteralItemOpt {
3435 pub expression: Box<Expression>,
3436 pub array_literal_item_opt: Option<ArrayLiteralItemOpt>,
3437}
3438
3439#[allow(dead_code)]
3445#[derive(Debug, Clone)]
3446pub struct ArrayLiteralItemGroupDefaulColonExpression {
3447 pub defaul: Box<Defaul>,
3448 pub colon: Box<Colon>,
3449 pub expression: Box<Expression>,
3450}
3451
3452#[allow(dead_code)]
3458#[derive(Debug, Clone)]
3459pub struct SelectOperatorColon {
3460 pub colon: Box<Colon>,
3461}
3462
3463#[allow(dead_code)]
3469#[derive(Debug, Clone)]
3470pub struct SelectOperatorPlusColon {
3471 pub plus_colon: Box<PlusColon>,
3472}
3473
3474#[allow(dead_code)]
3480#[derive(Debug, Clone)]
3481pub struct SelectOperatorMinusColon {
3482 pub minus_colon: Box<MinusColon>,
3483}
3484
3485#[allow(dead_code)]
3491#[derive(Debug, Clone)]
3492pub struct SelectOperatorStep {
3493 pub step: Box<Step>,
3494}
3495
3496#[allow(dead_code)]
3502#[derive(Debug, Clone)]
3503pub struct RangeOperatorDotDot {
3504 pub dot_dot: Box<DotDot>,
3505}
3506
3507#[allow(dead_code)]
3513#[derive(Debug, Clone)]
3514pub struct RangeOperatorDotDotEqu {
3515 pub dot_dot_equ: Box<DotDotEqu>,
3516}
3517
3518#[allow(dead_code)]
3524#[derive(Debug, Clone)]
3525pub struct FixedTypeP8 {
3526 pub p8: Box<P8>,
3527}
3528
3529#[allow(dead_code)]
3535#[derive(Debug, Clone)]
3536pub struct FixedTypeP16 {
3537 pub p16: Box<P16>,
3538}
3539
3540#[allow(dead_code)]
3546#[derive(Debug, Clone)]
3547pub struct FixedTypeP32 {
3548 pub p32: Box<P32>,
3549}
3550
3551#[allow(dead_code)]
3557#[derive(Debug, Clone)]
3558pub struct FixedTypeP64 {
3559 pub p64: Box<P64>,
3560}
3561
3562#[allow(dead_code)]
3568#[derive(Debug, Clone)]
3569pub struct FixedTypeU8 {
3570 pub u8: Box<U8>,
3571}
3572
3573#[allow(dead_code)]
3579#[derive(Debug, Clone)]
3580pub struct FixedTypeU16 {
3581 pub u16: Box<U16>,
3582}
3583
3584#[allow(dead_code)]
3590#[derive(Debug, Clone)]
3591pub struct FixedTypeU32 {
3592 pub u32: Box<U32>,
3593}
3594
3595#[allow(dead_code)]
3601#[derive(Debug, Clone)]
3602pub struct FixedTypeU64 {
3603 pub u64: Box<U64>,
3604}
3605
3606#[allow(dead_code)]
3612#[derive(Debug, Clone)]
3613pub struct FixedTypeI8 {
3614 pub i8: Box<I8>,
3615}
3616
3617#[allow(dead_code)]
3623#[derive(Debug, Clone)]
3624pub struct FixedTypeI16 {
3625 pub i16: Box<I16>,
3626}
3627
3628#[allow(dead_code)]
3634#[derive(Debug, Clone)]
3635pub struct FixedTypeI32 {
3636 pub i32: Box<I32>,
3637}
3638
3639#[allow(dead_code)]
3645#[derive(Debug, Clone)]
3646pub struct FixedTypeI64 {
3647 pub i64: Box<I64>,
3648}
3649
3650#[allow(dead_code)]
3656#[derive(Debug, Clone)]
3657pub struct FixedTypeF32 {
3658 pub f32: Box<F32>,
3659}
3660
3661#[allow(dead_code)]
3667#[derive(Debug, Clone)]
3668pub struct FixedTypeF64 {
3669 pub f64: Box<F64>,
3670}
3671
3672#[allow(dead_code)]
3678#[derive(Debug, Clone)]
3679pub struct FixedTypeBBool {
3680 pub b_bool: Box<BBool>,
3681}
3682
3683#[allow(dead_code)]
3689#[derive(Debug, Clone)]
3690pub struct FixedTypeLBool {
3691 pub l_bool: Box<LBool>,
3692}
3693
3694#[allow(dead_code)]
3700#[derive(Debug, Clone)]
3701pub struct FixedTypeStrin {
3702 pub strin: Box<Strin>,
3703}
3704
3705#[allow(dead_code)]
3711#[derive(Debug, Clone)]
3712pub struct VariableTypeClock {
3713 pub clock: Box<Clock>,
3714}
3715
3716#[allow(dead_code)]
3722#[derive(Debug, Clone)]
3723pub struct VariableTypeClockPosedge {
3724 pub clock_posedge: Box<ClockPosedge>,
3725}
3726
3727#[allow(dead_code)]
3733#[derive(Debug, Clone)]
3734pub struct VariableTypeClockNegedge {
3735 pub clock_negedge: Box<ClockNegedge>,
3736}
3737
3738#[allow(dead_code)]
3744#[derive(Debug, Clone)]
3745pub struct VariableTypeReset {
3746 pub reset: Box<Reset>,
3747}
3748
3749#[allow(dead_code)]
3755#[derive(Debug, Clone)]
3756pub struct VariableTypeResetAsyncHigh {
3757 pub reset_async_high: Box<ResetAsyncHigh>,
3758}
3759
3760#[allow(dead_code)]
3766#[derive(Debug, Clone)]
3767pub struct VariableTypeResetAsyncLow {
3768 pub reset_async_low: Box<ResetAsyncLow>,
3769}
3770
3771#[allow(dead_code)]
3777#[derive(Debug, Clone)]
3778pub struct VariableTypeResetSyncHigh {
3779 pub reset_sync_high: Box<ResetSyncHigh>,
3780}
3781
3782#[allow(dead_code)]
3788#[derive(Debug, Clone)]
3789pub struct VariableTypeResetSyncLow {
3790 pub reset_sync_low: Box<ResetSyncLow>,
3791}
3792
3793#[allow(dead_code)]
3799#[derive(Debug, Clone)]
3800pub struct VariableTypeLogic {
3801 pub logic: Box<Logic>,
3802}
3803
3804#[allow(dead_code)]
3810#[derive(Debug, Clone)]
3811pub struct VariableTypeBit {
3812 pub bit: Box<Bit>,
3813}
3814
3815#[allow(dead_code)]
3821#[derive(Debug, Clone)]
3822pub struct TypeModifierTri {
3823 pub tri: Box<Tri>,
3824}
3825
3826#[allow(dead_code)]
3832#[derive(Debug, Clone)]
3833pub struct TypeModifierSigned {
3834 pub signed: Box<Signed>,
3835}
3836
3837#[allow(dead_code)]
3843#[derive(Debug, Clone)]
3844pub struct TypeModifierDefaul {
3845 pub defaul: Box<Defaul>,
3846}
3847
3848#[allow(dead_code)]
3854#[derive(Debug, Clone)]
3855pub struct FactorTypeGroupVariableTypeFactorTypeOpt {
3856 pub variable_type: Box<VariableType>,
3857 pub factor_type_opt: Option<FactorTypeOpt>,
3858}
3859
3860#[allow(dead_code)]
3866#[derive(Debug, Clone)]
3867pub struct FactorTypeGroupFixedType {
3868 pub fixed_type: Box<FixedType>,
3869}
3870
3871#[allow(dead_code)]
3877#[derive(Debug, Clone)]
3878pub struct ScalarTypeGroupUserDefinedTypeScalarTypeOpt {
3879 pub user_defined_type: Box<UserDefinedType>,
3880 pub scalar_type_opt: Option<ScalarTypeOpt>,
3881}
3882
3883#[allow(dead_code)]
3889#[derive(Debug, Clone)]
3890pub struct ScalarTypeGroupFactorType {
3891 pub factor_type: Box<FactorType>,
3892}
3893
3894#[allow(dead_code)]
3900#[derive(Debug, Clone)]
3901pub struct CastingTypeU8 {
3902 pub u8: Box<U8>,
3903}
3904
3905#[allow(dead_code)]
3911#[derive(Debug, Clone)]
3912pub struct CastingTypeU16 {
3913 pub u16: Box<U16>,
3914}
3915
3916#[allow(dead_code)]
3922#[derive(Debug, Clone)]
3923pub struct CastingTypeU32 {
3924 pub u32: Box<U32>,
3925}
3926
3927#[allow(dead_code)]
3933#[derive(Debug, Clone)]
3934pub struct CastingTypeU64 {
3935 pub u64: Box<U64>,
3936}
3937
3938#[allow(dead_code)]
3944#[derive(Debug, Clone)]
3945pub struct CastingTypeP8 {
3946 pub p8: Box<P8>,
3947}
3948
3949#[allow(dead_code)]
3955#[derive(Debug, Clone)]
3956pub struct CastingTypeP16 {
3957 pub p16: Box<P16>,
3958}
3959
3960#[allow(dead_code)]
3966#[derive(Debug, Clone)]
3967pub struct CastingTypeP32 {
3968 pub p32: Box<P32>,
3969}
3970
3971#[allow(dead_code)]
3977#[derive(Debug, Clone)]
3978pub struct CastingTypeP64 {
3979 pub p64: Box<P64>,
3980}
3981
3982#[allow(dead_code)]
3988#[derive(Debug, Clone)]
3989pub struct CastingTypeI8 {
3990 pub i8: Box<I8>,
3991}
3992
3993#[allow(dead_code)]
3999#[derive(Debug, Clone)]
4000pub struct CastingTypeI16 {
4001 pub i16: Box<I16>,
4002}
4003
4004#[allow(dead_code)]
4010#[derive(Debug, Clone)]
4011pub struct CastingTypeI32 {
4012 pub i32: Box<I32>,
4013}
4014
4015#[allow(dead_code)]
4021#[derive(Debug, Clone)]
4022pub struct CastingTypeI64 {
4023 pub i64: Box<I64>,
4024}
4025
4026#[allow(dead_code)]
4032#[derive(Debug, Clone)]
4033pub struct CastingTypeF32 {
4034 pub f32: Box<F32>,
4035}
4036
4037#[allow(dead_code)]
4043#[derive(Debug, Clone)]
4044pub struct CastingTypeF64 {
4045 pub f64: Box<F64>,
4046}
4047
4048#[allow(dead_code)]
4054#[derive(Debug, Clone)]
4055pub struct CastingTypeBBool {
4056 pub b_bool: Box<BBool>,
4057}
4058
4059#[allow(dead_code)]
4065#[derive(Debug, Clone)]
4066pub struct CastingTypeLBool {
4067 pub l_bool: Box<LBool>,
4068}
4069
4070#[allow(dead_code)]
4076#[derive(Debug, Clone)]
4077pub struct CastingTypeClock {
4078 pub clock: Box<Clock>,
4079}
4080
4081#[allow(dead_code)]
4087#[derive(Debug, Clone)]
4088pub struct CastingTypeClockPosedge {
4089 pub clock_posedge: Box<ClockPosedge>,
4090}
4091
4092#[allow(dead_code)]
4098#[derive(Debug, Clone)]
4099pub struct CastingTypeClockNegedge {
4100 pub clock_negedge: Box<ClockNegedge>,
4101}
4102
4103#[allow(dead_code)]
4109#[derive(Debug, Clone)]
4110pub struct CastingTypeReset {
4111 pub reset: Box<Reset>,
4112}
4113
4114#[allow(dead_code)]
4120#[derive(Debug, Clone)]
4121pub struct CastingTypeResetAsyncHigh {
4122 pub reset_async_high: Box<ResetAsyncHigh>,
4123}
4124
4125#[allow(dead_code)]
4131#[derive(Debug, Clone)]
4132pub struct CastingTypeResetAsyncLow {
4133 pub reset_async_low: Box<ResetAsyncLow>,
4134}
4135
4136#[allow(dead_code)]
4142#[derive(Debug, Clone)]
4143pub struct CastingTypeResetSyncHigh {
4144 pub reset_sync_high: Box<ResetSyncHigh>,
4145}
4146
4147#[allow(dead_code)]
4153#[derive(Debug, Clone)]
4154pub struct CastingTypeResetSyncLow {
4155 pub reset_sync_low: Box<ResetSyncLow>,
4156}
4157
4158#[allow(dead_code)]
4164#[derive(Debug, Clone)]
4165pub struct CastingTypeUserDefinedType {
4166 pub user_defined_type: Box<UserDefinedType>,
4167}
4168
4169#[allow(dead_code)]
4175#[derive(Debug, Clone)]
4176pub struct CastingTypeBased {
4177 pub based: Box<Based>,
4178}
4179
4180#[allow(dead_code)]
4186#[derive(Debug, Clone)]
4187pub struct CastingTypeBaseLess {
4188 pub base_less: Box<BaseLess>,
4189}
4190
4191#[allow(dead_code)]
4197#[derive(Debug, Clone)]
4198pub struct StatementBlockGroupGroupBlockLBraceStatementBlockGroupGroupListRBrace {
4199 pub block: Box<Block>,
4200 pub l_brace: Box<LBrace>,
4201 pub statement_block_group_group_list: Vec<StatementBlockGroupGroupList>,
4202 pub r_brace: Box<RBrace>,
4203}
4204
4205#[allow(dead_code)]
4211#[derive(Debug, Clone)]
4212pub struct StatementBlockGroupGroupStatementBlockItem {
4213 pub statement_block_item: Box<StatementBlockItem>,
4214}
4215
4216#[allow(dead_code)]
4222#[derive(Debug, Clone)]
4223pub struct StatementBlockItemVarDeclaration {
4224 pub var_declaration: Box<VarDeclaration>,
4225}
4226
4227#[allow(dead_code)]
4233#[derive(Debug, Clone)]
4234pub struct StatementBlockItemLetStatement {
4235 pub let_statement: Box<LetStatement>,
4236}
4237
4238#[allow(dead_code)]
4244#[derive(Debug, Clone)]
4245pub struct StatementBlockItemConstDeclaration {
4246 pub const_declaration: Box<ConstDeclaration>,
4247}
4248
4249#[allow(dead_code)]
4255#[derive(Debug, Clone)]
4256pub struct StatementBlockItemStatement {
4257 pub statement: Box<Statement>,
4258}
4259
4260#[allow(dead_code)]
4266#[derive(Debug, Clone)]
4267pub struct StatementBlockItemConcatenationAssignment {
4268 pub concatenation_assignment: Box<ConcatenationAssignment>,
4269}
4270
4271#[allow(dead_code)]
4277#[derive(Debug, Clone)]
4278pub struct StatementIdentifierStatement {
4279 pub identifier_statement: Box<IdentifierStatement>,
4280}
4281
4282#[allow(dead_code)]
4288#[derive(Debug, Clone)]
4289pub struct StatementIfStatement {
4290 pub if_statement: Box<IfStatement>,
4291}
4292
4293#[allow(dead_code)]
4299#[derive(Debug, Clone)]
4300pub struct StatementIfResetStatement {
4301 pub if_reset_statement: Box<IfResetStatement>,
4302}
4303
4304#[allow(dead_code)]
4310#[derive(Debug, Clone)]
4311pub struct StatementReturnStatement {
4312 pub return_statement: Box<ReturnStatement>,
4313}
4314
4315#[allow(dead_code)]
4321#[derive(Debug, Clone)]
4322pub struct StatementBreakStatement {
4323 pub break_statement: Box<BreakStatement>,
4324}
4325
4326#[allow(dead_code)]
4332#[derive(Debug, Clone)]
4333pub struct StatementForStatement {
4334 pub for_statement: Box<ForStatement>,
4335}
4336
4337#[allow(dead_code)]
4343#[derive(Debug, Clone)]
4344pub struct StatementCaseStatement {
4345 pub case_statement: Box<CaseStatement>,
4346}
4347
4348#[allow(dead_code)]
4354#[derive(Debug, Clone)]
4355pub struct StatementSwitchStatement {
4356 pub switch_statement: Box<SwitchStatement>,
4357}
4358
4359#[allow(dead_code)]
4365#[derive(Debug, Clone)]
4366pub struct IdentifierStatementGroupFunctionCall {
4367 pub function_call: Box<FunctionCall>,
4368}
4369
4370#[allow(dead_code)]
4376#[derive(Debug, Clone)]
4377pub struct IdentifierStatementGroupAssignment {
4378 pub assignment: Box<Assignment>,
4379}
4380
4381#[allow(dead_code)]
4387#[derive(Debug, Clone)]
4388pub struct AssignmentGroupEqu {
4389 pub equ: Box<Equ>,
4390}
4391
4392#[allow(dead_code)]
4398#[derive(Debug, Clone)]
4399pub struct AssignmentGroupAssignmentOperator {
4400 pub assignment_operator: Box<AssignmentOperator>,
4401}
4402
4403#[allow(dead_code)]
4409#[derive(Debug, Clone)]
4410pub struct AssignmentGroupDiamondOperator {
4411 pub diamond_operator: Box<DiamondOperator>,
4412}
4413
4414#[allow(dead_code)]
4420#[derive(Debug, Clone)]
4421pub struct CaseItemGroup0Statement {
4422 pub statement: Box<Statement>,
4423}
4424
4425#[allow(dead_code)]
4431#[derive(Debug, Clone)]
4432pub struct CaseItemGroup0StatementBlock {
4433 pub statement_block: Box<StatementBlock>,
4434}
4435
4436#[allow(dead_code)]
4442#[derive(Debug, Clone)]
4443pub struct CaseItemGroupCaseCondition {
4444 pub case_condition: Box<CaseCondition>,
4445}
4446
4447#[allow(dead_code)]
4453#[derive(Debug, Clone)]
4454pub struct CaseItemGroupDefaul {
4455 pub defaul: Box<Defaul>,
4456}
4457
4458#[allow(dead_code)]
4464#[derive(Debug, Clone)]
4465pub struct SwitchItemGroup0Statement {
4466 pub statement: Box<Statement>,
4467}
4468
4469#[allow(dead_code)]
4475#[derive(Debug, Clone)]
4476pub struct SwitchItemGroup0StatementBlock {
4477 pub statement_block: Box<StatementBlock>,
4478}
4479
4480#[allow(dead_code)]
4486#[derive(Debug, Clone)]
4487pub struct SwitchItemGroupSwitchCondition {
4488 pub switch_condition: Box<SwitchCondition>,
4489}
4490
4491#[allow(dead_code)]
4497#[derive(Debug, Clone)]
4498pub struct SwitchItemGroupDefaul {
4499 pub defaul: Box<Defaul>,
4500}
4501
4502#[allow(dead_code)]
4508#[derive(Debug, Clone)]
4509pub struct AttributeItemIdentifier {
4510 pub identifier: Box<Identifier>,
4511}
4512
4513#[allow(dead_code)]
4519#[derive(Debug, Clone)]
4520pub struct AttributeItemStringLiteral {
4521 pub string_literal: Box<StringLiteral>,
4522}
4523
4524#[allow(dead_code)]
4530#[derive(Debug, Clone)]
4531pub struct ConstDeclarationGroupArrayType {
4532 pub array_type: Box<ArrayType>,
4533}
4534
4535#[allow(dead_code)]
4541#[derive(Debug, Clone)]
4542pub struct ConstDeclarationGroupType {
4543 pub r#type: Box<Type>,
4544}
4545
4546#[allow(dead_code)]
4552#[derive(Debug, Clone)]
4553pub struct AssignDestinationHierarchicalIdentifier {
4554 pub hierarchical_identifier: Box<HierarchicalIdentifier>,
4555}
4556
4557#[allow(dead_code)]
4563#[derive(Debug, Clone)]
4564pub struct AssignDestinationLBraceAssignConcatenationListRBrace {
4565 pub l_brace: Box<LBrace>,
4566 pub assign_concatenation_list: Box<AssignConcatenationList>,
4567 pub r_brace: Box<RBrace>,
4568}
4569
4570#[allow(dead_code)]
4576#[derive(Debug, Clone)]
4577pub struct ModportGroupGroupLBraceModportListRBrace {
4578 pub l_brace: Box<LBrace>,
4579 pub modport_list: Box<ModportList>,
4580 pub r_brace: Box<RBrace>,
4581}
4582
4583#[allow(dead_code)]
4589#[derive(Debug, Clone)]
4590pub struct ModportGroupGroupModportItem {
4591 pub modport_item: Box<ModportItem>,
4592}
4593
4594#[allow(dead_code)]
4600#[derive(Debug, Clone)]
4601pub struct ModportDefaultInput {
4602 pub input: Box<Input>,
4603}
4604
4605#[allow(dead_code)]
4611#[derive(Debug, Clone)]
4612pub struct ModportDefaultOutput {
4613 pub output: Box<Output>,
4614}
4615
4616#[allow(dead_code)]
4622#[derive(Debug, Clone)]
4623pub struct ModportDefaultSameLParenModportDefaultListRParen {
4624 pub same: Box<Same>,
4625 pub l_paren: Box<LParen>,
4626 pub modport_default_list: Box<ModportDefaultList>,
4627 pub r_paren: Box<RParen>,
4628}
4629
4630#[allow(dead_code)]
4636#[derive(Debug, Clone)]
4637pub struct ModportDefaultConverseLParenModportDefaultListRParen {
4638 pub converse: Box<Converse>,
4639 pub l_paren: Box<LParen>,
4640 pub modport_default_list: Box<ModportDefaultList>,
4641 pub r_paren: Box<RParen>,
4642}
4643
4644#[allow(dead_code)]
4650#[derive(Debug, Clone)]
4651pub struct EnumGroupGroupLBraceEnumListRBrace {
4652 pub l_brace: Box<LBrace>,
4653 pub enum_list: Box<EnumList>,
4654 pub r_brace: Box<RBrace>,
4655}
4656
4657#[allow(dead_code)]
4663#[derive(Debug, Clone)]
4664pub struct EnumGroupGroupEnumItem {
4665 pub enum_item: Box<EnumItem>,
4666}
4667
4668#[allow(dead_code)]
4674#[derive(Debug, Clone)]
4675pub struct StructUnionStruct {
4676 pub r#struct: Box<Struct>,
4677}
4678
4679#[allow(dead_code)]
4685#[derive(Debug, Clone)]
4686pub struct StructUnionUnion {
4687 pub r#union: Box<Union>,
4688}
4689
4690#[allow(dead_code)]
4696#[derive(Debug, Clone)]
4697pub struct StructUnionGroupGroupLBraceStructUnionListRBrace {
4698 pub l_brace: Box<LBrace>,
4699 pub struct_union_list: Box<StructUnionList>,
4700 pub r_brace: Box<RBrace>,
4701}
4702
4703#[allow(dead_code)]
4709#[derive(Debug, Clone)]
4710pub struct StructUnionGroupGroupStructUnionItem {
4711 pub struct_union_item: Box<StructUnionItem>,
4712}
4713
4714#[allow(dead_code)]
4720#[derive(Debug, Clone)]
4721pub struct InstParameterGroupGroupLBraceInstParameterListRBrace {
4722 pub l_brace: Box<LBrace>,
4723 pub inst_parameter_list: Box<InstParameterList>,
4724 pub r_brace: Box<RBrace>,
4725}
4726
4727#[allow(dead_code)]
4733#[derive(Debug, Clone)]
4734pub struct InstParameterGroupGroupInstParameterItem {
4735 pub inst_parameter_item: Box<InstParameterItem>,
4736}
4737
4738#[allow(dead_code)]
4744#[derive(Debug, Clone)]
4745pub struct InstPortGroupGroupLBraceInstPortListRBrace {
4746 pub l_brace: Box<LBrace>,
4747 pub inst_port_list: Box<InstPortList>,
4748 pub r_brace: Box<RBrace>,
4749}
4750
4751#[allow(dead_code)]
4757#[derive(Debug, Clone)]
4758pub struct InstPortGroupGroupInstPortItem {
4759 pub inst_port_item: Box<InstPortItem>,
4760}
4761
4762#[allow(dead_code)]
4768#[derive(Debug, Clone)]
4769pub struct WithParameterGroupGroupLBraceWithParameterListRBrace {
4770 pub l_brace: Box<LBrace>,
4771 pub with_parameter_list: Box<WithParameterList>,
4772 pub r_brace: Box<RBrace>,
4773}
4774
4775#[allow(dead_code)]
4781#[derive(Debug, Clone)]
4782pub struct WithParameterGroupGroupWithParameterItem {
4783 pub with_parameter_item: Box<WithParameterItem>,
4784}
4785
4786#[allow(dead_code)]
4792#[derive(Debug, Clone)]
4793pub struct WithParameterItemGroup0ArrayType {
4794 pub array_type: Box<ArrayType>,
4795}
4796
4797#[allow(dead_code)]
4803#[derive(Debug, Clone)]
4804pub struct WithParameterItemGroup0Type {
4805 pub r#type: Box<Type>,
4806}
4807
4808#[allow(dead_code)]
4814#[derive(Debug, Clone)]
4815pub struct WithParameterItemGroupParam {
4816 pub param: Box<Param>,
4817}
4818
4819#[allow(dead_code)]
4825#[derive(Debug, Clone)]
4826pub struct WithParameterItemGroupConst {
4827 pub r#const: Box<Const>,
4828}
4829
4830#[allow(dead_code)]
4836#[derive(Debug, Clone)]
4837pub struct GenericBoundType {
4838 pub r#type: Box<Type>,
4839}
4840
4841#[allow(dead_code)]
4847#[derive(Debug, Clone)]
4848pub struct GenericBoundInstScopedIdentifier {
4849 pub inst: Box<Inst>,
4850 pub scoped_identifier: Box<ScopedIdentifier>,
4851}
4852
4853#[allow(dead_code)]
4859#[derive(Debug, Clone)]
4860pub struct GenericBoundGenericProtoBound {
4861 pub generic_proto_bound: Box<GenericProtoBound>,
4862}
4863
4864#[allow(dead_code)]
4870#[derive(Debug, Clone)]
4871pub struct GenericProtoBoundScopedIdentifier {
4872 pub scoped_identifier: Box<ScopedIdentifier>,
4873}
4874
4875#[allow(dead_code)]
4881#[derive(Debug, Clone)]
4882pub struct GenericProtoBoundFixedType {
4883 pub fixed_type: Box<FixedType>,
4884}
4885
4886#[allow(dead_code)]
4892#[derive(Debug, Clone)]
4893pub struct WithGenericArgumentItemGenericArgIdentifier {
4894 pub generic_arg_identifier: Box<GenericArgIdentifier>,
4895}
4896
4897#[allow(dead_code)]
4903#[derive(Debug, Clone)]
4904pub struct WithGenericArgumentItemFixedType {
4905 pub fixed_type: Box<FixedType>,
4906}
4907
4908#[allow(dead_code)]
4914#[derive(Debug, Clone)]
4915pub struct WithGenericArgumentItemNumber {
4916 pub number: Box<Number>,
4917}
4918
4919#[allow(dead_code)]
4925#[derive(Debug, Clone)]
4926pub struct WithGenericArgumentItemBooleanLiteral {
4927 pub boolean_literal: Box<BooleanLiteral>,
4928}
4929
4930#[allow(dead_code)]
4936#[derive(Debug, Clone)]
4937pub struct PortDeclarationGroupGroupLBracePortDeclarationListRBrace {
4938 pub l_brace: Box<LBrace>,
4939 pub port_declaration_list: Box<PortDeclarationList>,
4940 pub r_brace: Box<RBrace>,
4941}
4942
4943#[allow(dead_code)]
4949#[derive(Debug, Clone)]
4950pub struct PortDeclarationGroupGroupPortDeclarationItem {
4951 pub port_declaration_item: Box<PortDeclarationItem>,
4952}
4953
4954#[allow(dead_code)]
4960#[derive(Debug, Clone)]
4961pub struct PortDeclarationItemGroupPortTypeConcrete {
4962 pub port_type_concrete: Box<PortTypeConcrete>,
4963}
4964
4965#[allow(dead_code)]
4971#[derive(Debug, Clone)]
4972pub struct PortDeclarationItemGroupPortTypeAbstract {
4973 pub port_type_abstract: Box<PortTypeAbstract>,
4974}
4975
4976#[allow(dead_code)]
4982#[derive(Debug, Clone)]
4983pub struct DirectionInput {
4984 pub input: Box<Input>,
4985}
4986
4987#[allow(dead_code)]
4993#[derive(Debug, Clone)]
4994pub struct DirectionOutput {
4995 pub output: Box<Output>,
4996}
4997
4998#[allow(dead_code)]
5004#[derive(Debug, Clone)]
5005pub struct DirectionInout {
5006 pub inout: Box<Inout>,
5007}
5008
5009#[allow(dead_code)]
5015#[derive(Debug, Clone)]
5016pub struct DirectionModport {
5017 pub modport: Box<Modport>,
5018}
5019
5020#[allow(dead_code)]
5026#[derive(Debug, Clone)]
5027pub struct DirectionImport {
5028 pub import: Box<Import>,
5029}
5030
5031#[allow(dead_code)]
5037#[derive(Debug, Clone)]
5038pub struct ModuleGroupGroupLBraceModuleGroupGroupListRBrace {
5039 pub l_brace: Box<LBrace>,
5040 pub module_group_group_list: Vec<ModuleGroupGroupList>,
5041 pub r_brace: Box<RBrace>,
5042}
5043
5044#[allow(dead_code)]
5050#[derive(Debug, Clone)]
5051pub struct ModuleGroupGroupModuleItem {
5052 pub module_item: Box<ModuleItem>,
5053}
5054
5055#[allow(dead_code)]
5061#[derive(Debug, Clone)]
5062pub struct InterfaceGroupGroupLBraceInterfaceGroupGroupListRBrace {
5063 pub l_brace: Box<LBrace>,
5064 pub interface_group_group_list: Vec<InterfaceGroupGroupList>,
5065 pub r_brace: Box<RBrace>,
5066}
5067
5068#[allow(dead_code)]
5074#[derive(Debug, Clone)]
5075pub struct InterfaceGroupGroupInterfaceItem {
5076 pub interface_item: Box<InterfaceItem>,
5077}
5078
5079#[allow(dead_code)]
5085#[derive(Debug, Clone)]
5086pub struct InterfaceItemGenerateItem {
5087 pub generate_item: Box<GenerateItem>,
5088}
5089
5090#[allow(dead_code)]
5096#[derive(Debug, Clone)]
5097pub struct InterfaceItemModportDeclaration {
5098 pub modport_declaration: Box<ModportDeclaration>,
5099}
5100
5101#[allow(dead_code)]
5107#[derive(Debug, Clone)]
5108pub struct GenerateGroupGroupLBraceGenerateGroupGroupListRBrace {
5109 pub l_brace: Box<LBrace>,
5110 pub generate_group_group_list: Vec<GenerateGroupGroupList>,
5111 pub r_brace: Box<RBrace>,
5112}
5113
5114#[allow(dead_code)]
5120#[derive(Debug, Clone)]
5121pub struct GenerateGroupGroupGenerateItem {
5122 pub generate_item: Box<GenerateItem>,
5123}
5124
5125#[allow(dead_code)]
5131#[derive(Debug, Clone)]
5132pub struct GenerateItemLetDeclaration {
5133 pub let_declaration: Box<LetDeclaration>,
5134}
5135
5136#[allow(dead_code)]
5142#[derive(Debug, Clone)]
5143pub struct GenerateItemVarDeclaration {
5144 pub var_declaration: Box<VarDeclaration>,
5145}
5146
5147#[allow(dead_code)]
5153#[derive(Debug, Clone)]
5154pub struct GenerateItemInstDeclaration {
5155 pub inst_declaration: Box<InstDeclaration>,
5156}
5157
5158#[allow(dead_code)]
5164#[derive(Debug, Clone)]
5165pub struct GenerateItemBindDeclaration {
5166 pub bind_declaration: Box<BindDeclaration>,
5167}
5168
5169#[allow(dead_code)]
5175#[derive(Debug, Clone)]
5176pub struct GenerateItemConstDeclaration {
5177 pub const_declaration: Box<ConstDeclaration>,
5178}
5179
5180#[allow(dead_code)]
5186#[derive(Debug, Clone)]
5187pub struct GenerateItemAlwaysFfDeclaration {
5188 pub always_ff_declaration: Box<AlwaysFfDeclaration>,
5189}
5190
5191#[allow(dead_code)]
5197#[derive(Debug, Clone)]
5198pub struct GenerateItemAlwaysCombDeclaration {
5199 pub always_comb_declaration: Box<AlwaysCombDeclaration>,
5200}
5201
5202#[allow(dead_code)]
5208#[derive(Debug, Clone)]
5209pub struct GenerateItemAssignDeclaration {
5210 pub assign_declaration: Box<AssignDeclaration>,
5211}
5212
5213#[allow(dead_code)]
5219#[derive(Debug, Clone)]
5220pub struct GenerateItemConnectDeclaration {
5221 pub connect_declaration: Box<ConnectDeclaration>,
5222}
5223
5224#[allow(dead_code)]
5230#[derive(Debug, Clone)]
5231pub struct GenerateItemFunctionDeclaration {
5232 pub function_declaration: Box<FunctionDeclaration>,
5233}
5234
5235#[allow(dead_code)]
5241#[derive(Debug, Clone)]
5242pub struct GenerateItemGenerateIfDeclaration {
5243 pub generate_if_declaration: Box<GenerateIfDeclaration>,
5244}
5245
5246#[allow(dead_code)]
5252#[derive(Debug, Clone)]
5253pub struct GenerateItemGenerateForDeclaration {
5254 pub generate_for_declaration: Box<GenerateForDeclaration>,
5255}
5256
5257#[allow(dead_code)]
5263#[derive(Debug, Clone)]
5264pub struct GenerateItemGenerateBlockDeclaration {
5265 pub generate_block_declaration: Box<GenerateBlockDeclaration>,
5266}
5267
5268#[allow(dead_code)]
5274#[derive(Debug, Clone)]
5275pub struct GenerateItemTypeDefDeclaration {
5276 pub type_def_declaration: Box<TypeDefDeclaration>,
5277}
5278
5279#[allow(dead_code)]
5285#[derive(Debug, Clone)]
5286pub struct GenerateItemEnumDeclaration {
5287 pub enum_declaration: Box<EnumDeclaration>,
5288}
5289
5290#[allow(dead_code)]
5296#[derive(Debug, Clone)]
5297pub struct GenerateItemStructUnionDeclaration {
5298 pub struct_union_declaration: Box<StructUnionDeclaration>,
5299}
5300
5301#[allow(dead_code)]
5307#[derive(Debug, Clone)]
5308pub struct GenerateItemImportDeclaration {
5309 pub import_declaration: Box<ImportDeclaration>,
5310}
5311
5312#[allow(dead_code)]
5318#[derive(Debug, Clone)]
5319pub struct GenerateItemAliasDeclaration {
5320 pub alias_declaration: Box<AliasDeclaration>,
5321}
5322
5323#[allow(dead_code)]
5329#[derive(Debug, Clone)]
5330pub struct GenerateItemInitialDeclaration {
5331 pub initial_declaration: Box<InitialDeclaration>,
5332}
5333
5334#[allow(dead_code)]
5340#[derive(Debug, Clone)]
5341pub struct GenerateItemFinalDeclaration {
5342 pub final_declaration: Box<FinalDeclaration>,
5343}
5344
5345#[allow(dead_code)]
5351#[derive(Debug, Clone)]
5352pub struct GenerateItemUnsafeBlock {
5353 pub unsafe_block: Box<UnsafeBlock>,
5354}
5355
5356#[allow(dead_code)]
5362#[derive(Debug, Clone)]
5363pub struct GenerateItemEmbedDeclaration {
5364 pub embed_declaration: Box<EmbedDeclaration>,
5365}
5366
5367#[allow(dead_code)]
5373#[derive(Debug, Clone)]
5374pub struct PackageGroupGroupLBracePackageGroupGroupListRBrace {
5375 pub l_brace: Box<LBrace>,
5376 pub package_group_group_list: Vec<PackageGroupGroupList>,
5377 pub r_brace: Box<RBrace>,
5378}
5379
5380#[allow(dead_code)]
5386#[derive(Debug, Clone)]
5387pub struct PackageGroupGroupPackageItem {
5388 pub package_item: Box<PackageItem>,
5389}
5390
5391#[allow(dead_code)]
5397#[derive(Debug, Clone)]
5398pub struct PackageItemConstDeclaration {
5399 pub const_declaration: Box<ConstDeclaration>,
5400}
5401
5402#[allow(dead_code)]
5408#[derive(Debug, Clone)]
5409pub struct PackageItemTypeDefDeclaration {
5410 pub type_def_declaration: Box<TypeDefDeclaration>,
5411}
5412
5413#[allow(dead_code)]
5419#[derive(Debug, Clone)]
5420pub struct PackageItemEnumDeclaration {
5421 pub enum_declaration: Box<EnumDeclaration>,
5422}
5423
5424#[allow(dead_code)]
5430#[derive(Debug, Clone)]
5431pub struct PackageItemStructUnionDeclaration {
5432 pub struct_union_declaration: Box<StructUnionDeclaration>,
5433}
5434
5435#[allow(dead_code)]
5441#[derive(Debug, Clone)]
5442pub struct PackageItemFunctionDeclaration {
5443 pub function_declaration: Box<FunctionDeclaration>,
5444}
5445
5446#[allow(dead_code)]
5452#[derive(Debug, Clone)]
5453pub struct PackageItemImportDeclaration {
5454 pub import_declaration: Box<ImportDeclaration>,
5455}
5456
5457#[allow(dead_code)]
5463#[derive(Debug, Clone)]
5464pub struct PackageItemAliasDeclaration {
5465 pub alias_declaration: Box<AliasDeclaration>,
5466}
5467
5468#[allow(dead_code)]
5474#[derive(Debug, Clone)]
5475pub struct PackageItemEmbedDeclaration {
5476 pub embed_declaration: Box<EmbedDeclaration>,
5477}
5478
5479#[allow(dead_code)]
5485#[derive(Debug, Clone)]
5486pub struct AliasDeclarationGroupModule {
5487 pub module: Box<Module>,
5488}
5489
5490#[allow(dead_code)]
5496#[derive(Debug, Clone)]
5497pub struct AliasDeclarationGroupInterface {
5498 pub interface: Box<Interface>,
5499}
5500
5501#[allow(dead_code)]
5507#[derive(Debug, Clone)]
5508pub struct AliasDeclarationGroupPackage {
5509 pub package: Box<Package>,
5510}
5511
5512#[allow(dead_code)]
5518#[derive(Debug, Clone)]
5519pub struct ProtoDeclarationGroupProtoModuleDeclaration {
5520 pub proto_module_declaration: Box<ProtoModuleDeclaration>,
5521}
5522
5523#[allow(dead_code)]
5529#[derive(Debug, Clone)]
5530pub struct ProtoDeclarationGroupProtoInterfaceDeclaration {
5531 pub proto_interface_declaration: Box<ProtoInterfaceDeclaration>,
5532}
5533
5534#[allow(dead_code)]
5540#[derive(Debug, Clone)]
5541pub struct ProtoDeclarationGroupProtoPackageDeclaration {
5542 pub proto_package_declaration: Box<ProtoPackageDeclaration>,
5543}
5544
5545#[allow(dead_code)]
5551#[derive(Debug, Clone)]
5552pub struct ProtoInterfaceItemVarDeclaration {
5553 pub var_declaration: Box<VarDeclaration>,
5554}
5555
5556#[allow(dead_code)]
5562#[derive(Debug, Clone)]
5563pub struct ProtoInterfaceItemProtoConstDeclaration {
5564 pub proto_const_declaration: Box<ProtoConstDeclaration>,
5565}
5566
5567#[allow(dead_code)]
5573#[derive(Debug, Clone)]
5574pub struct ProtoInterfaceItemProtoFunctionDeclaration {
5575 pub proto_function_declaration: Box<ProtoFunctionDeclaration>,
5576}
5577
5578#[allow(dead_code)]
5584#[derive(Debug, Clone)]
5585pub struct ProtoInterfaceItemProtoTypeDefDeclaration {
5586 pub proto_type_def_declaration: Box<ProtoTypeDefDeclaration>,
5587}
5588
5589#[allow(dead_code)]
5595#[derive(Debug, Clone)]
5596pub struct ProtoInterfaceItemProtoAliasDeclaration {
5597 pub proto_alias_declaration: Box<ProtoAliasDeclaration>,
5598}
5599
5600#[allow(dead_code)]
5606#[derive(Debug, Clone)]
5607pub struct ProtoInterfaceItemModportDeclaration {
5608 pub modport_declaration: Box<ModportDeclaration>,
5609}
5610
5611#[allow(dead_code)]
5617#[derive(Debug, Clone)]
5618pub struct ProtoInterfaceItemImportDeclaration {
5619 pub import_declaration: Box<ImportDeclaration>,
5620}
5621
5622#[allow(dead_code)]
5628#[derive(Debug, Clone)]
5629pub struct ProtoPacakgeItemProtoConstDeclaration {
5630 pub proto_const_declaration: Box<ProtoConstDeclaration>,
5631}
5632
5633#[allow(dead_code)]
5639#[derive(Debug, Clone)]
5640pub struct ProtoPacakgeItemProtoTypeDefDeclaration {
5641 pub proto_type_def_declaration: Box<ProtoTypeDefDeclaration>,
5642}
5643
5644#[allow(dead_code)]
5650#[derive(Debug, Clone)]
5651pub struct ProtoPacakgeItemEnumDeclaration {
5652 pub enum_declaration: Box<EnumDeclaration>,
5653}
5654
5655#[allow(dead_code)]
5661#[derive(Debug, Clone)]
5662pub struct ProtoPacakgeItemStructUnionDeclaration {
5663 pub struct_union_declaration: Box<StructUnionDeclaration>,
5664}
5665
5666#[allow(dead_code)]
5672#[derive(Debug, Clone)]
5673pub struct ProtoPacakgeItemProtoFunctionDeclaration {
5674 pub proto_function_declaration: Box<ProtoFunctionDeclaration>,
5675}
5676
5677#[allow(dead_code)]
5683#[derive(Debug, Clone)]
5684pub struct ProtoPacakgeItemProtoAliasDeclaration {
5685 pub proto_alias_declaration: Box<ProtoAliasDeclaration>,
5686}
5687
5688#[allow(dead_code)]
5694#[derive(Debug, Clone)]
5695pub struct ProtoPacakgeItemImportDeclaration {
5696 pub import_declaration: Box<ImportDeclaration>,
5697}
5698
5699#[allow(dead_code)]
5705#[derive(Debug, Clone)]
5706pub struct ProtoConstDeclarationGroupArrayType {
5707 pub array_type: Box<ArrayType>,
5708}
5709
5710#[allow(dead_code)]
5716#[derive(Debug, Clone)]
5717pub struct ProtoConstDeclarationGroupType {
5718 pub r#type: Box<Type>,
5719}
5720
5721#[allow(dead_code)]
5727#[derive(Debug, Clone)]
5728pub struct ProtoAliasDeclarationGroupModule {
5729 pub module: Box<Module>,
5730}
5731
5732#[allow(dead_code)]
5738#[derive(Debug, Clone)]
5739pub struct ProtoAliasDeclarationGroupInterface {
5740 pub interface: Box<Interface>,
5741}
5742
5743#[allow(dead_code)]
5749#[derive(Debug, Clone)]
5750pub struct ProtoAliasDeclarationGroupPackage {
5751 pub package: Box<Package>,
5752}
5753
5754#[allow(dead_code)]
5760#[derive(Debug, Clone)]
5761pub struct EmbedItemEmbedLBraceEmbedItemListEmbedRBrace {
5762 pub embed_l_brace: Box<EmbedLBrace>,
5763 pub embed_item_list: Vec<EmbedItemList>,
5764 pub embed_r_brace: Box<EmbedRBrace>,
5765}
5766
5767#[allow(dead_code)]
5773#[derive(Debug, Clone)]
5774pub struct EmbedItemEmbedScopedIdentifier {
5775 pub embed_scoped_identifier: Box<EmbedScopedIdentifier>,
5776}
5777
5778#[allow(dead_code)]
5784#[derive(Debug, Clone)]
5785pub struct EmbedItemAny {
5786 pub any: Box<Any>,
5787}
5788
5789#[allow(dead_code)]
5795#[derive(Debug, Clone)]
5796pub struct DescriptionGroupGroupLBraceDescriptionGroupGroupListRBrace {
5797 pub l_brace: Box<LBrace>,
5798 pub description_group_group_list: Vec<DescriptionGroupGroupList>,
5799 pub r_brace: Box<RBrace>,
5800}
5801
5802#[allow(dead_code)]
5808#[derive(Debug, Clone)]
5809pub struct DescriptionGroupGroupDescriptionItem {
5810 pub description_item: Box<DescriptionItem>,
5811}
5812
5813#[allow(dead_code)]
5819#[derive(Debug, Clone)]
5820pub struct DescriptionItemDescriptionItemOptPublicDescriptionItem {
5821 pub description_item_opt: Option<DescriptionItemOpt>,
5822 pub public_description_item: Box<PublicDescriptionItem>,
5823}
5824
5825#[allow(dead_code)]
5831#[derive(Debug, Clone)]
5832pub struct DescriptionItemImportDeclaration {
5833 pub import_declaration: Box<ImportDeclaration>,
5834}
5835
5836#[allow(dead_code)]
5842#[derive(Debug, Clone)]
5843pub struct DescriptionItemBindDeclaration {
5844 pub bind_declaration: Box<BindDeclaration>,
5845}
5846
5847#[allow(dead_code)]
5853#[derive(Debug, Clone)]
5854pub struct DescriptionItemEmbedDeclaration {
5855 pub embed_declaration: Box<EmbedDeclaration>,
5856}
5857
5858#[allow(dead_code)]
5864#[derive(Debug, Clone)]
5865pub struct DescriptionItemIncludeDeclaration {
5866 pub include_declaration: Box<IncludeDeclaration>,
5867}
5868
5869#[allow(dead_code)]
5875#[derive(Debug, Clone)]
5876pub struct PublicDescriptionItemModuleDeclaration {
5877 pub module_declaration: Box<ModuleDeclaration>,
5878}
5879
5880#[allow(dead_code)]
5886#[derive(Debug, Clone)]
5887pub struct PublicDescriptionItemInterfaceDeclaration {
5888 pub interface_declaration: Box<InterfaceDeclaration>,
5889}
5890
5891#[allow(dead_code)]
5897#[derive(Debug, Clone)]
5898pub struct PublicDescriptionItemPackageDeclaration {
5899 pub package_declaration: Box<PackageDeclaration>,
5900}
5901
5902#[allow(dead_code)]
5908#[derive(Debug, Clone)]
5909pub struct PublicDescriptionItemAliasDeclaration {
5910 pub alias_declaration: Box<AliasDeclaration>,
5911}
5912
5913#[allow(dead_code)]
5919#[derive(Debug, Clone)]
5920pub struct PublicDescriptionItemProtoDeclaration {
5921 pub proto_declaration: Box<ProtoDeclaration>,
5922}
5923
5924#[allow(dead_code)]
5930#[derive(Debug, Clone)]
5931pub struct PublicDescriptionItemFunctionDeclaration {
5932 pub function_declaration: Box<FunctionDeclaration>,
5933}
5934
5935#[allow(dead_code)]
5944#[derive(Debug, Clone)]
5945pub struct Alias {
5946 pub alias_token: crate::veryl_token::VerylToken,
5947}
5948
5949#[allow(dead_code)]
5953#[derive(Debug, Clone)]
5954pub struct AliasDeclaration {
5955 pub alias: Box<Alias>,
5956 pub alias_declaration_group: Box<AliasDeclarationGroup>,
5957 pub identifier: Box<Identifier>,
5958 pub equ: Box<Equ>,
5959 pub scoped_identifier: Box<ScopedIdentifier>,
5960 pub semicolon: Box<Semicolon>,
5961}
5962
5963#[allow(dead_code)]
5967#[derive(Debug, Clone)]
5968pub enum AliasDeclarationGroup {
5969 Module(AliasDeclarationGroupModule),
5970 Interface(AliasDeclarationGroupInterface),
5971 Package(AliasDeclarationGroupPackage),
5972}
5973
5974#[allow(dead_code)]
5978#[derive(Debug, Clone)]
5979pub struct AliasTerm {
5980 pub alias_term: crate::veryl_token::Token, }
5982
5983#[allow(dead_code)]
5987#[derive(Debug, Clone)]
5988pub struct AliasToken {
5989 pub alias_term: crate::veryl_token::Token,
5990 pub comments: Box<Comments>,
5991}
5992
5993#[allow(dead_code)]
5997#[derive(Debug, Clone)]
5998pub struct AllBit {
5999 pub all_bit_token: crate::veryl_token::VerylToken,
6000}
6001
6002#[allow(dead_code)]
6006#[derive(Debug, Clone)]
6007pub struct AllBitTerm {
6008 pub all_bit_term: crate::veryl_token::Token, }
6010
6011#[allow(dead_code)]
6015#[derive(Debug, Clone)]
6016pub struct AllBitToken {
6017 pub all_bit_term: crate::veryl_token::Token,
6018 pub comments: Box<Comments>,
6019}
6020
6021#[allow(dead_code)]
6025#[derive(Debug, Clone)]
6026pub struct AlwaysComb {
6027 pub always_comb_token: crate::veryl_token::VerylToken,
6028}
6029
6030#[allow(dead_code)]
6034#[derive(Debug, Clone)]
6035pub struct AlwaysCombDeclaration {
6036 pub always_comb: Box<AlwaysComb>,
6037 pub statement_block: Box<StatementBlock>,
6038}
6039
6040#[allow(dead_code)]
6044#[derive(Debug, Clone)]
6045pub struct AlwaysCombTerm {
6046 pub always_comb_term: crate::veryl_token::Token, }
6048
6049#[allow(dead_code)]
6053#[derive(Debug, Clone)]
6054pub struct AlwaysCombToken {
6055 pub always_comb_term: crate::veryl_token::Token,
6056 pub comments: Box<Comments>,
6057}
6058
6059#[allow(dead_code)]
6063#[derive(Debug, Clone)]
6064pub struct AlwaysFf {
6065 pub always_ff_token: crate::veryl_token::VerylToken,
6066}
6067
6068#[allow(dead_code)]
6072#[derive(Debug, Clone)]
6073pub struct AlwaysFfClock {
6074 pub hierarchical_identifier: Box<HierarchicalIdentifier>,
6075}
6076
6077#[allow(dead_code)]
6081#[derive(Debug, Clone)]
6082pub struct AlwaysFfDeclaration {
6083 pub always_ff: Box<AlwaysFf>,
6084 pub always_ff_declaration_opt: Option<AlwaysFfDeclarationOpt>,
6085 pub statement_block: Box<StatementBlock>,
6086}
6087
6088#[allow(dead_code)]
6092#[derive(Debug, Clone)]
6093pub struct AlwaysFfDeclarationOpt {
6094 pub always_ff_event_list: Box<AlwaysFfEventList>,
6095}
6096
6097#[allow(dead_code)]
6101#[derive(Debug, Clone)]
6102pub struct AlwaysFfEventList {
6103 pub l_paren: Box<LParen>,
6104 pub always_ff_clock: Box<AlwaysFfClock>,
6105 pub always_ff_event_list_opt: Option<AlwaysFfEventListOpt>,
6106 pub r_paren: Box<RParen>,
6107}
6108
6109#[allow(dead_code)]
6113#[derive(Debug, Clone)]
6114pub struct AlwaysFfEventListOpt {
6115 pub comma: Box<Comma>,
6116 pub always_ff_reset: Box<AlwaysFfReset>,
6117}
6118
6119#[allow(dead_code)]
6123#[derive(Debug, Clone)]
6124pub struct AlwaysFfReset {
6125 pub hierarchical_identifier: Box<HierarchicalIdentifier>,
6126}
6127
6128#[allow(dead_code)]
6132#[derive(Debug, Clone)]
6133pub struct AlwaysFfTerm {
6134 pub always_ff_term: crate::veryl_token::Token, }
6136
6137#[allow(dead_code)]
6141#[derive(Debug, Clone)]
6142pub struct AlwaysFfToken {
6143 pub always_ff_term: crate::veryl_token::Token,
6144 pub comments: Box<Comments>,
6145}
6146
6147#[allow(dead_code)]
6151#[derive(Debug, Clone)]
6152pub struct Any {
6153 pub any_token: crate::veryl_token::VerylToken,
6154}
6155
6156#[allow(dead_code)]
6160#[derive(Debug, Clone)]
6161pub struct AnyTerm {
6162 pub any_term: crate::veryl_token::Token, }
6164
6165#[allow(dead_code)]
6169#[derive(Debug, Clone)]
6170pub struct AnyToken {
6171 pub any_term: crate::veryl_token::Token,
6172}
6173
6174#[allow(dead_code)]
6178#[derive(Debug, Clone)]
6179pub struct ArgumentExpression {
6180 pub expression: Box<Expression>,
6181}
6182
6183#[allow(dead_code)]
6187#[derive(Debug, Clone)]
6188pub struct ArgumentItem {
6189 pub argument_expression: Box<ArgumentExpression>,
6190 pub argument_item_opt: Option<ArgumentItemOpt>,
6191}
6192
6193#[allow(dead_code)]
6197#[derive(Debug, Clone)]
6198pub struct ArgumentItemOpt {
6199 pub colon: Box<Colon>,
6200 pub expression: Box<Expression>,
6201}
6202
6203#[allow(dead_code)]
6207#[derive(Debug, Clone)]
6208pub struct ArgumentList {
6209 pub argument_item: Box<ArgumentItem>,
6210 pub argument_list_list: Vec<ArgumentListList>,
6211 pub argument_list_opt: Option<ArgumentListOpt>,
6212}
6213
6214#[allow(dead_code)]
6218#[derive(Debug, Clone)]
6219pub struct ArgumentListList {
6220 pub comma: Box<Comma>,
6221 pub argument_item: Box<ArgumentItem>,
6222}
6223
6224#[allow(dead_code)]
6228#[derive(Debug, Clone)]
6229pub struct ArgumentListOpt {
6230 pub comma: Box<Comma>,
6231}
6232
6233#[allow(dead_code)]
6237#[derive(Debug, Clone)]
6238pub struct Array {
6239 pub l_bracket: Box<LBracket>,
6240 pub expression: Box<Expression>,
6241 pub array_list: Vec<ArrayList>,
6242 pub r_bracket: Box<RBracket>,
6243}
6244
6245#[allow(dead_code)]
6249#[derive(Debug, Clone)]
6250pub struct ArrayList {
6251 pub comma: Box<Comma>,
6252 pub expression: Box<Expression>,
6253}
6254
6255#[allow(dead_code)]
6259#[derive(Debug, Clone)]
6260pub struct ArrayLiteralItem {
6261 pub array_literal_item_group: Box<ArrayLiteralItemGroup>,
6262}
6263
6264#[allow(dead_code)]
6268#[derive(Debug, Clone)]
6269pub enum ArrayLiteralItemGroup {
6270 ExpressionArrayLiteralItemOpt(ArrayLiteralItemGroupExpressionArrayLiteralItemOpt),
6271 DefaulColonExpression(ArrayLiteralItemGroupDefaulColonExpression),
6272}
6273
6274#[allow(dead_code)]
6278#[derive(Debug, Clone)]
6279pub struct ArrayLiteralItemOpt {
6280 pub repeat: Box<Repeat>,
6281 pub expression: Box<Expression>,
6282}
6283
6284#[allow(dead_code)]
6288#[derive(Debug, Clone)]
6289pub struct ArrayLiteralList {
6290 pub array_literal_item: Box<ArrayLiteralItem>,
6291 pub array_literal_list_list: Vec<ArrayLiteralListList>,
6292 pub array_literal_list_opt: Option<ArrayLiteralListOpt>,
6293}
6294
6295#[allow(dead_code)]
6299#[derive(Debug, Clone)]
6300pub struct ArrayLiteralListList {
6301 pub comma: Box<Comma>,
6302 pub array_literal_item: Box<ArrayLiteralItem>,
6303}
6304
6305#[allow(dead_code)]
6309#[derive(Debug, Clone)]
6310pub struct ArrayLiteralListOpt {
6311 pub comma: Box<Comma>,
6312}
6313
6314#[allow(dead_code)]
6318#[derive(Debug, Clone)]
6319pub struct ArrayType {
6320 pub scalar_type: Box<ScalarType>,
6321 pub array_type_opt: Option<ArrayTypeOpt>,
6322}
6323
6324#[allow(dead_code)]
6328#[derive(Debug, Clone)]
6329pub struct ArrayTypeOpt {
6330 pub array: Box<Array>,
6331}
6332
6333#[allow(dead_code)]
6337#[derive(Debug, Clone)]
6338pub struct As {
6339 pub as_token: crate::veryl_token::VerylToken,
6340}
6341
6342#[allow(dead_code)]
6346#[derive(Debug, Clone)]
6347pub struct AsTerm {
6348 pub as_term: crate::veryl_token::Token, }
6350
6351#[allow(dead_code)]
6355#[derive(Debug, Clone)]
6356pub struct AsToken {
6357 pub as_term: crate::veryl_token::Token,
6358 pub comments: Box<Comments>,
6359}
6360
6361#[allow(dead_code)]
6365#[derive(Debug, Clone)]
6366pub struct Assign {
6367 pub assign_token: crate::veryl_token::VerylToken,
6368}
6369
6370#[allow(dead_code)]
6374#[derive(Debug, Clone)]
6375pub struct AssignConcatenationItem {
6376 pub hierarchical_identifier: Box<HierarchicalIdentifier>,
6377}
6378
6379#[allow(dead_code)]
6383#[derive(Debug, Clone)]
6384pub struct AssignConcatenationList {
6385 pub assign_concatenation_item: Box<AssignConcatenationItem>,
6386 pub assign_concatenation_list_list: Vec<AssignConcatenationListList>,
6387 pub assign_concatenation_list_opt: Option<AssignConcatenationListOpt>,
6388}
6389
6390#[allow(dead_code)]
6394#[derive(Debug, Clone)]
6395pub struct AssignConcatenationListList {
6396 pub comma: Box<Comma>,
6397 pub assign_concatenation_item: Box<AssignConcatenationItem>,
6398}
6399
6400#[allow(dead_code)]
6404#[derive(Debug, Clone)]
6405pub struct AssignConcatenationListOpt {
6406 pub comma: Box<Comma>,
6407}
6408
6409#[allow(dead_code)]
6413#[derive(Debug, Clone)]
6414pub struct AssignDeclaration {
6415 pub assign: Box<Assign>,
6416 pub assign_destination: Box<AssignDestination>,
6417 pub equ: Box<Equ>,
6418 pub expression: Box<Expression>,
6419 pub semicolon: Box<Semicolon>,
6420}
6421
6422#[allow(dead_code)]
6426#[derive(Debug, Clone)]
6427pub enum AssignDestination {
6428 HierarchicalIdentifier(AssignDestinationHierarchicalIdentifier),
6429 LBraceAssignConcatenationListRBrace(AssignDestinationLBraceAssignConcatenationListRBrace),
6430}
6431
6432#[allow(dead_code)]
6436#[derive(Debug, Clone)]
6437pub struct AssignTerm {
6438 pub assign_term: crate::veryl_token::Token, }
6440
6441#[allow(dead_code)]
6445#[derive(Debug, Clone)]
6446pub struct AssignToken {
6447 pub assign_term: crate::veryl_token::Token,
6448 pub comments: Box<Comments>,
6449}
6450
6451#[allow(dead_code)]
6455#[derive(Debug, Clone)]
6456pub struct Assignment {
6457 pub assignment_group: Box<AssignmentGroup>,
6458 pub expression: Box<Expression>,
6459}
6460
6461#[allow(dead_code)]
6465#[derive(Debug, Clone)]
6466pub enum AssignmentGroup {
6467 Equ(AssignmentGroupEqu),
6468 AssignmentOperator(AssignmentGroupAssignmentOperator),
6469 DiamondOperator(AssignmentGroupDiamondOperator),
6470}
6471
6472#[allow(dead_code)]
6476#[derive(Debug, Clone)]
6477pub struct AssignmentOperator {
6478 pub assignment_operator_token: crate::veryl_token::VerylToken,
6479}
6480
6481#[allow(dead_code)]
6485#[derive(Debug, Clone)]
6486pub struct AssignmentOperatorTerm {
6487 pub assignment_operator_term: crate::veryl_token::Token, }
6489
6490#[allow(dead_code)]
6494#[derive(Debug, Clone)]
6495pub struct AssignmentOperatorToken {
6496 pub assignment_operator_term: crate::veryl_token::Token,
6497 pub comments: Box<Comments>,
6498}
6499
6500#[allow(dead_code)]
6504#[derive(Debug, Clone)]
6505pub struct Attribute {
6506 pub hash_l_bracket: Box<HashLBracket>,
6507 pub identifier: Box<Identifier>,
6508 pub attribute_opt: Option<AttributeOpt>,
6509 pub r_bracket: Box<RBracket>,
6510}
6511
6512#[allow(dead_code)]
6516#[derive(Debug, Clone)]
6517pub enum AttributeItem {
6518 Identifier(AttributeItemIdentifier),
6519 StringLiteral(AttributeItemStringLiteral),
6520}
6521
6522#[allow(dead_code)]
6526#[derive(Debug, Clone)]
6527pub struct AttributeList {
6528 pub attribute_item: Box<AttributeItem>,
6529 pub attribute_list_list: Vec<AttributeListList>,
6530 pub attribute_list_opt: Option<AttributeListOpt>,
6531}
6532
6533#[allow(dead_code)]
6537#[derive(Debug, Clone)]
6538pub struct AttributeListList {
6539 pub comma: Box<Comma>,
6540 pub attribute_item: Box<AttributeItem>,
6541}
6542
6543#[allow(dead_code)]
6547#[derive(Debug, Clone)]
6548pub struct AttributeListOpt {
6549 pub comma: Box<Comma>,
6550}
6551
6552#[allow(dead_code)]
6556#[derive(Debug, Clone)]
6557pub struct AttributeOpt {
6558 pub l_paren: Box<LParen>,
6559 pub attribute_list: Box<AttributeList>,
6560 pub r_paren: Box<RParen>,
6561}
6562
6563#[allow(dead_code)]
6567#[derive(Debug, Clone)]
6568pub struct BBool {
6569 pub b_bool_token: crate::veryl_token::VerylToken,
6570}
6571
6572#[allow(dead_code)]
6576#[derive(Debug, Clone)]
6577pub struct BBoolTerm {
6578 pub b_bool_term: crate::veryl_token::Token, }
6580
6581#[allow(dead_code)]
6585#[derive(Debug, Clone)]
6586pub struct BBoolToken {
6587 pub b_bool_term: crate::veryl_token::Token,
6588 pub comments: Box<Comments>,
6589}
6590
6591#[allow(dead_code)]
6595#[derive(Debug, Clone)]
6596pub struct BaseLess {
6597 pub base_less_token: crate::veryl_token::VerylToken,
6598}
6599
6600#[allow(dead_code)]
6604#[derive(Debug, Clone)]
6605pub struct BaseLessTerm {
6606 pub base_less_term: crate::veryl_token::Token, }
6608
6609#[allow(dead_code)]
6613#[derive(Debug, Clone)]
6614pub struct BaseLessToken {
6615 pub base_less_term: crate::veryl_token::Token,
6616 pub comments: Box<Comments>,
6617}
6618
6619#[allow(dead_code)]
6623#[derive(Debug, Clone)]
6624pub struct Based {
6625 pub based_token: crate::veryl_token::VerylToken,
6626}
6627
6628#[allow(dead_code)]
6632#[derive(Debug, Clone)]
6633pub struct BasedTerm {
6634 pub based_term: crate::veryl_token::Token, }
6636
6637#[allow(dead_code)]
6641#[derive(Debug, Clone)]
6642pub struct BasedToken {
6643 pub based_term: crate::veryl_token::Token,
6644 pub comments: Box<Comments>,
6645}
6646
6647#[allow(dead_code)]
6651#[derive(Debug, Clone)]
6652pub struct Bind {
6653 pub bind_token: crate::veryl_token::VerylToken,
6654}
6655
6656#[allow(dead_code)]
6660#[derive(Debug, Clone)]
6661pub struct BindDeclaration {
6662 pub bind: Box<Bind>,
6663 pub scoped_identifier: Box<ScopedIdentifier>,
6664 pub l_t_minus: Box<LTMinus>,
6665 pub component_instantiation: Box<ComponentInstantiation>,
6666 pub semicolon: Box<Semicolon>,
6667}
6668
6669#[allow(dead_code)]
6673#[derive(Debug, Clone)]
6674pub struct BindTerm {
6675 pub bind_term: crate::veryl_token::Token, }
6677
6678#[allow(dead_code)]
6682#[derive(Debug, Clone)]
6683pub struct BindToken {
6684 pub bind_term: crate::veryl_token::Token,
6685 pub comments: Box<Comments>,
6686}
6687
6688#[allow(dead_code)]
6692#[derive(Debug, Clone)]
6693pub struct Bit {
6694 pub bit_token: crate::veryl_token::VerylToken,
6695}
6696
6697#[allow(dead_code)]
6701#[derive(Debug, Clone)]
6702pub struct BitTerm {
6703 pub bit_term: crate::veryl_token::Token, }
6705
6706#[allow(dead_code)]
6710#[derive(Debug, Clone)]
6711pub struct BitToken {
6712 pub bit_term: crate::veryl_token::Token,
6713 pub comments: Box<Comments>,
6714}
6715
6716#[allow(dead_code)]
6720#[derive(Debug, Clone)]
6721pub struct Block {
6722 pub block_token: crate::veryl_token::VerylToken,
6723}
6724
6725#[allow(dead_code)]
6729#[derive(Debug, Clone)]
6730pub struct BlockTerm {
6731 pub block_term: crate::veryl_token::Token, }
6733
6734#[allow(dead_code)]
6738#[derive(Debug, Clone)]
6739pub struct BlockToken {
6740 pub block_term: crate::veryl_token::Token,
6741 pub comments: Box<Comments>,
6742}
6743
6744#[allow(dead_code)]
6748#[derive(Debug, Clone)]
6749pub enum BooleanLiteral {
6750 True(BooleanLiteralTrue),
6751 False(BooleanLiteralFalse),
6752}
6753
6754#[allow(dead_code)]
6758#[derive(Debug, Clone)]
6759pub struct Break {
6760 pub break_token: crate::veryl_token::VerylToken,
6761}
6762
6763#[allow(dead_code)]
6767#[derive(Debug, Clone)]
6768pub struct BreakStatement {
6769 pub r#break: Box<Break>,
6770 pub semicolon: Box<Semicolon>,
6771}
6772
6773#[allow(dead_code)]
6777#[derive(Debug, Clone)]
6778pub struct BreakTerm {
6779 pub break_term: crate::veryl_token::Token, }
6781
6782#[allow(dead_code)]
6786#[derive(Debug, Clone)]
6787pub struct BreakToken {
6788 pub break_term: crate::veryl_token::Token,
6789 pub comments: Box<Comments>,
6790}
6791
6792#[allow(dead_code)]
6796#[derive(Debug, Clone)]
6797pub struct Case {
6798 pub case_token: crate::veryl_token::VerylToken,
6799}
6800
6801#[allow(dead_code)]
6805#[derive(Debug, Clone)]
6806pub struct CaseCondition {
6807 pub range_item: Box<RangeItem>,
6808 pub case_condition_list: Vec<CaseConditionList>,
6809}
6810
6811#[allow(dead_code)]
6815#[derive(Debug, Clone)]
6816pub struct CaseConditionList {
6817 pub comma: Box<Comma>,
6818 pub range_item: Box<RangeItem>,
6819}
6820
6821#[allow(dead_code)]
6825#[derive(Debug, Clone)]
6826pub struct CaseExpression {
6827 pub case: Box<Case>,
6828 pub expression: Box<Expression>,
6829 pub l_brace: Box<LBrace>,
6830 pub case_condition: Box<CaseCondition>,
6831 pub colon: Box<Colon>,
6832 pub expression0: Box<Expression>,
6833 pub comma: Box<Comma>,
6834 pub case_expression_list: Vec<CaseExpressionList>,
6835 pub defaul: Box<Defaul>,
6836 pub colon0: Box<Colon>,
6837 pub expression1: Box<Expression>,
6838 pub case_expression_opt: Option<CaseExpressionOpt>,
6839 pub r_brace: Box<RBrace>,
6840}
6841
6842#[allow(dead_code)]
6846#[derive(Debug, Clone)]
6847pub struct CaseExpressionList {
6848 pub case_condition: Box<CaseCondition>,
6849 pub colon: Box<Colon>,
6850 pub expression: Box<Expression>,
6851 pub comma: Box<Comma>,
6852}
6853
6854#[allow(dead_code)]
6858#[derive(Debug, Clone)]
6859pub struct CaseExpressionOpt {
6860 pub comma: Box<Comma>,
6861}
6862
6863#[allow(dead_code)]
6867#[derive(Debug, Clone)]
6868pub struct CaseItem {
6869 pub case_item_group: Box<CaseItemGroup>,
6870 pub colon: Box<Colon>,
6871 pub case_item_group0: Box<CaseItemGroup0>,
6872}
6873
6874#[allow(dead_code)]
6878#[derive(Debug, Clone)]
6879pub enum CaseItemGroup {
6880 CaseCondition(CaseItemGroupCaseCondition),
6881 Defaul(CaseItemGroupDefaul),
6882}
6883
6884#[allow(dead_code)]
6888#[derive(Debug, Clone)]
6889pub enum CaseItemGroup0 {
6890 Statement(CaseItemGroup0Statement),
6891 StatementBlock(CaseItemGroup0StatementBlock),
6892}
6893
6894#[allow(dead_code)]
6898#[derive(Debug, Clone)]
6899pub struct CaseStatement {
6900 pub case: Box<Case>,
6901 pub expression: Box<Expression>,
6902 pub l_brace: Box<LBrace>,
6903 pub case_statement_list: Vec<CaseStatementList>,
6904 pub r_brace: Box<RBrace>,
6905}
6906
6907#[allow(dead_code)]
6911#[derive(Debug, Clone)]
6912pub struct CaseStatementList {
6913 pub case_item: Box<CaseItem>,
6914}
6915
6916#[allow(dead_code)]
6920#[derive(Debug, Clone)]
6921pub struct CaseTerm {
6922 pub case_term: crate::veryl_token::Token, }
6924
6925#[allow(dead_code)]
6929#[derive(Debug, Clone)]
6930pub struct CaseToken {
6931 pub case_term: crate::veryl_token::Token,
6932 pub comments: Box<Comments>,
6933}
6934
6935#[allow(dead_code)]
6939#[derive(Debug, Clone)]
6940pub enum CastingType {
6941 U8(CastingTypeU8),
6942 U16(CastingTypeU16),
6943 U32(CastingTypeU32),
6944 U64(CastingTypeU64),
6945 P8(CastingTypeP8),
6946 P16(CastingTypeP16),
6947 P32(CastingTypeP32),
6948 P64(CastingTypeP64),
6949 I8(CastingTypeI8),
6950 I16(CastingTypeI16),
6951 I32(CastingTypeI32),
6952 I64(CastingTypeI64),
6953 F32(CastingTypeF32),
6954 F64(CastingTypeF64),
6955 BBool(CastingTypeBBool),
6956 LBool(CastingTypeLBool),
6957 Clock(CastingTypeClock),
6958 ClockPosedge(CastingTypeClockPosedge),
6959 ClockNegedge(CastingTypeClockNegedge),
6960 Reset(CastingTypeReset),
6961 ResetAsyncHigh(CastingTypeResetAsyncHigh),
6962 ResetAsyncLow(CastingTypeResetAsyncLow),
6963 ResetSyncHigh(CastingTypeResetSyncHigh),
6964 ResetSyncLow(CastingTypeResetSyncLow),
6965 UserDefinedType(CastingTypeUserDefinedType),
6966 Based(CastingTypeBased),
6967 BaseLess(CastingTypeBaseLess),
6968}
6969
6970#[allow(dead_code)]
6974#[derive(Debug, Clone)]
6975pub struct Clock {
6976 pub clock_token: crate::veryl_token::VerylToken,
6977}
6978
6979#[allow(dead_code)]
6983#[derive(Debug, Clone)]
6984pub struct ClockDomain {
6985 pub quote: Box<Quote>,
6986 pub identifier: Box<Identifier>,
6987}
6988
6989#[allow(dead_code)]
6993#[derive(Debug, Clone)]
6994pub struct ClockNegedge {
6995 pub clock_negedge_token: crate::veryl_token::VerylToken,
6996}
6997
6998#[allow(dead_code)]
7002#[derive(Debug, Clone)]
7003pub struct ClockNegedgeTerm {
7004 pub clock_negedge_term: crate::veryl_token::Token, }
7006
7007#[allow(dead_code)]
7011#[derive(Debug, Clone)]
7012pub struct ClockNegedgeToken {
7013 pub clock_negedge_term: crate::veryl_token::Token,
7014 pub comments: Box<Comments>,
7015}
7016
7017#[allow(dead_code)]
7021#[derive(Debug, Clone)]
7022pub struct ClockPosedge {
7023 pub clock_posedge_token: crate::veryl_token::VerylToken,
7024}
7025
7026#[allow(dead_code)]
7030#[derive(Debug, Clone)]
7031pub struct ClockPosedgeTerm {
7032 pub clock_posedge_term: crate::veryl_token::Token, }
7034
7035#[allow(dead_code)]
7039#[derive(Debug, Clone)]
7040pub struct ClockPosedgeToken {
7041 pub clock_posedge_term: crate::veryl_token::Token,
7042 pub comments: Box<Comments>,
7043}
7044
7045#[allow(dead_code)]
7049#[derive(Debug, Clone)]
7050pub struct ClockTerm {
7051 pub clock_term: crate::veryl_token::Token, }
7053
7054#[allow(dead_code)]
7058#[derive(Debug, Clone)]
7059pub struct ClockToken {
7060 pub clock_term: crate::veryl_token::Token,
7061 pub comments: Box<Comments>,
7062}
7063
7064#[allow(dead_code)]
7068#[derive(Debug, Clone)]
7069pub struct Colon {
7070 pub colon_token: crate::veryl_token::VerylToken,
7071}
7072
7073#[allow(dead_code)]
7077#[derive(Debug, Clone)]
7078pub struct ColonColon {
7079 pub colon_colon_token: crate::veryl_token::VerylToken,
7080}
7081
7082#[allow(dead_code)]
7086#[derive(Debug, Clone)]
7087pub struct ColonColonLAngle {
7088 pub colon_colon_l_angle_token: crate::veryl_token::VerylToken,
7089}
7090
7091#[allow(dead_code)]
7095#[derive(Debug, Clone)]
7096pub struct ColonColonLAngleTerm {
7097 pub colon_colon_l_angle_term: crate::veryl_token::Token, }
7099
7100#[allow(dead_code)]
7104#[derive(Debug, Clone)]
7105pub struct ColonColonLAngleToken {
7106 pub colon_colon_l_angle_term: crate::veryl_token::Token,
7107 pub comments: Box<Comments>,
7108}
7109
7110#[allow(dead_code)]
7114#[derive(Debug, Clone)]
7115pub struct ColonColonTerm {
7116 pub colon_colon_term: crate::veryl_token::Token, }
7118
7119#[allow(dead_code)]
7123#[derive(Debug, Clone)]
7124pub struct ColonColonToken {
7125 pub colon_colon_term: crate::veryl_token::Token,
7126 pub comments: Box<Comments>,
7127}
7128
7129#[allow(dead_code)]
7133#[derive(Debug, Clone)]
7134pub struct ColonTerm {
7135 pub colon_term: crate::veryl_token::Token, }
7137
7138#[allow(dead_code)]
7142#[derive(Debug, Clone)]
7143pub struct ColonToken {
7144 pub colon_term: crate::veryl_token::Token,
7145 pub comments: Box<Comments>,
7146}
7147
7148#[allow(dead_code)]
7152#[derive(Debug, Clone)]
7153pub struct Comma {
7154 pub comma_token: crate::veryl_token::VerylToken,
7155}
7156
7157#[allow(dead_code)]
7161#[derive(Debug, Clone)]
7162pub struct CommaTerm {
7163 pub comma_term: crate::veryl_token::Token, }
7165
7166#[allow(dead_code)]
7170#[derive(Debug, Clone)]
7171pub struct CommaToken {
7172 pub comma_term: crate::veryl_token::Token,
7173 pub comments: Box<Comments>,
7174}
7175
7176#[allow(dead_code)]
7180#[derive(Debug, Clone)]
7181pub struct Comments {
7182 pub comments_opt: Option<CommentsOpt>,
7183}
7184
7185#[allow(dead_code)]
7189#[derive(Debug, Clone)]
7190pub struct CommentsOpt {
7191 pub comments_term: Box<CommentsTerm>,
7192}
7193
7194#[allow(dead_code)]
7198#[derive(Debug, Clone)]
7199pub struct CommentsTerm {
7200 pub comments_term: crate::veryl_token::Token, }
7202
7203#[allow(dead_code)]
7207#[derive(Debug, Clone)]
7208pub struct ComponentInstantiation {
7209 pub identifier: Box<Identifier>,
7210 pub colon: Box<Colon>,
7211 pub component_instantiation_opt: Option<ComponentInstantiationOpt>,
7212 pub scoped_identifier: Box<ScopedIdentifier>,
7213 pub component_instantiation_opt0: Option<ComponentInstantiationOpt0>,
7214 pub component_instantiation_opt1: Option<ComponentInstantiationOpt1>,
7215 pub component_instantiation_opt2: Option<ComponentInstantiationOpt2>,
7216}
7217
7218#[allow(dead_code)]
7222#[derive(Debug, Clone)]
7223pub struct ComponentInstantiationOpt {
7224 pub clock_domain: Box<ClockDomain>,
7225}
7226
7227#[allow(dead_code)]
7231#[derive(Debug, Clone)]
7232pub struct ComponentInstantiationOpt0 {
7233 pub array: Box<Array>,
7234}
7235
7236#[allow(dead_code)]
7240#[derive(Debug, Clone)]
7241pub struct ComponentInstantiationOpt1 {
7242 pub inst_parameter: Box<InstParameter>,
7243}
7244
7245#[allow(dead_code)]
7249#[derive(Debug, Clone)]
7250pub struct ComponentInstantiationOpt2 {
7251 pub inst_port: Box<InstPort>,
7252}
7253
7254#[allow(dead_code)]
7258#[derive(Debug, Clone)]
7259pub struct ConcatenationAssignment {
7260 pub l_brace: Box<LBrace>,
7261 pub assign_concatenation_list: Box<AssignConcatenationList>,
7262 pub r_brace: Box<RBrace>,
7263 pub equ: Box<Equ>,
7264 pub expression: Box<Expression>,
7265 pub semicolon: Box<Semicolon>,
7266}
7267
7268#[allow(dead_code)]
7272#[derive(Debug, Clone)]
7273pub struct ConcatenationItem {
7274 pub expression: Box<Expression>,
7275 pub concatenation_item_opt: Option<ConcatenationItemOpt>,
7276}
7277
7278#[allow(dead_code)]
7282#[derive(Debug, Clone)]
7283pub struct ConcatenationItemOpt {
7284 pub repeat: Box<Repeat>,
7285 pub expression: Box<Expression>,
7286}
7287
7288#[allow(dead_code)]
7292#[derive(Debug, Clone)]
7293pub struct ConcatenationList {
7294 pub concatenation_item: Box<ConcatenationItem>,
7295 pub concatenation_list_list: Vec<ConcatenationListList>,
7296 pub concatenation_list_opt: Option<ConcatenationListOpt>,
7297}
7298
7299#[allow(dead_code)]
7303#[derive(Debug, Clone)]
7304pub struct ConcatenationListList {
7305 pub comma: Box<Comma>,
7306 pub concatenation_item: Box<ConcatenationItem>,
7307}
7308
7309#[allow(dead_code)]
7313#[derive(Debug, Clone)]
7314pub struct ConcatenationListOpt {
7315 pub comma: Box<Comma>,
7316}
7317
7318#[allow(dead_code)]
7322#[derive(Debug, Clone)]
7323pub struct Connect {
7324 pub connect_token: crate::veryl_token::VerylToken,
7325}
7326
7327#[allow(dead_code)]
7331#[derive(Debug, Clone)]
7332pub struct ConnectDeclaration {
7333 pub connect: Box<Connect>,
7334 pub hierarchical_identifier: Box<HierarchicalIdentifier>,
7335 pub diamond_operator: Box<DiamondOperator>,
7336 pub expression: Box<Expression>,
7337 pub semicolon: Box<Semicolon>,
7338}
7339
7340#[allow(dead_code)]
7344#[derive(Debug, Clone)]
7345pub struct ConnectTerm {
7346 pub connect_term: crate::veryl_token::Token, }
7348
7349#[allow(dead_code)]
7353#[derive(Debug, Clone)]
7354pub struct ConnectToken {
7355 pub connect_term: crate::veryl_token::Token,
7356 pub comments: Box<Comments>,
7357}
7358
7359#[allow(dead_code)]
7363#[derive(Debug, Clone)]
7364pub struct Const {
7365 pub const_token: crate::veryl_token::VerylToken,
7366}
7367
7368#[allow(dead_code)]
7372#[derive(Debug, Clone)]
7373pub struct ConstDeclaration {
7374 pub r#const: Box<Const>,
7375 pub identifier: Box<Identifier>,
7376 pub colon: Box<Colon>,
7377 pub const_declaration_group: Box<ConstDeclarationGroup>,
7378 pub equ: Box<Equ>,
7379 pub expression: Box<Expression>,
7380 pub semicolon: Box<Semicolon>,
7381}
7382
7383#[allow(dead_code)]
7387#[derive(Debug, Clone)]
7388pub enum ConstDeclarationGroup {
7389 ArrayType(ConstDeclarationGroupArrayType),
7390 Type(ConstDeclarationGroupType),
7391}
7392
7393#[allow(dead_code)]
7397#[derive(Debug, Clone)]
7398pub struct ConstTerm {
7399 pub const_term: crate::veryl_token::Token, }
7401
7402#[allow(dead_code)]
7406#[derive(Debug, Clone)]
7407pub struct ConstToken {
7408 pub const_term: crate::veryl_token::Token,
7409 pub comments: Box<Comments>,
7410}
7411
7412#[allow(dead_code)]
7416#[derive(Debug, Clone)]
7417pub struct Converse {
7418 pub converse_token: crate::veryl_token::VerylToken,
7419}
7420
7421#[allow(dead_code)]
7425#[derive(Debug, Clone)]
7426pub struct ConverseTerm {
7427 pub converse_term: crate::veryl_token::Token, }
7429
7430#[allow(dead_code)]
7434#[derive(Debug, Clone)]
7435pub struct ConverseToken {
7436 pub converse_term: crate::veryl_token::Token,
7437 pub comments: Box<Comments>,
7438}
7439
7440#[allow(dead_code)]
7444#[derive(Debug, Clone)]
7445pub struct Defaul {
7446 pub default_token: crate::veryl_token::VerylToken,
7447}
7448
7449#[allow(dead_code)]
7453#[derive(Debug, Clone)]
7454pub struct DefaultTerm {
7455 pub default_term: crate::veryl_token::Token, }
7457
7458#[allow(dead_code)]
7462#[derive(Debug, Clone)]
7463pub struct DefaultToken {
7464 pub default_term: crate::veryl_token::Token,
7465 pub comments: Box<Comments>,
7466}
7467
7468#[allow(dead_code)]
7472#[derive(Debug, Clone)]
7473pub struct DescriptionGroup {
7474 pub description_group_list: Vec<DescriptionGroupList>,
7475 pub description_group_group: Box<DescriptionGroupGroup>,
7476}
7477
7478#[allow(dead_code)]
7482#[derive(Debug, Clone)]
7483pub enum DescriptionGroupGroup {
7484 LBraceDescriptionGroupGroupListRBrace(
7485 DescriptionGroupGroupLBraceDescriptionGroupGroupListRBrace,
7486 ),
7487 DescriptionItem(DescriptionGroupGroupDescriptionItem),
7488}
7489
7490#[allow(dead_code)]
7494#[derive(Debug, Clone)]
7495pub struct DescriptionGroupGroupList {
7496 pub description_group: Box<DescriptionGroup>,
7497}
7498
7499#[allow(dead_code)]
7503#[derive(Debug, Clone)]
7504pub struct DescriptionGroupList {
7505 pub attribute: Box<Attribute>,
7506}
7507
7508#[allow(dead_code)]
7512#[derive(Debug, Clone)]
7513pub enum DescriptionItem {
7514 DescriptionItemOptPublicDescriptionItem(DescriptionItemDescriptionItemOptPublicDescriptionItem),
7515 ImportDeclaration(DescriptionItemImportDeclaration),
7516 BindDeclaration(DescriptionItemBindDeclaration),
7517 EmbedDeclaration(DescriptionItemEmbedDeclaration),
7518 IncludeDeclaration(DescriptionItemIncludeDeclaration),
7519}
7520
7521#[allow(dead_code)]
7525#[derive(Debug, Clone)]
7526pub struct DescriptionItemOpt {
7527 pub r#pub: Box<Pub>,
7528}
7529
7530#[allow(dead_code)]
7534#[derive(Debug, Clone)]
7535pub struct DiamondOperator {
7536 pub diamond_operator_token: crate::veryl_token::VerylToken,
7537}
7538
7539#[allow(dead_code)]
7543#[derive(Debug, Clone)]
7544pub struct DiamondOperatorTerm {
7545 pub diamond_operator_term: crate::veryl_token::Token, }
7547
7548#[allow(dead_code)]
7552#[derive(Debug, Clone)]
7553pub struct DiamondOperatorToken {
7554 pub diamond_operator_term: crate::veryl_token::Token,
7555 pub comments: Box<Comments>,
7556}
7557
7558#[allow(dead_code)]
7562#[derive(Debug, Clone)]
7563pub enum Direction {
7564 Input(DirectionInput),
7565 Output(DirectionOutput),
7566 Inout(DirectionInout),
7567 Modport(DirectionModport),
7568 Import(DirectionImport),
7569}
7570
7571#[allow(dead_code)]
7575#[derive(Debug, Clone)]
7576pub struct DollarIdentifier {
7577 pub dollar_identifier_token: crate::veryl_token::VerylToken,
7578}
7579
7580#[allow(dead_code)]
7584#[derive(Debug, Clone)]
7585pub struct DollarIdentifierTerm {
7586 pub dollar_identifier_term: crate::veryl_token::Token, }
7588
7589#[allow(dead_code)]
7593#[derive(Debug, Clone)]
7594pub struct DollarIdentifierToken {
7595 pub dollar_identifier_term: crate::veryl_token::Token,
7596 pub comments: Box<Comments>,
7597}
7598
7599#[allow(dead_code)]
7603#[derive(Debug, Clone)]
7604pub struct Dot {
7605 pub dot_token: crate::veryl_token::VerylToken,
7606}
7607
7608#[allow(dead_code)]
7612#[derive(Debug, Clone)]
7613pub struct DotDot {
7614 pub dot_dot_token: crate::veryl_token::VerylToken,
7615}
7616
7617#[allow(dead_code)]
7621#[derive(Debug, Clone)]
7622pub struct DotDotEqu {
7623 pub dot_dot_equ_token: crate::veryl_token::VerylToken,
7624}
7625
7626#[allow(dead_code)]
7630#[derive(Debug, Clone)]
7631pub struct DotDotEquTerm {
7632 pub dot_dot_equ_term: crate::veryl_token::Token, }
7634
7635#[allow(dead_code)]
7639#[derive(Debug, Clone)]
7640pub struct DotDotEquToken {
7641 pub dot_dot_equ_term: crate::veryl_token::Token,
7642 pub comments: Box<Comments>,
7643}
7644
7645#[allow(dead_code)]
7649#[derive(Debug, Clone)]
7650pub struct DotDotTerm {
7651 pub dot_dot_term: crate::veryl_token::Token, }
7653
7654#[allow(dead_code)]
7658#[derive(Debug, Clone)]
7659pub struct DotDotToken {
7660 pub dot_dot_term: crate::veryl_token::Token,
7661 pub comments: Box<Comments>,
7662}
7663
7664#[allow(dead_code)]
7668#[derive(Debug, Clone)]
7669pub struct DotTerm {
7670 pub dot_term: crate::veryl_token::Token, }
7672
7673#[allow(dead_code)]
7677#[derive(Debug, Clone)]
7678pub struct DotToken {
7679 pub dot_term: crate::veryl_token::Token,
7680 pub comments: Box<Comments>,
7681}
7682
7683#[allow(dead_code)]
7687#[derive(Debug, Clone)]
7688pub struct Else {
7689 pub else_token: crate::veryl_token::VerylToken,
7690}
7691
7692#[allow(dead_code)]
7696#[derive(Debug, Clone)]
7697pub struct ElseTerm {
7698 pub else_term: crate::veryl_token::Token, }
7700
7701#[allow(dead_code)]
7705#[derive(Debug, Clone)]
7706pub struct ElseToken {
7707 pub else_term: crate::veryl_token::Token,
7708 pub comments: Box<Comments>,
7709}
7710
7711#[allow(dead_code)]
7715#[derive(Debug, Clone)]
7716pub struct Embed {
7717 pub embed_token: crate::veryl_token::VerylToken,
7718}
7719
7720#[allow(dead_code)]
7724#[derive(Debug, Clone)]
7725pub struct EmbedContent {
7726 pub triple_l_brace: Box<TripleLBrace>,
7727 pub embed_content_list: Vec<EmbedContentList>,
7728 pub triple_r_brace: Box<TripleRBrace>,
7729}
7730
7731#[allow(dead_code)]
7735#[derive(Debug, Clone)]
7736pub struct EmbedContentList {
7737 pub embed_item: Box<EmbedItem>,
7738}
7739
7740#[allow(dead_code)]
7744#[derive(Debug, Clone)]
7745pub struct EmbedDeclaration {
7746 pub embed: Box<Embed>,
7747 pub l_paren: Box<LParen>,
7748 pub identifier: Box<Identifier>,
7749 pub r_paren: Box<RParen>,
7750 pub identifier0: Box<Identifier>,
7751 pub embed_content: Box<EmbedContent>,
7752}
7753
7754#[allow(dead_code)]
7758#[derive(Debug, Clone)]
7759pub enum EmbedItem {
7760 EmbedLBraceEmbedItemListEmbedRBrace(EmbedItemEmbedLBraceEmbedItemListEmbedRBrace),
7761 EmbedScopedIdentifier(EmbedItemEmbedScopedIdentifier),
7762 Any(EmbedItemAny),
7763}
7764
7765#[allow(dead_code)]
7769#[derive(Debug, Clone)]
7770pub struct EmbedItemList {
7771 pub embed_item: Box<EmbedItem>,
7772}
7773
7774#[allow(dead_code)]
7778#[derive(Debug, Clone)]
7779pub struct EmbedLBrace {
7780 pub embed_l_brace_token: crate::veryl_token::VerylToken,
7781}
7782
7783#[allow(dead_code)]
7787#[derive(Debug, Clone)]
7788pub struct EmbedLBraceToken {
7789 pub l_brace_term: crate::veryl_token::Token,
7790}
7791
7792#[allow(dead_code)]
7796#[derive(Debug, Clone)]
7797pub struct EmbedRBrace {
7798 pub embed_r_brace_token: crate::veryl_token::VerylToken,
7799}
7800
7801#[allow(dead_code)]
7805#[derive(Debug, Clone)]
7806pub struct EmbedRBraceToken {
7807 pub r_brace_term: crate::veryl_token::Token,
7808}
7809
7810#[allow(dead_code)]
7814#[derive(Debug, Clone)]
7815pub struct EmbedScopedIdentifier {
7816 pub escaped_l_brace: Box<EscapedLBrace>,
7817 pub scoped_identifier: Box<ScopedIdentifier>,
7818 pub escaped_r_brace: Box<EscapedRBrace>,
7819}
7820
7821#[allow(dead_code)]
7825#[derive(Debug, Clone)]
7826pub struct EmbedTerm {
7827 pub embed_term: crate::veryl_token::Token, }
7829
7830#[allow(dead_code)]
7834#[derive(Debug, Clone)]
7835pub struct EmbedToken {
7836 pub embed_term: crate::veryl_token::Token,
7837 pub comments: Box<Comments>,
7838}
7839
7840#[allow(dead_code)]
7844#[derive(Debug, Clone)]
7845pub struct Enum {
7846 pub enum_token: crate::veryl_token::VerylToken,
7847}
7848
7849#[allow(dead_code)]
7853#[derive(Debug, Clone)]
7854pub struct EnumDeclaration {
7855 pub r#enum: Box<Enum>,
7856 pub identifier: Box<Identifier>,
7857 pub enum_declaration_opt: Option<EnumDeclarationOpt>,
7858 pub l_brace: Box<LBrace>,
7859 pub enum_list: Box<EnumList>,
7860 pub r_brace: Box<RBrace>,
7861}
7862
7863#[allow(dead_code)]
7867#[derive(Debug, Clone)]
7868pub struct EnumDeclarationOpt {
7869 pub colon: Box<Colon>,
7870 pub scalar_type: Box<ScalarType>,
7871}
7872
7873#[allow(dead_code)]
7877#[derive(Debug, Clone)]
7878pub struct EnumGroup {
7879 pub enum_group_list: Vec<EnumGroupList>,
7880 pub enum_group_group: Box<EnumGroupGroup>,
7881}
7882
7883#[allow(dead_code)]
7887#[derive(Debug, Clone)]
7888pub enum EnumGroupGroup {
7889 LBraceEnumListRBrace(EnumGroupGroupLBraceEnumListRBrace),
7890 EnumItem(EnumGroupGroupEnumItem),
7891}
7892
7893#[allow(dead_code)]
7897#[derive(Debug, Clone)]
7898pub struct EnumGroupList {
7899 pub attribute: Box<Attribute>,
7900}
7901
7902#[allow(dead_code)]
7906#[derive(Debug, Clone)]
7907pub struct EnumItem {
7908 pub identifier: Box<Identifier>,
7909 pub enum_item_opt: Option<EnumItemOpt>,
7910}
7911
7912#[allow(dead_code)]
7916#[derive(Debug, Clone)]
7917pub struct EnumItemOpt {
7918 pub equ: Box<Equ>,
7919 pub expression: Box<Expression>,
7920}
7921
7922#[allow(dead_code)]
7926#[derive(Debug, Clone)]
7927pub struct EnumList {
7928 pub enum_group: Box<EnumGroup>,
7929 pub enum_list_list: Vec<EnumListList>,
7930 pub enum_list_opt: Option<EnumListOpt>,
7931}
7932
7933#[allow(dead_code)]
7937#[derive(Debug, Clone)]
7938pub struct EnumListList {
7939 pub comma: Box<Comma>,
7940 pub enum_group: Box<EnumGroup>,
7941}
7942
7943#[allow(dead_code)]
7947#[derive(Debug, Clone)]
7948pub struct EnumListOpt {
7949 pub comma: Box<Comma>,
7950}
7951
7952#[allow(dead_code)]
7956#[derive(Debug, Clone)]
7957pub struct EnumTerm {
7958 pub enum_term: crate::veryl_token::Token, }
7960
7961#[allow(dead_code)]
7965#[derive(Debug, Clone)]
7966pub struct EnumToken {
7967 pub enum_term: crate::veryl_token::Token,
7968 pub comments: Box<Comments>,
7969}
7970
7971#[allow(dead_code)]
7975#[derive(Debug, Clone)]
7976pub struct Equ {
7977 pub equ_token: crate::veryl_token::VerylToken,
7978}
7979
7980#[allow(dead_code)]
7984#[derive(Debug, Clone)]
7985pub struct EquTerm {
7986 pub equ_term: crate::veryl_token::Token, }
7988
7989#[allow(dead_code)]
7993#[derive(Debug, Clone)]
7994pub struct EquToken {
7995 pub equ_term: crate::veryl_token::Token,
7996 pub comments: Box<Comments>,
7997}
7998
7999#[allow(dead_code)]
8003#[derive(Debug, Clone)]
8004pub struct EscapedLBrace {
8005 pub escaped_l_brace_token: crate::veryl_token::VerylToken,
8006}
8007
8008#[allow(dead_code)]
8012#[derive(Debug, Clone)]
8013pub struct EscapedLBraceTerm {
8014 pub escaped_l_brace_term: crate::veryl_token::Token, }
8016
8017#[allow(dead_code)]
8021#[derive(Debug, Clone)]
8022pub struct EscapedLBraceToken {
8023 pub escaped_l_brace_term: crate::veryl_token::Token,
8024}
8025
8026#[allow(dead_code)]
8030#[derive(Debug, Clone)]
8031pub struct EscapedRBrace {
8032 pub escaped_r_brace_token: crate::veryl_token::VerylToken,
8033}
8034
8035#[allow(dead_code)]
8039#[derive(Debug, Clone)]
8040pub struct EscapedRBraceTerm {
8041 pub escaped_r_brace_term: crate::veryl_token::Token, }
8043
8044#[allow(dead_code)]
8048#[derive(Debug, Clone)]
8049pub struct EscapedRBraceToken {
8050 pub escaped_r_brace_term: crate::veryl_token::Token,
8051}
8052
8053#[allow(dead_code)]
8057#[derive(Debug, Clone)]
8058pub struct Exponent {
8059 pub exponent_token: crate::veryl_token::VerylToken,
8060}
8061
8062#[allow(dead_code)]
8066#[derive(Debug, Clone)]
8067pub struct ExponentTerm {
8068 pub exponent_term: crate::veryl_token::Token, }
8070
8071#[allow(dead_code)]
8075#[derive(Debug, Clone)]
8076pub struct ExponentToken {
8077 pub exponent_term: crate::veryl_token::Token,
8078 pub comments: Box<Comments>,
8079}
8080
8081#[allow(dead_code)]
8085#[derive(Debug, Clone)]
8086pub struct Expression {
8087 pub if_expression: Box<IfExpression>,
8088}
8089
8090#[allow(dead_code)]
8094#[derive(Debug, Clone)]
8095pub struct Expression01 {
8096 pub expression02: Box<Expression02>,
8097 pub expression01_list: Vec<Expression01List>,
8098}
8099
8100#[allow(dead_code)]
8104#[derive(Debug, Clone)]
8105pub struct Expression01List {
8106 pub expression01_op: Box<Expression01Op>,
8107 pub expression02: Box<Expression02>,
8108}
8109
8110#[allow(dead_code)]
8114#[derive(Debug, Clone)]
8115pub enum Expression01Op {
8116 Operator01(Expression01OpOperator01),
8117 Operator02(Expression01OpOperator02),
8118 Operator03(Expression01OpOperator03),
8119 Operator04(Expression01OpOperator04),
8120 Operator05(Expression01OpOperator05),
8121 Operator06(Expression01OpOperator06),
8122 Operator07(Expression01OpOperator07),
8123 Star(Expression01OpStar),
8124 Operator08(Expression01OpOperator08),
8125}
8126
8127#[allow(dead_code)]
8131#[derive(Debug, Clone)]
8132pub struct Expression02 {
8133 pub expression02_list: Vec<Expression02List>,
8134 pub factor: Box<Factor>,
8135 pub expression02_opt: Option<Expression02Opt>,
8136}
8137
8138#[allow(dead_code)]
8142#[derive(Debug, Clone)]
8143pub struct Expression02List {
8144 pub expression02_op: Box<Expression02Op>,
8145}
8146
8147#[allow(dead_code)]
8151#[derive(Debug, Clone)]
8152pub enum Expression02Op {
8153 UnaryOperator(Expression02OpUnaryOperator),
8154 Operator06(Expression02OpOperator06),
8155 Operator05(Expression02OpOperator05),
8156 Operator03(Expression02OpOperator03),
8157 Operator04(Expression02OpOperator04),
8158}
8159
8160#[allow(dead_code)]
8164#[derive(Debug, Clone)]
8165pub struct Expression02Opt {
8166 pub r#as: Box<As>,
8167 pub casting_type: Box<CastingType>,
8168}
8169
8170#[allow(dead_code)]
8174#[derive(Debug, Clone)]
8175pub struct ExpressionIdentifier {
8176 pub scoped_identifier: Box<ScopedIdentifier>,
8177 pub expression_identifier_opt: Option<ExpressionIdentifierOpt>,
8178 pub expression_identifier_list: Vec<ExpressionIdentifierList>,
8179 pub expression_identifier_list0: Vec<ExpressionIdentifierList0>,
8180}
8181
8182#[allow(dead_code)]
8186#[derive(Debug, Clone)]
8187pub struct ExpressionIdentifierList {
8188 pub select: Box<Select>,
8189}
8190
8191#[allow(dead_code)]
8195#[derive(Debug, Clone)]
8196pub struct ExpressionIdentifierList0 {
8197 pub dot: Box<Dot>,
8198 pub identifier: Box<Identifier>,
8199 pub expression_identifier_list0_list: Vec<ExpressionIdentifierList0List>,
8200}
8201
8202#[allow(dead_code)]
8206#[derive(Debug, Clone)]
8207pub struct ExpressionIdentifierList0List {
8208 pub select: Box<Select>,
8209}
8210
8211#[allow(dead_code)]
8215#[derive(Debug, Clone)]
8216pub struct ExpressionIdentifierOpt {
8217 pub width: Box<Width>,
8218}
8219
8220#[allow(dead_code)]
8224#[derive(Debug, Clone)]
8225pub struct F32 {
8226 pub f32_token: crate::veryl_token::VerylToken,
8227}
8228
8229#[allow(dead_code)]
8233#[derive(Debug, Clone)]
8234pub struct F32Term {
8235 pub f32_term: crate::veryl_token::Token, }
8237
8238#[allow(dead_code)]
8242#[derive(Debug, Clone)]
8243pub struct F32Token {
8244 pub f32_term: crate::veryl_token::Token,
8245 pub comments: Box<Comments>,
8246}
8247
8248#[allow(dead_code)]
8252#[derive(Debug, Clone)]
8253pub struct F64 {
8254 pub f64_token: crate::veryl_token::VerylToken,
8255}
8256
8257#[allow(dead_code)]
8261#[derive(Debug, Clone)]
8262pub struct F64Term {
8263 pub f64_term: crate::veryl_token::Token, }
8265
8266#[allow(dead_code)]
8270#[derive(Debug, Clone)]
8271pub struct F64Token {
8272 pub f64_term: crate::veryl_token::Token,
8273 pub comments: Box<Comments>,
8274}
8275
8276#[allow(dead_code)]
8280#[derive(Debug, Clone)]
8281pub enum Factor {
8282 Number(FactorNumber),
8283 BooleanLiteral(FactorBooleanLiteral),
8284 IdentifierFactor(FactorIdentifierFactor),
8285 LParenExpressionRParen(FactorLParenExpressionRParen),
8286 LBraceConcatenationListRBrace(FactorLBraceConcatenationListRBrace),
8287 QuoteLBraceArrayLiteralListRBrace(FactorQuoteLBraceArrayLiteralListRBrace),
8288 CaseExpression(FactorCaseExpression),
8289 SwitchExpression(FactorSwitchExpression),
8290 StringLiteral(FactorStringLiteral),
8291 FactorGroup(FactorFactorGroup),
8292 InsideExpression(FactorInsideExpression),
8293 OutsideExpression(FactorOutsideExpression),
8294 TypeExpression(FactorTypeExpression),
8295 FactorTypeFactor(FactorFactorTypeFactor),
8296}
8297
8298#[allow(dead_code)]
8302#[derive(Debug, Clone)]
8303pub enum FactorGroup {
8304 Msb(FactorGroupMsb),
8305 Lsb(FactorGroupLsb),
8306}
8307
8308#[allow(dead_code)]
8312#[derive(Debug, Clone)]
8313pub struct FactorType {
8314 pub factor_type_group: Box<FactorTypeGroup>,
8315}
8316
8317#[allow(dead_code)]
8321#[derive(Debug, Clone)]
8322pub struct FactorTypeFactor {
8323 pub factor_type_factor_list: Vec<FactorTypeFactorList>,
8324 pub factor_type: Box<FactorType>,
8325}
8326
8327#[allow(dead_code)]
8331#[derive(Debug, Clone)]
8332pub struct FactorTypeFactorList {
8333 pub type_modifier: Box<TypeModifier>,
8334}
8335
8336#[allow(dead_code)]
8340#[derive(Debug, Clone)]
8341pub enum FactorTypeGroup {
8342 VariableTypeFactorTypeOpt(FactorTypeGroupVariableTypeFactorTypeOpt),
8343 FixedType(FactorTypeGroupFixedType),
8344}
8345
8346#[allow(dead_code)]
8350#[derive(Debug, Clone)]
8351pub struct FactorTypeOpt {
8352 pub width: Box<Width>,
8353}
8354
8355#[allow(dead_code)]
8359#[derive(Debug, Clone)]
8360pub struct False {
8361 pub false_token: crate::veryl_token::VerylToken,
8362}
8363
8364#[allow(dead_code)]
8368#[derive(Debug, Clone)]
8369pub struct FalseTerm {
8370 pub false_term: crate::veryl_token::Token, }
8372
8373#[allow(dead_code)]
8377#[derive(Debug, Clone)]
8378pub struct FalseToken {
8379 pub false_term: crate::veryl_token::Token,
8380 pub comments: Box<Comments>,
8381}
8382
8383#[allow(dead_code)]
8387#[derive(Debug, Clone)]
8388pub struct Final {
8389 pub final_token: crate::veryl_token::VerylToken,
8390}
8391
8392#[allow(dead_code)]
8396#[derive(Debug, Clone)]
8397pub struct FinalDeclaration {
8398 pub r#final: Box<Final>,
8399 pub statement_block: Box<StatementBlock>,
8400}
8401
8402#[allow(dead_code)]
8406#[derive(Debug, Clone)]
8407pub struct FinalTerm {
8408 pub final_term: crate::veryl_token::Token, }
8410
8411#[allow(dead_code)]
8415#[derive(Debug, Clone)]
8416pub struct FinalToken {
8417 pub final_term: crate::veryl_token::Token,
8418 pub comments: Box<Comments>,
8419}
8420
8421#[allow(dead_code)]
8425#[derive(Debug, Clone)]
8426pub struct FixedPoint {
8427 pub fixed_point_token: crate::veryl_token::VerylToken,
8428}
8429
8430#[allow(dead_code)]
8434#[derive(Debug, Clone)]
8435pub struct FixedPointTerm {
8436 pub fixed_point_term: crate::veryl_token::Token, }
8438
8439#[allow(dead_code)]
8443#[derive(Debug, Clone)]
8444pub struct FixedPointToken {
8445 pub fixed_point_term: crate::veryl_token::Token,
8446 pub comments: Box<Comments>,
8447}
8448
8449#[allow(dead_code)]
8453#[derive(Debug, Clone)]
8454pub enum FixedType {
8455 P8(FixedTypeP8),
8456 P16(FixedTypeP16),
8457 P32(FixedTypeP32),
8458 P64(FixedTypeP64),
8459 U8(FixedTypeU8),
8460 U16(FixedTypeU16),
8461 U32(FixedTypeU32),
8462 U64(FixedTypeU64),
8463 I8(FixedTypeI8),
8464 I16(FixedTypeI16),
8465 I32(FixedTypeI32),
8466 I64(FixedTypeI64),
8467 F32(FixedTypeF32),
8468 F64(FixedTypeF64),
8469 BBool(FixedTypeBBool),
8470 LBool(FixedTypeLBool),
8471 Strin(FixedTypeStrin),
8472}
8473
8474#[allow(dead_code)]
8478#[derive(Debug, Clone)]
8479pub struct For {
8480 pub for_token: crate::veryl_token::VerylToken,
8481}
8482
8483#[allow(dead_code)]
8487#[derive(Debug, Clone)]
8488pub struct ForStatement {
8489 pub r#for: Box<For>,
8490 pub identifier: Box<Identifier>,
8491 pub colon: Box<Colon>,
8492 pub scalar_type: Box<ScalarType>,
8493 pub r#in: Box<In>,
8494 pub for_statement_opt: Option<ForStatementOpt>,
8495 pub range: Box<Range>,
8496 pub for_statement_opt0: Option<ForStatementOpt0>,
8497 pub statement_block: Box<StatementBlock>,
8498}
8499
8500#[allow(dead_code)]
8504#[derive(Debug, Clone)]
8505pub struct ForStatementOpt {
8506 pub rev: Box<Rev>,
8507}
8508
8509#[allow(dead_code)]
8513#[derive(Debug, Clone)]
8514pub struct ForStatementOpt0 {
8515 pub step: Box<Step>,
8516 pub assignment_operator: Box<AssignmentOperator>,
8517 pub expression: Box<Expression>,
8518}
8519
8520#[allow(dead_code)]
8524#[derive(Debug, Clone)]
8525pub struct ForTerm {
8526 pub for_term: crate::veryl_token::Token, }
8528
8529#[allow(dead_code)]
8533#[derive(Debug, Clone)]
8534pub struct ForToken {
8535 pub for_term: crate::veryl_token::Token,
8536 pub comments: Box<Comments>,
8537}
8538
8539#[allow(dead_code)]
8543#[derive(Debug, Clone)]
8544pub struct Function {
8545 pub function_token: crate::veryl_token::VerylToken,
8546}
8547
8548#[allow(dead_code)]
8552#[derive(Debug, Clone)]
8553pub struct FunctionCall {
8554 pub l_paren: Box<LParen>,
8555 pub function_call_opt: Option<FunctionCallOpt>,
8556 pub r_paren: Box<RParen>,
8557}
8558
8559#[allow(dead_code)]
8563#[derive(Debug, Clone)]
8564pub struct FunctionCallOpt {
8565 pub argument_list: Box<ArgumentList>,
8566}
8567
8568#[allow(dead_code)]
8572#[derive(Debug, Clone)]
8573pub struct FunctionDeclaration {
8574 pub function: Box<Function>,
8575 pub identifier: Box<Identifier>,
8576 pub function_declaration_opt: Option<FunctionDeclarationOpt>,
8577 pub function_declaration_opt0: Option<FunctionDeclarationOpt0>,
8578 pub function_declaration_opt1: Option<FunctionDeclarationOpt1>,
8579 pub statement_block: Box<StatementBlock>,
8580}
8581
8582#[allow(dead_code)]
8586#[derive(Debug, Clone)]
8587pub struct FunctionDeclarationOpt {
8588 pub with_generic_parameter: Box<WithGenericParameter>,
8589}
8590
8591#[allow(dead_code)]
8595#[derive(Debug, Clone)]
8596pub struct FunctionDeclarationOpt0 {
8597 pub port_declaration: Box<PortDeclaration>,
8598}
8599
8600#[allow(dead_code)]
8604#[derive(Debug, Clone)]
8605pub struct FunctionDeclarationOpt1 {
8606 pub minus_g_t: Box<MinusGT>,
8607 pub scalar_type: Box<ScalarType>,
8608}
8609
8610#[allow(dead_code)]
8614#[derive(Debug, Clone)]
8615pub struct FunctionTerm {
8616 pub function_term: crate::veryl_token::Token, }
8618
8619#[allow(dead_code)]
8623#[derive(Debug, Clone)]
8624pub struct FunctionToken {
8625 pub function_term: crate::veryl_token::Token,
8626 pub comments: Box<Comments>,
8627}
8628
8629#[allow(dead_code)]
8633#[derive(Debug, Clone)]
8634pub struct GenerateBlockDeclaration {
8635 pub generate_named_block: Box<GenerateNamedBlock>,
8636}
8637
8638#[allow(dead_code)]
8642#[derive(Debug, Clone)]
8643pub struct GenerateForDeclaration {
8644 pub r#for: Box<For>,
8645 pub identifier: Box<Identifier>,
8646 pub r#in: Box<In>,
8647 pub generate_for_declaration_opt: Option<GenerateForDeclarationOpt>,
8648 pub range: Box<Range>,
8649 pub generate_for_declaration_opt0: Option<GenerateForDeclarationOpt0>,
8650 pub generate_named_block: Box<GenerateNamedBlock>,
8651}
8652
8653#[allow(dead_code)]
8657#[derive(Debug, Clone)]
8658pub struct GenerateForDeclarationOpt {
8659 pub rev: Box<Rev>,
8660}
8661
8662#[allow(dead_code)]
8666#[derive(Debug, Clone)]
8667pub struct GenerateForDeclarationOpt0 {
8668 pub step: Box<Step>,
8669 pub assignment_operator: Box<AssignmentOperator>,
8670 pub expression: Box<Expression>,
8671}
8672
8673#[allow(dead_code)]
8677#[derive(Debug, Clone)]
8678pub struct GenerateGroup {
8679 pub generate_group_list: Vec<GenerateGroupList>,
8680 pub generate_group_group: Box<GenerateGroupGroup>,
8681}
8682
8683#[allow(dead_code)]
8687#[derive(Debug, Clone)]
8688pub enum GenerateGroupGroup {
8689 LBraceGenerateGroupGroupListRBrace(GenerateGroupGroupLBraceGenerateGroupGroupListRBrace),
8690 GenerateItem(GenerateGroupGroupGenerateItem),
8691}
8692
8693#[allow(dead_code)]
8697#[derive(Debug, Clone)]
8698pub struct GenerateGroupGroupList {
8699 pub generate_group: Box<GenerateGroup>,
8700}
8701
8702#[allow(dead_code)]
8706#[derive(Debug, Clone)]
8707pub struct GenerateGroupList {
8708 pub attribute: Box<Attribute>,
8709}
8710
8711#[allow(dead_code)]
8715#[derive(Debug, Clone)]
8716pub struct GenerateIfDeclaration {
8717 pub r#if: Box<If>,
8718 pub expression: Box<Expression>,
8719 pub generate_named_block: Box<GenerateNamedBlock>,
8720 pub generate_if_declaration_list: Vec<GenerateIfDeclarationList>,
8721 pub generate_if_declaration_opt: Option<GenerateIfDeclarationOpt>,
8722}
8723
8724#[allow(dead_code)]
8728#[derive(Debug, Clone)]
8729pub struct GenerateIfDeclarationList {
8730 pub r#else: Box<Else>,
8731 pub r#if: Box<If>,
8732 pub expression: Box<Expression>,
8733 pub generate_optional_named_block: Box<GenerateOptionalNamedBlock>,
8734}
8735
8736#[allow(dead_code)]
8740#[derive(Debug, Clone)]
8741pub struct GenerateIfDeclarationOpt {
8742 pub r#else: Box<Else>,
8743 pub generate_optional_named_block: Box<GenerateOptionalNamedBlock>,
8744}
8745
8746#[allow(dead_code)]
8750#[derive(Debug, Clone)]
8751pub enum GenerateItem {
8752 LetDeclaration(GenerateItemLetDeclaration),
8753 VarDeclaration(GenerateItemVarDeclaration),
8754 InstDeclaration(GenerateItemInstDeclaration),
8755 BindDeclaration(GenerateItemBindDeclaration),
8756 ConstDeclaration(GenerateItemConstDeclaration),
8757 AlwaysFfDeclaration(GenerateItemAlwaysFfDeclaration),
8758 AlwaysCombDeclaration(GenerateItemAlwaysCombDeclaration),
8759 AssignDeclaration(GenerateItemAssignDeclaration),
8760 ConnectDeclaration(GenerateItemConnectDeclaration),
8761 FunctionDeclaration(GenerateItemFunctionDeclaration),
8762 GenerateIfDeclaration(GenerateItemGenerateIfDeclaration),
8763 GenerateForDeclaration(GenerateItemGenerateForDeclaration),
8764 GenerateBlockDeclaration(GenerateItemGenerateBlockDeclaration),
8765 TypeDefDeclaration(GenerateItemTypeDefDeclaration),
8766 EnumDeclaration(GenerateItemEnumDeclaration),
8767 StructUnionDeclaration(GenerateItemStructUnionDeclaration),
8768 ImportDeclaration(GenerateItemImportDeclaration),
8769 AliasDeclaration(GenerateItemAliasDeclaration),
8770 InitialDeclaration(GenerateItemInitialDeclaration),
8771 FinalDeclaration(GenerateItemFinalDeclaration),
8772 UnsafeBlock(GenerateItemUnsafeBlock),
8773 EmbedDeclaration(GenerateItemEmbedDeclaration),
8774}
8775
8776#[allow(dead_code)]
8780#[derive(Debug, Clone)]
8781pub struct GenerateNamedBlock {
8782 pub colon: Box<Colon>,
8783 pub identifier: Box<Identifier>,
8784 pub l_brace: Box<LBrace>,
8785 pub generate_named_block_list: Vec<GenerateNamedBlockList>,
8786 pub r_brace: Box<RBrace>,
8787}
8788
8789#[allow(dead_code)]
8793#[derive(Debug, Clone)]
8794pub struct GenerateNamedBlockList {
8795 pub generate_group: Box<GenerateGroup>,
8796}
8797
8798#[allow(dead_code)]
8802#[derive(Debug, Clone)]
8803pub struct GenerateOptionalNamedBlock {
8804 pub generate_optional_named_block_opt: Option<GenerateOptionalNamedBlockOpt>,
8805 pub l_brace: Box<LBrace>,
8806 pub generate_optional_named_block_list: Vec<GenerateOptionalNamedBlockList>,
8807 pub r_brace: Box<RBrace>,
8808}
8809
8810#[allow(dead_code)]
8814#[derive(Debug, Clone)]
8815pub struct GenerateOptionalNamedBlockList {
8816 pub generate_group: Box<GenerateGroup>,
8817}
8818
8819#[allow(dead_code)]
8823#[derive(Debug, Clone)]
8824pub struct GenerateOptionalNamedBlockOpt {
8825 pub colon: Box<Colon>,
8826 pub identifier: Box<Identifier>,
8827}
8828
8829#[allow(dead_code)]
8833#[derive(Debug, Clone)]
8834pub struct GenericArgIdentifier {
8835 pub scoped_identifier: Box<ScopedIdentifier>,
8836 pub generic_arg_identifier_list: Vec<GenericArgIdentifierList>,
8837}
8838
8839#[allow(dead_code)]
8843#[derive(Debug, Clone)]
8844pub struct GenericArgIdentifierList {
8845 pub dot: Box<Dot>,
8846 pub identifier: Box<Identifier>,
8847}
8848
8849#[allow(dead_code)]
8853#[derive(Debug, Clone)]
8854pub enum GenericBound {
8855 Type(GenericBoundType),
8856 InstScopedIdentifier(GenericBoundInstScopedIdentifier),
8857 GenericProtoBound(GenericBoundGenericProtoBound),
8858}
8859
8860#[allow(dead_code)]
8864#[derive(Debug, Clone)]
8865pub enum GenericProtoBound {
8866 ScopedIdentifier(GenericProtoBoundScopedIdentifier),
8867 FixedType(GenericProtoBoundFixedType),
8868}
8869
8870#[allow(dead_code)]
8874#[derive(Debug, Clone)]
8875pub struct Hash {
8876 pub hash_token: crate::veryl_token::VerylToken,
8877}
8878
8879#[allow(dead_code)]
8883#[derive(Debug, Clone)]
8884pub struct HashLBracket {
8885 pub hash_l_bracket_token: crate::veryl_token::VerylToken,
8886}
8887
8888#[allow(dead_code)]
8892#[derive(Debug, Clone)]
8893pub struct HashLBracketTerm {
8894 pub hash_l_bracket_term: crate::veryl_token::Token, }
8896
8897#[allow(dead_code)]
8901#[derive(Debug, Clone)]
8902pub struct HashLBracketToken {
8903 pub hash_l_bracket_term: crate::veryl_token::Token,
8904 pub comments: Box<Comments>,
8905}
8906
8907#[allow(dead_code)]
8911#[derive(Debug, Clone)]
8912pub struct HashTerm {
8913 pub hash_term: crate::veryl_token::Token, }
8915
8916#[allow(dead_code)]
8920#[derive(Debug, Clone)]
8921pub struct HashToken {
8922 pub hash_term: crate::veryl_token::Token,
8923 pub comments: Box<Comments>,
8924}
8925
8926#[allow(dead_code)]
8930#[derive(Debug, Clone)]
8931pub struct HierarchicalIdentifier {
8932 pub identifier: Box<Identifier>,
8933 pub hierarchical_identifier_list: Vec<HierarchicalIdentifierList>,
8934 pub hierarchical_identifier_list0: Vec<HierarchicalIdentifierList0>,
8935}
8936
8937#[allow(dead_code)]
8941#[derive(Debug, Clone)]
8942pub struct HierarchicalIdentifierList {
8943 pub select: Box<Select>,
8944}
8945
8946#[allow(dead_code)]
8950#[derive(Debug, Clone)]
8951pub struct HierarchicalIdentifierList0 {
8952 pub dot: Box<Dot>,
8953 pub identifier: Box<Identifier>,
8954 pub hierarchical_identifier_list0_list: Vec<HierarchicalIdentifierList0List>,
8955}
8956
8957#[allow(dead_code)]
8961#[derive(Debug, Clone)]
8962pub struct HierarchicalIdentifierList0List {
8963 pub select: Box<Select>,
8964}
8965
8966#[allow(dead_code)]
8970#[derive(Debug, Clone)]
8971pub struct I16 {
8972 pub i16_token: crate::veryl_token::VerylToken,
8973}
8974
8975#[allow(dead_code)]
8979#[derive(Debug, Clone)]
8980pub struct I16Term {
8981 pub i16_term: crate::veryl_token::Token, }
8983
8984#[allow(dead_code)]
8988#[derive(Debug, Clone)]
8989pub struct I16Token {
8990 pub i16_term: crate::veryl_token::Token,
8991 pub comments: Box<Comments>,
8992}
8993
8994#[allow(dead_code)]
8998#[derive(Debug, Clone)]
8999pub struct I32 {
9000 pub i32_token: crate::veryl_token::VerylToken,
9001}
9002
9003#[allow(dead_code)]
9007#[derive(Debug, Clone)]
9008pub struct I32Term {
9009 pub i32_term: crate::veryl_token::Token, }
9011
9012#[allow(dead_code)]
9016#[derive(Debug, Clone)]
9017pub struct I32Token {
9018 pub i32_term: crate::veryl_token::Token,
9019 pub comments: Box<Comments>,
9020}
9021
9022#[allow(dead_code)]
9026#[derive(Debug, Clone)]
9027pub struct I64 {
9028 pub i64_token: crate::veryl_token::VerylToken,
9029}
9030
9031#[allow(dead_code)]
9035#[derive(Debug, Clone)]
9036pub struct I64Term {
9037 pub i64_term: crate::veryl_token::Token, }
9039
9040#[allow(dead_code)]
9044#[derive(Debug, Clone)]
9045pub struct I64Token {
9046 pub i64_term: crate::veryl_token::Token,
9047 pub comments: Box<Comments>,
9048}
9049
9050#[allow(dead_code)]
9054#[derive(Debug, Clone)]
9055pub struct I8 {
9056 pub i8_token: crate::veryl_token::VerylToken,
9057}
9058
9059#[allow(dead_code)]
9063#[derive(Debug, Clone)]
9064pub struct I8Term {
9065 pub i8_term: crate::veryl_token::Token, }
9067
9068#[allow(dead_code)]
9072#[derive(Debug, Clone)]
9073pub struct I8Token {
9074 pub i8_term: crate::veryl_token::Token,
9075 pub comments: Box<Comments>,
9076}
9077
9078#[allow(dead_code)]
9082#[derive(Debug, Clone)]
9083pub struct Identifier {
9084 pub identifier_token: crate::veryl_token::VerylToken,
9085}
9086
9087#[allow(dead_code)]
9091#[derive(Debug, Clone)]
9092pub struct IdentifierFactor {
9093 pub expression_identifier: Box<ExpressionIdentifier>,
9094 pub identifier_factor_opt: Option<IdentifierFactorOpt>,
9095}
9096
9097#[allow(dead_code)]
9101#[derive(Debug, Clone)]
9102pub struct IdentifierFactorOpt {
9103 pub identifier_factor_opt_group: Box<IdentifierFactorOptGroup>,
9104}
9105
9106#[allow(dead_code)]
9110#[derive(Debug, Clone)]
9111pub enum IdentifierFactorOptGroup {
9112 FunctionCall(IdentifierFactorOptGroupFunctionCall),
9113 StructConstructor(IdentifierFactorOptGroupStructConstructor),
9114}
9115
9116#[allow(dead_code)]
9120#[derive(Debug, Clone)]
9121pub struct IdentifierStatement {
9122 pub expression_identifier: Box<ExpressionIdentifier>,
9123 pub identifier_statement_group: Box<IdentifierStatementGroup>,
9124 pub semicolon: Box<Semicolon>,
9125}
9126
9127#[allow(dead_code)]
9131#[derive(Debug, Clone)]
9132pub enum IdentifierStatementGroup {
9133 FunctionCall(IdentifierStatementGroupFunctionCall),
9134 Assignment(IdentifierStatementGroupAssignment),
9135}
9136
9137#[allow(dead_code)]
9141#[derive(Debug, Clone)]
9142pub struct IdentifierTerm {
9143 pub identifier_term: crate::veryl_token::Token, }
9145
9146#[allow(dead_code)]
9150#[derive(Debug, Clone)]
9151pub struct IdentifierToken {
9152 pub identifier_term: crate::veryl_token::Token,
9153 pub comments: Box<Comments>,
9154}
9155
9156#[allow(dead_code)]
9160#[derive(Debug, Clone)]
9161pub struct If {
9162 pub if_token: crate::veryl_token::VerylToken,
9163}
9164
9165#[allow(dead_code)]
9169#[derive(Debug, Clone)]
9170pub struct IfExpression {
9171 pub if_expression_list: Vec<IfExpressionList>,
9172 pub expression01: Box<Expression01>,
9173}
9174
9175#[allow(dead_code)]
9179#[derive(Debug, Clone)]
9180pub struct IfExpressionList {
9181 pub r#if: Box<If>,
9182 pub expression: Box<Expression>,
9183 pub question: Box<Question>,
9184 pub expression0: Box<Expression>,
9185 pub colon: Box<Colon>,
9186}
9187
9188#[allow(dead_code)]
9192#[derive(Debug, Clone)]
9193pub struct IfReset {
9194 pub if_reset_token: crate::veryl_token::VerylToken,
9195}
9196
9197#[allow(dead_code)]
9201#[derive(Debug, Clone)]
9202pub struct IfResetStatement {
9203 pub if_reset: Box<IfReset>,
9204 pub statement_block: Box<StatementBlock>,
9205 pub if_reset_statement_list: Vec<IfResetStatementList>,
9206 pub if_reset_statement_opt: Option<IfResetStatementOpt>,
9207}
9208
9209#[allow(dead_code)]
9213#[derive(Debug, Clone)]
9214pub struct IfResetStatementList {
9215 pub r#else: Box<Else>,
9216 pub r#if: Box<If>,
9217 pub expression: Box<Expression>,
9218 pub statement_block: Box<StatementBlock>,
9219}
9220
9221#[allow(dead_code)]
9225#[derive(Debug, Clone)]
9226pub struct IfResetStatementOpt {
9227 pub r#else: Box<Else>,
9228 pub statement_block: Box<StatementBlock>,
9229}
9230
9231#[allow(dead_code)]
9235#[derive(Debug, Clone)]
9236pub struct IfResetTerm {
9237 pub if_reset_term: crate::veryl_token::Token, }
9239
9240#[allow(dead_code)]
9244#[derive(Debug, Clone)]
9245pub struct IfResetToken {
9246 pub if_reset_term: crate::veryl_token::Token,
9247 pub comments: Box<Comments>,
9248}
9249
9250#[allow(dead_code)]
9254#[derive(Debug, Clone)]
9255pub struct IfStatement {
9256 pub r#if: Box<If>,
9257 pub expression: Box<Expression>,
9258 pub statement_block: Box<StatementBlock>,
9259 pub if_statement_list: Vec<IfStatementList>,
9260 pub if_statement_opt: Option<IfStatementOpt>,
9261}
9262
9263#[allow(dead_code)]
9267#[derive(Debug, Clone)]
9268pub struct IfStatementList {
9269 pub r#else: Box<Else>,
9270 pub r#if: Box<If>,
9271 pub expression: Box<Expression>,
9272 pub statement_block: Box<StatementBlock>,
9273}
9274
9275#[allow(dead_code)]
9279#[derive(Debug, Clone)]
9280pub struct IfStatementOpt {
9281 pub r#else: Box<Else>,
9282 pub statement_block: Box<StatementBlock>,
9283}
9284
9285#[allow(dead_code)]
9289#[derive(Debug, Clone)]
9290pub struct IfTerm {
9291 pub if_term: crate::veryl_token::Token, }
9293
9294#[allow(dead_code)]
9298#[derive(Debug, Clone)]
9299pub struct IfToken {
9300 pub if_term: crate::veryl_token::Token,
9301 pub comments: Box<Comments>,
9302}
9303
9304#[allow(dead_code)]
9308#[derive(Debug, Clone)]
9309pub struct Import {
9310 pub import_token: crate::veryl_token::VerylToken,
9311}
9312
9313#[allow(dead_code)]
9317#[derive(Debug, Clone)]
9318pub struct ImportDeclaration {
9319 pub import: Box<Import>,
9320 pub scoped_identifier: Box<ScopedIdentifier>,
9321 pub import_declaration_opt: Option<ImportDeclarationOpt>,
9322 pub semicolon: Box<Semicolon>,
9323}
9324
9325#[allow(dead_code)]
9329#[derive(Debug, Clone)]
9330pub struct ImportDeclarationOpt {
9331 pub colon_colon: Box<ColonColon>,
9332 pub star: Box<Star>,
9333}
9334
9335#[allow(dead_code)]
9339#[derive(Debug, Clone)]
9340pub struct ImportTerm {
9341 pub import_term: crate::veryl_token::Token, }
9343
9344#[allow(dead_code)]
9348#[derive(Debug, Clone)]
9349pub struct ImportToken {
9350 pub import_term: crate::veryl_token::Token,
9351 pub comments: Box<Comments>,
9352}
9353
9354#[allow(dead_code)]
9358#[derive(Debug, Clone)]
9359pub struct In {
9360 pub in_token: crate::veryl_token::VerylToken,
9361}
9362
9363#[allow(dead_code)]
9367#[derive(Debug, Clone)]
9368pub struct InTerm {
9369 pub in_term: crate::veryl_token::Token, }
9371
9372#[allow(dead_code)]
9376#[derive(Debug, Clone)]
9377pub struct InToken {
9378 pub in_term: crate::veryl_token::Token,
9379 pub comments: Box<Comments>,
9380}
9381
9382#[allow(dead_code)]
9386#[derive(Debug, Clone)]
9387pub struct Include {
9388 pub include_token: crate::veryl_token::VerylToken,
9389}
9390
9391#[allow(dead_code)]
9395#[derive(Debug, Clone)]
9396pub struct IncludeDeclaration {
9397 pub include: Box<Include>,
9398 pub l_paren: Box<LParen>,
9399 pub identifier: Box<Identifier>,
9400 pub comma: Box<Comma>,
9401 pub string_literal: Box<StringLiteral>,
9402 pub r_paren: Box<RParen>,
9403 pub semicolon: Box<Semicolon>,
9404}
9405
9406#[allow(dead_code)]
9410#[derive(Debug, Clone)]
9411pub struct IncludeTerm {
9412 pub include_term: crate::veryl_token::Token, }
9414
9415#[allow(dead_code)]
9419#[derive(Debug, Clone)]
9420pub struct IncludeToken {
9421 pub include_term: crate::veryl_token::Token,
9422 pub comments: Box<Comments>,
9423}
9424
9425#[allow(dead_code)]
9429#[derive(Debug, Clone)]
9430pub struct Initial {
9431 pub initial_token: crate::veryl_token::VerylToken,
9432}
9433
9434#[allow(dead_code)]
9438#[derive(Debug, Clone)]
9439pub struct InitialDeclaration {
9440 pub initial: Box<Initial>,
9441 pub statement_block: Box<StatementBlock>,
9442}
9443
9444#[allow(dead_code)]
9448#[derive(Debug, Clone)]
9449pub struct InitialTerm {
9450 pub initial_term: crate::veryl_token::Token, }
9452
9453#[allow(dead_code)]
9457#[derive(Debug, Clone)]
9458pub struct InitialToken {
9459 pub initial_term: crate::veryl_token::Token,
9460 pub comments: Box<Comments>,
9461}
9462
9463#[allow(dead_code)]
9467#[derive(Debug, Clone)]
9468pub struct Inout {
9469 pub inout_token: crate::veryl_token::VerylToken,
9470}
9471
9472#[allow(dead_code)]
9476#[derive(Debug, Clone)]
9477pub struct InoutTerm {
9478 pub inout_term: crate::veryl_token::Token, }
9480
9481#[allow(dead_code)]
9485#[derive(Debug, Clone)]
9486pub struct InoutToken {
9487 pub inout_term: crate::veryl_token::Token,
9488 pub comments: Box<Comments>,
9489}
9490
9491#[allow(dead_code)]
9495#[derive(Debug, Clone)]
9496pub struct Input {
9497 pub input_token: crate::veryl_token::VerylToken,
9498}
9499
9500#[allow(dead_code)]
9504#[derive(Debug, Clone)]
9505pub struct InputTerm {
9506 pub input_term: crate::veryl_token::Token, }
9508
9509#[allow(dead_code)]
9513#[derive(Debug, Clone)]
9514pub struct InputToken {
9515 pub input_term: crate::veryl_token::Token,
9516 pub comments: Box<Comments>,
9517}
9518
9519#[allow(dead_code)]
9523#[derive(Debug, Clone)]
9524pub struct Inside {
9525 pub inside_token: crate::veryl_token::VerylToken,
9526}
9527
9528#[allow(dead_code)]
9532#[derive(Debug, Clone)]
9533pub struct InsideExpression {
9534 pub inside: Box<Inside>,
9535 pub expression: Box<Expression>,
9536 pub l_brace: Box<LBrace>,
9537 pub range_list: Box<RangeList>,
9538 pub r_brace: Box<RBrace>,
9539}
9540
9541#[allow(dead_code)]
9545#[derive(Debug, Clone)]
9546pub struct InsideTerm {
9547 pub inside_term: crate::veryl_token::Token, }
9549
9550#[allow(dead_code)]
9554#[derive(Debug, Clone)]
9555pub struct InsideToken {
9556 pub inside_term: crate::veryl_token::Token,
9557 pub comments: Box<Comments>,
9558}
9559
9560#[allow(dead_code)]
9564#[derive(Debug, Clone)]
9565pub struct Inst {
9566 pub inst_token: crate::veryl_token::VerylToken,
9567}
9568
9569#[allow(dead_code)]
9573#[derive(Debug, Clone)]
9574pub struct InstDeclaration {
9575 pub inst: Box<Inst>,
9576 pub component_instantiation: Box<ComponentInstantiation>,
9577 pub semicolon: Box<Semicolon>,
9578}
9579
9580#[allow(dead_code)]
9584#[derive(Debug, Clone)]
9585pub struct InstParameter {
9586 pub hash: Box<Hash>,
9587 pub l_paren: Box<LParen>,
9588 pub inst_parameter_opt: Option<InstParameterOpt>,
9589 pub r_paren: Box<RParen>,
9590}
9591
9592#[allow(dead_code)]
9596#[derive(Debug, Clone)]
9597pub struct InstParameterGroup {
9598 pub inst_parameter_group_list: Vec<InstParameterGroupList>,
9599 pub inst_parameter_group_group: Box<InstParameterGroupGroup>,
9600}
9601
9602#[allow(dead_code)]
9606#[derive(Debug, Clone)]
9607pub enum InstParameterGroupGroup {
9608 LBraceInstParameterListRBrace(InstParameterGroupGroupLBraceInstParameterListRBrace),
9609 InstParameterItem(InstParameterGroupGroupInstParameterItem),
9610}
9611
9612#[allow(dead_code)]
9616#[derive(Debug, Clone)]
9617pub struct InstParameterGroupList {
9618 pub attribute: Box<Attribute>,
9619}
9620
9621#[allow(dead_code)]
9625#[derive(Debug, Clone)]
9626pub struct InstParameterItem {
9627 pub identifier: Box<Identifier>,
9628 pub inst_parameter_item_opt: Option<InstParameterItemOpt>,
9629}
9630
9631#[allow(dead_code)]
9635#[derive(Debug, Clone)]
9636pub struct InstParameterItemOpt {
9637 pub colon: Box<Colon>,
9638 pub expression: Box<Expression>,
9639}
9640
9641#[allow(dead_code)]
9645#[derive(Debug, Clone)]
9646pub struct InstParameterList {
9647 pub inst_parameter_group: Box<InstParameterGroup>,
9648 pub inst_parameter_list_list: Vec<InstParameterListList>,
9649 pub inst_parameter_list_opt: Option<InstParameterListOpt>,
9650}
9651
9652#[allow(dead_code)]
9656#[derive(Debug, Clone)]
9657pub struct InstParameterListList {
9658 pub comma: Box<Comma>,
9659 pub inst_parameter_group: Box<InstParameterGroup>,
9660}
9661
9662#[allow(dead_code)]
9666#[derive(Debug, Clone)]
9667pub struct InstParameterListOpt {
9668 pub comma: Box<Comma>,
9669}
9670
9671#[allow(dead_code)]
9675#[derive(Debug, Clone)]
9676pub struct InstParameterOpt {
9677 pub inst_parameter_list: Box<InstParameterList>,
9678}
9679
9680#[allow(dead_code)]
9684#[derive(Debug, Clone)]
9685pub struct InstPort {
9686 pub l_paren: Box<LParen>,
9687 pub inst_port_opt: Option<InstPortOpt>,
9688 pub r_paren: Box<RParen>,
9689}
9690
9691#[allow(dead_code)]
9695#[derive(Debug, Clone)]
9696pub struct InstPortGroup {
9697 pub inst_port_group_list: Vec<InstPortGroupList>,
9698 pub inst_port_group_group: Box<InstPortGroupGroup>,
9699}
9700
9701#[allow(dead_code)]
9705#[derive(Debug, Clone)]
9706pub enum InstPortGroupGroup {
9707 LBraceInstPortListRBrace(InstPortGroupGroupLBraceInstPortListRBrace),
9708 InstPortItem(InstPortGroupGroupInstPortItem),
9709}
9710
9711#[allow(dead_code)]
9715#[derive(Debug, Clone)]
9716pub struct InstPortGroupList {
9717 pub attribute: Box<Attribute>,
9718}
9719
9720#[allow(dead_code)]
9724#[derive(Debug, Clone)]
9725pub struct InstPortItem {
9726 pub identifier: Box<Identifier>,
9727 pub inst_port_item_opt: Option<InstPortItemOpt>,
9728}
9729
9730#[allow(dead_code)]
9734#[derive(Debug, Clone)]
9735pub struct InstPortItemOpt {
9736 pub colon: Box<Colon>,
9737 pub expression: Box<Expression>,
9738}
9739
9740#[allow(dead_code)]
9744#[derive(Debug, Clone)]
9745pub struct InstPortList {
9746 pub inst_port_group: Box<InstPortGroup>,
9747 pub inst_port_list_list: Vec<InstPortListList>,
9748 pub inst_port_list_opt: Option<InstPortListOpt>,
9749}
9750
9751#[allow(dead_code)]
9755#[derive(Debug, Clone)]
9756pub struct InstPortListList {
9757 pub comma: Box<Comma>,
9758 pub inst_port_group: Box<InstPortGroup>,
9759}
9760
9761#[allow(dead_code)]
9765#[derive(Debug, Clone)]
9766pub struct InstPortListOpt {
9767 pub comma: Box<Comma>,
9768}
9769
9770#[allow(dead_code)]
9774#[derive(Debug, Clone)]
9775pub struct InstPortOpt {
9776 pub inst_port_list: Box<InstPortList>,
9777}
9778
9779#[allow(dead_code)]
9783#[derive(Debug, Clone)]
9784pub struct InstTerm {
9785 pub inst_term: crate::veryl_token::Token, }
9787
9788#[allow(dead_code)]
9792#[derive(Debug, Clone)]
9793pub struct InstToken {
9794 pub inst_term: crate::veryl_token::Token,
9795 pub comments: Box<Comments>,
9796}
9797
9798#[allow(dead_code)]
9802#[derive(Debug, Clone)]
9803pub enum IntegralNumber {
9804 Based(IntegralNumberBased),
9805 BaseLess(IntegralNumberBaseLess),
9806 AllBit(IntegralNumberAllBit),
9807}
9808
9809#[allow(dead_code)]
9813#[derive(Debug, Clone)]
9814pub struct Interface {
9815 pub interface_token: crate::veryl_token::VerylToken,
9816}
9817
9818#[allow(dead_code)]
9822#[derive(Debug, Clone)]
9823pub struct InterfaceDeclaration {
9824 pub interface: Box<Interface>,
9825 pub identifier: Box<Identifier>,
9826 pub interface_declaration_opt: Option<InterfaceDeclarationOpt>,
9827 pub interface_declaration_opt0: Option<InterfaceDeclarationOpt0>,
9828 pub interface_declaration_opt1: Option<InterfaceDeclarationOpt1>,
9829 pub l_brace: Box<LBrace>,
9830 pub interface_declaration_list: Vec<InterfaceDeclarationList>,
9831 pub r_brace: Box<RBrace>,
9832}
9833
9834#[allow(dead_code)]
9838#[derive(Debug, Clone)]
9839pub struct InterfaceDeclarationList {
9840 pub interface_group: Box<InterfaceGroup>,
9841}
9842
9843#[allow(dead_code)]
9847#[derive(Debug, Clone)]
9848pub struct InterfaceDeclarationOpt {
9849 pub with_generic_parameter: Box<WithGenericParameter>,
9850}
9851
9852#[allow(dead_code)]
9856#[derive(Debug, Clone)]
9857pub struct InterfaceDeclarationOpt0 {
9858 pub r#for: Box<For>,
9859 pub scoped_identifier: Box<ScopedIdentifier>,
9860}
9861
9862#[allow(dead_code)]
9866#[derive(Debug, Clone)]
9867pub struct InterfaceDeclarationOpt1 {
9868 pub with_parameter: Box<WithParameter>,
9869}
9870
9871#[allow(dead_code)]
9875#[derive(Debug, Clone)]
9876pub struct InterfaceGroup {
9877 pub interface_group_list: Vec<InterfaceGroupList>,
9878 pub interface_group_group: Box<InterfaceGroupGroup>,
9879}
9880
9881#[allow(dead_code)]
9885#[derive(Debug, Clone)]
9886pub enum InterfaceGroupGroup {
9887 LBraceInterfaceGroupGroupListRBrace(InterfaceGroupGroupLBraceInterfaceGroupGroupListRBrace),
9888 InterfaceItem(InterfaceGroupGroupInterfaceItem),
9889}
9890
9891#[allow(dead_code)]
9895#[derive(Debug, Clone)]
9896pub struct InterfaceGroupGroupList {
9897 pub interface_group: Box<InterfaceGroup>,
9898}
9899
9900#[allow(dead_code)]
9904#[derive(Debug, Clone)]
9905pub struct InterfaceGroupList {
9906 pub attribute: Box<Attribute>,
9907}
9908
9909#[allow(dead_code)]
9913#[derive(Debug, Clone)]
9914pub enum InterfaceItem {
9915 GenerateItem(InterfaceItemGenerateItem),
9916 ModportDeclaration(InterfaceItemModportDeclaration),
9917}
9918
9919#[allow(dead_code)]
9923#[derive(Debug, Clone)]
9924pub struct InterfaceTerm {
9925 pub interface_term: crate::veryl_token::Token, }
9927
9928#[allow(dead_code)]
9932#[derive(Debug, Clone)]
9933pub struct InterfaceToken {
9934 pub interface_term: crate::veryl_token::Token,
9935 pub comments: Box<Comments>,
9936}
9937
9938#[allow(dead_code)]
9942#[derive(Debug, Clone)]
9943pub struct LAngle {
9944 pub l_angle_token: crate::veryl_token::VerylToken,
9945}
9946
9947#[allow(dead_code)]
9951#[derive(Debug, Clone)]
9952pub struct LAngleTerm {
9953 pub l_angle_term: crate::veryl_token::Token, }
9955
9956#[allow(dead_code)]
9960#[derive(Debug, Clone)]
9961pub struct LAngleToken {
9962 pub l_angle_term: crate::veryl_token::Token,
9963 pub comments: Box<Comments>,
9964}
9965
9966#[allow(dead_code)]
9970#[derive(Debug, Clone)]
9971pub struct LBool {
9972 pub l_bool_token: crate::veryl_token::VerylToken,
9973}
9974
9975#[allow(dead_code)]
9979#[derive(Debug, Clone)]
9980pub struct LBoolTerm {
9981 pub l_bool_term: crate::veryl_token::Token, }
9983
9984#[allow(dead_code)]
9988#[derive(Debug, Clone)]
9989pub struct LBoolToken {
9990 pub l_bool_term: crate::veryl_token::Token,
9991 pub comments: Box<Comments>,
9992}
9993
9994#[allow(dead_code)]
9998#[derive(Debug, Clone)]
9999pub struct LBrace {
10000 pub l_brace_token: crate::veryl_token::VerylToken,
10001}
10002
10003#[allow(dead_code)]
10007#[derive(Debug, Clone)]
10008pub struct LBraceTerm {
10009 pub l_brace_term: crate::veryl_token::Token, }
10011
10012#[allow(dead_code)]
10016#[derive(Debug, Clone)]
10017pub struct LBraceToken {
10018 pub l_brace_term: crate::veryl_token::Token,
10019 pub comments: Box<Comments>,
10020}
10021
10022#[allow(dead_code)]
10026#[derive(Debug, Clone)]
10027pub struct LBracket {
10028 pub l_bracket_token: crate::veryl_token::VerylToken,
10029}
10030
10031#[allow(dead_code)]
10035#[derive(Debug, Clone)]
10036pub struct LBracketTerm {
10037 pub l_bracket_term: crate::veryl_token::Token, }
10039
10040#[allow(dead_code)]
10044#[derive(Debug, Clone)]
10045pub struct LBracketToken {
10046 pub l_bracket_term: crate::veryl_token::Token,
10047 pub comments: Box<Comments>,
10048}
10049
10050#[allow(dead_code)]
10054#[derive(Debug, Clone)]
10055pub struct LParen {
10056 pub l_paren_token: crate::veryl_token::VerylToken,
10057}
10058
10059#[allow(dead_code)]
10063#[derive(Debug, Clone)]
10064pub struct LParenTerm {
10065 pub l_paren_term: crate::veryl_token::Token, }
10067
10068#[allow(dead_code)]
10072#[derive(Debug, Clone)]
10073pub struct LParenToken {
10074 pub l_paren_term: crate::veryl_token::Token,
10075 pub comments: Box<Comments>,
10076}
10077
10078#[allow(dead_code)]
10082#[derive(Debug, Clone)]
10083pub struct LTMinus {
10084 pub l_t_minus_token: crate::veryl_token::VerylToken,
10085}
10086
10087#[allow(dead_code)]
10091#[derive(Debug, Clone)]
10092pub struct LTMinusTerm {
10093 pub l_t_minus_term: crate::veryl_token::Token, }
10095
10096#[allow(dead_code)]
10100#[derive(Debug, Clone)]
10101pub struct LTMinusToken {
10102 pub l_t_minus_term: crate::veryl_token::Token,
10103 pub comments: Box<Comments>,
10104}
10105
10106#[allow(dead_code)]
10110#[derive(Debug, Clone)]
10111pub struct Let {
10112 pub let_token: crate::veryl_token::VerylToken,
10113}
10114
10115#[allow(dead_code)]
10119#[derive(Debug, Clone)]
10120pub struct LetDeclaration {
10121 pub r#let: Box<Let>,
10122 pub identifier: Box<Identifier>,
10123 pub colon: Box<Colon>,
10124 pub let_declaration_opt: Option<LetDeclarationOpt>,
10125 pub array_type: Box<ArrayType>,
10126 pub equ: Box<Equ>,
10127 pub expression: Box<Expression>,
10128 pub semicolon: Box<Semicolon>,
10129}
10130
10131#[allow(dead_code)]
10135#[derive(Debug, Clone)]
10136pub struct LetDeclarationOpt {
10137 pub clock_domain: Box<ClockDomain>,
10138}
10139
10140#[allow(dead_code)]
10144#[derive(Debug, Clone)]
10145pub struct LetStatement {
10146 pub r#let: Box<Let>,
10147 pub identifier: Box<Identifier>,
10148 pub colon: Box<Colon>,
10149 pub let_statement_opt: Option<LetStatementOpt>,
10150 pub array_type: Box<ArrayType>,
10151 pub equ: Box<Equ>,
10152 pub expression: Box<Expression>,
10153 pub semicolon: Box<Semicolon>,
10154}
10155
10156#[allow(dead_code)]
10160#[derive(Debug, Clone)]
10161pub struct LetStatementOpt {
10162 pub clock_domain: Box<ClockDomain>,
10163}
10164
10165#[allow(dead_code)]
10169#[derive(Debug, Clone)]
10170pub struct LetTerm {
10171 pub let_term: crate::veryl_token::Token, }
10173
10174#[allow(dead_code)]
10178#[derive(Debug, Clone)]
10179pub struct LetToken {
10180 pub let_term: crate::veryl_token::Token,
10181 pub comments: Box<Comments>,
10182}
10183
10184#[allow(dead_code)]
10188#[derive(Debug, Clone)]
10189pub struct Logic {
10190 pub logic_token: crate::veryl_token::VerylToken,
10191}
10192
10193#[allow(dead_code)]
10197#[derive(Debug, Clone)]
10198pub struct LogicTerm {
10199 pub logic_term: crate::veryl_token::Token, }
10201
10202#[allow(dead_code)]
10206#[derive(Debug, Clone)]
10207pub struct LogicToken {
10208 pub logic_term: crate::veryl_token::Token,
10209 pub comments: Box<Comments>,
10210}
10211
10212#[allow(dead_code)]
10216#[derive(Debug, Clone)]
10217pub struct Lsb {
10218 pub lsb_token: crate::veryl_token::VerylToken,
10219}
10220
10221#[allow(dead_code)]
10225#[derive(Debug, Clone)]
10226pub struct LsbTerm {
10227 pub lsb_term: crate::veryl_token::Token, }
10229
10230#[allow(dead_code)]
10234#[derive(Debug, Clone)]
10235pub struct LsbToken {
10236 pub lsb_term: crate::veryl_token::Token,
10237 pub comments: Box<Comments>,
10238}
10239
10240#[allow(dead_code)]
10244#[derive(Debug, Clone)]
10245pub struct MinusColon {
10246 pub minus_colon_token: crate::veryl_token::VerylToken,
10247}
10248
10249#[allow(dead_code)]
10253#[derive(Debug, Clone)]
10254pub struct MinusColonTerm {
10255 pub minus_colon_term: crate::veryl_token::Token, }
10257
10258#[allow(dead_code)]
10262#[derive(Debug, Clone)]
10263pub struct MinusColonToken {
10264 pub minus_colon_term: crate::veryl_token::Token,
10265 pub comments: Box<Comments>,
10266}
10267
10268#[allow(dead_code)]
10272#[derive(Debug, Clone)]
10273pub struct MinusGT {
10274 pub minus_g_t_token: crate::veryl_token::VerylToken,
10275}
10276
10277#[allow(dead_code)]
10281#[derive(Debug, Clone)]
10282pub struct MinusGTTerm {
10283 pub minus_g_t_term: crate::veryl_token::Token, }
10285
10286#[allow(dead_code)]
10290#[derive(Debug, Clone)]
10291pub struct MinusGTToken {
10292 pub minus_g_t_term: crate::veryl_token::Token,
10293 pub comments: Box<Comments>,
10294}
10295
10296#[allow(dead_code)]
10300#[derive(Debug, Clone)]
10301pub struct Modport {
10302 pub modport_token: crate::veryl_token::VerylToken,
10303}
10304
10305#[allow(dead_code)]
10309#[derive(Debug, Clone)]
10310pub struct ModportDeclaration {
10311 pub modport: Box<Modport>,
10312 pub identifier: Box<Identifier>,
10313 pub l_brace: Box<LBrace>,
10314 pub modport_declaration_opt: Option<ModportDeclarationOpt>,
10315 pub modport_declaration_opt0: Option<ModportDeclarationOpt0>,
10316 pub r_brace: Box<RBrace>,
10317}
10318
10319#[allow(dead_code)]
10323#[derive(Debug, Clone)]
10324pub struct ModportDeclarationOpt {
10325 pub modport_list: Box<ModportList>,
10326}
10327
10328#[allow(dead_code)]
10332#[derive(Debug, Clone)]
10333pub struct ModportDeclarationOpt0 {
10334 pub dot_dot: Box<DotDot>,
10335 pub modport_default: Box<ModportDefault>,
10336}
10337
10338#[allow(dead_code)]
10342#[derive(Debug, Clone)]
10343pub enum ModportDefault {
10344 Input(ModportDefaultInput),
10345 Output(ModportDefaultOutput),
10346 SameLParenModportDefaultListRParen(ModportDefaultSameLParenModportDefaultListRParen),
10347 ConverseLParenModportDefaultListRParen(ModportDefaultConverseLParenModportDefaultListRParen),
10348}
10349
10350#[allow(dead_code)]
10354#[derive(Debug, Clone)]
10355pub struct ModportDefaultList {
10356 pub identifier: Box<Identifier>,
10357 pub modport_default_list_list: Vec<ModportDefaultListList>,
10358 pub modport_default_list_opt: Option<ModportDefaultListOpt>,
10359}
10360
10361#[allow(dead_code)]
10365#[derive(Debug, Clone)]
10366pub struct ModportDefaultListList {
10367 pub comma: Box<Comma>,
10368 pub identifier: Box<Identifier>,
10369}
10370
10371#[allow(dead_code)]
10375#[derive(Debug, Clone)]
10376pub struct ModportDefaultListOpt {
10377 pub comma: Box<Comma>,
10378}
10379
10380#[allow(dead_code)]
10384#[derive(Debug, Clone)]
10385pub struct ModportGroup {
10386 pub modport_group_list: Vec<ModportGroupList>,
10387 pub modport_group_group: Box<ModportGroupGroup>,
10388}
10389
10390#[allow(dead_code)]
10394#[derive(Debug, Clone)]
10395pub enum ModportGroupGroup {
10396 LBraceModportListRBrace(ModportGroupGroupLBraceModportListRBrace),
10397 ModportItem(ModportGroupGroupModportItem),
10398}
10399
10400#[allow(dead_code)]
10404#[derive(Debug, Clone)]
10405pub struct ModportGroupList {
10406 pub attribute: Box<Attribute>,
10407}
10408
10409#[allow(dead_code)]
10413#[derive(Debug, Clone)]
10414pub struct ModportItem {
10415 pub identifier: Box<Identifier>,
10416 pub colon: Box<Colon>,
10417 pub direction: Box<Direction>,
10418}
10419
10420#[allow(dead_code)]
10424#[derive(Debug, Clone)]
10425pub struct ModportList {
10426 pub modport_group: Box<ModportGroup>,
10427 pub modport_list_list: Vec<ModportListList>,
10428 pub modport_list_opt: Option<ModportListOpt>,
10429}
10430
10431#[allow(dead_code)]
10435#[derive(Debug, Clone)]
10436pub struct ModportListList {
10437 pub comma: Box<Comma>,
10438 pub modport_group: Box<ModportGroup>,
10439}
10440
10441#[allow(dead_code)]
10445#[derive(Debug, Clone)]
10446pub struct ModportListOpt {
10447 pub comma: Box<Comma>,
10448}
10449
10450#[allow(dead_code)]
10454#[derive(Debug, Clone)]
10455pub struct ModportTerm {
10456 pub modport_term: crate::veryl_token::Token, }
10458
10459#[allow(dead_code)]
10463#[derive(Debug, Clone)]
10464pub struct ModportToken {
10465 pub modport_term: crate::veryl_token::Token,
10466 pub comments: Box<Comments>,
10467}
10468
10469#[allow(dead_code)]
10473#[derive(Debug, Clone)]
10474pub struct Module {
10475 pub module_token: crate::veryl_token::VerylToken,
10476}
10477
10478#[allow(dead_code)]
10482#[derive(Debug, Clone)]
10483pub struct ModuleDeclaration {
10484 pub module: Box<Module>,
10485 pub identifier: Box<Identifier>,
10486 pub module_declaration_opt: Option<ModuleDeclarationOpt>,
10487 pub module_declaration_opt0: Option<ModuleDeclarationOpt0>,
10488 pub module_declaration_opt1: Option<ModuleDeclarationOpt1>,
10489 pub module_declaration_opt2: Option<ModuleDeclarationOpt2>,
10490 pub l_brace: Box<LBrace>,
10491 pub module_declaration_list: Vec<ModuleDeclarationList>,
10492 pub r_brace: Box<RBrace>,
10493}
10494
10495#[allow(dead_code)]
10499#[derive(Debug, Clone)]
10500pub struct ModuleDeclarationList {
10501 pub module_group: Box<ModuleGroup>,
10502}
10503
10504#[allow(dead_code)]
10508#[derive(Debug, Clone)]
10509pub struct ModuleDeclarationOpt {
10510 pub with_generic_parameter: Box<WithGenericParameter>,
10511}
10512
10513#[allow(dead_code)]
10517#[derive(Debug, Clone)]
10518pub struct ModuleDeclarationOpt0 {
10519 pub r#for: Box<For>,
10520 pub scoped_identifier: Box<ScopedIdentifier>,
10521}
10522
10523#[allow(dead_code)]
10527#[derive(Debug, Clone)]
10528pub struct ModuleDeclarationOpt1 {
10529 pub with_parameter: Box<WithParameter>,
10530}
10531
10532#[allow(dead_code)]
10536#[derive(Debug, Clone)]
10537pub struct ModuleDeclarationOpt2 {
10538 pub port_declaration: Box<PortDeclaration>,
10539}
10540
10541#[allow(dead_code)]
10545#[derive(Debug, Clone)]
10546pub struct ModuleGroup {
10547 pub module_group_list: Vec<ModuleGroupList>,
10548 pub module_group_group: Box<ModuleGroupGroup>,
10549}
10550
10551#[allow(dead_code)]
10555#[derive(Debug, Clone)]
10556pub enum ModuleGroupGroup {
10557 LBraceModuleGroupGroupListRBrace(ModuleGroupGroupLBraceModuleGroupGroupListRBrace),
10558 ModuleItem(ModuleGroupGroupModuleItem),
10559}
10560
10561#[allow(dead_code)]
10565#[derive(Debug, Clone)]
10566pub struct ModuleGroupGroupList {
10567 pub module_group: Box<ModuleGroup>,
10568}
10569
10570#[allow(dead_code)]
10574#[derive(Debug, Clone)]
10575pub struct ModuleGroupList {
10576 pub attribute: Box<Attribute>,
10577}
10578
10579#[allow(dead_code)]
10583#[derive(Debug, Clone)]
10584pub struct ModuleItem {
10585 pub generate_item: Box<GenerateItem>,
10586}
10587
10588#[allow(dead_code)]
10592#[derive(Debug, Clone)]
10593pub struct ModuleTerm {
10594 pub module_term: crate::veryl_token::Token, }
10596
10597#[allow(dead_code)]
10601#[derive(Debug, Clone)]
10602pub struct ModuleToken {
10603 pub module_term: crate::veryl_token::Token,
10604 pub comments: Box<Comments>,
10605}
10606
10607#[allow(dead_code)]
10611#[derive(Debug, Clone)]
10612pub struct Msb {
10613 pub msb_token: crate::veryl_token::VerylToken,
10614}
10615
10616#[allow(dead_code)]
10620#[derive(Debug, Clone)]
10621pub struct MsbTerm {
10622 pub msb_term: crate::veryl_token::Token, }
10624
10625#[allow(dead_code)]
10629#[derive(Debug, Clone)]
10630pub struct MsbToken {
10631 pub msb_term: crate::veryl_token::Token,
10632 pub comments: Box<Comments>,
10633}
10634
10635#[allow(dead_code)]
10639#[derive(Debug, Clone)]
10640pub enum Number {
10641 IntegralNumber(NumberIntegralNumber),
10642 RealNumber(NumberRealNumber),
10643}
10644
10645#[allow(dead_code)]
10649#[derive(Debug, Clone)]
10650pub struct Operator01 {
10651 pub operator01_token: crate::veryl_token::VerylToken,
10652}
10653
10654#[allow(dead_code)]
10658#[derive(Debug, Clone)]
10659pub struct Operator01Term {
10660 pub operator01_term: crate::veryl_token::Token, }
10662
10663#[allow(dead_code)]
10667#[derive(Debug, Clone)]
10668pub struct Operator01Token {
10669 pub operator01_term: crate::veryl_token::Token,
10670 pub comments: Box<Comments>,
10671}
10672
10673#[allow(dead_code)]
10677#[derive(Debug, Clone)]
10678pub struct Operator02 {
10679 pub operator02_token: crate::veryl_token::VerylToken,
10680}
10681
10682#[allow(dead_code)]
10686#[derive(Debug, Clone)]
10687pub struct Operator02Term {
10688 pub operator02_term: crate::veryl_token::Token, }
10690
10691#[allow(dead_code)]
10695#[derive(Debug, Clone)]
10696pub struct Operator02Token {
10697 pub operator02_term: crate::veryl_token::Token,
10698 pub comments: Box<Comments>,
10699}
10700
10701#[allow(dead_code)]
10705#[derive(Debug, Clone)]
10706pub struct Operator03 {
10707 pub operator03_token: crate::veryl_token::VerylToken,
10708}
10709
10710#[allow(dead_code)]
10714#[derive(Debug, Clone)]
10715pub struct Operator03Term {
10716 pub operator03_term: crate::veryl_token::Token, }
10718
10719#[allow(dead_code)]
10723#[derive(Debug, Clone)]
10724pub struct Operator03Token {
10725 pub operator03_term: crate::veryl_token::Token,
10726 pub comments: Box<Comments>,
10727}
10728
10729#[allow(dead_code)]
10733#[derive(Debug, Clone)]
10734pub struct Operator04 {
10735 pub operator04_token: crate::veryl_token::VerylToken,
10736}
10737
10738#[allow(dead_code)]
10742#[derive(Debug, Clone)]
10743pub struct Operator04Term {
10744 pub operator04_term: crate::veryl_token::Token, }
10746
10747#[allow(dead_code)]
10751#[derive(Debug, Clone)]
10752pub struct Operator04Token {
10753 pub operator04_term: crate::veryl_token::Token,
10754 pub comments: Box<Comments>,
10755}
10756
10757#[allow(dead_code)]
10761#[derive(Debug, Clone)]
10762pub struct Operator05 {
10763 pub operator05_token: crate::veryl_token::VerylToken,
10764}
10765
10766#[allow(dead_code)]
10770#[derive(Debug, Clone)]
10771pub struct Operator05Term {
10772 pub operator05_term: crate::veryl_token::Token, }
10774
10775#[allow(dead_code)]
10779#[derive(Debug, Clone)]
10780pub struct Operator05Token {
10781 pub operator05_term: crate::veryl_token::Token,
10782 pub comments: Box<Comments>,
10783}
10784
10785#[allow(dead_code)]
10789#[derive(Debug, Clone)]
10790pub struct Operator06 {
10791 pub operator06_token: crate::veryl_token::VerylToken,
10792}
10793
10794#[allow(dead_code)]
10798#[derive(Debug, Clone)]
10799pub struct Operator06Term {
10800 pub operator06_term: crate::veryl_token::Token, }
10802
10803#[allow(dead_code)]
10807#[derive(Debug, Clone)]
10808pub struct Operator06Token {
10809 pub operator06_term: crate::veryl_token::Token,
10810 pub comments: Box<Comments>,
10811}
10812
10813#[allow(dead_code)]
10817#[derive(Debug, Clone)]
10818pub struct Operator07 {
10819 pub operator07_token: crate::veryl_token::VerylToken,
10820}
10821
10822#[allow(dead_code)]
10826#[derive(Debug, Clone)]
10827pub struct Operator07Term {
10828 pub operator07_term: crate::veryl_token::Token, }
10830
10831#[allow(dead_code)]
10835#[derive(Debug, Clone)]
10836pub struct Operator07Token {
10837 pub operator07_term: crate::veryl_token::Token,
10838 pub comments: Box<Comments>,
10839}
10840
10841#[allow(dead_code)]
10845#[derive(Debug, Clone)]
10846pub struct Operator08 {
10847 pub operator08_token: crate::veryl_token::VerylToken,
10848}
10849
10850#[allow(dead_code)]
10854#[derive(Debug, Clone)]
10855pub struct Operator08Term {
10856 pub operator08_term: crate::veryl_token::Token, }
10858
10859#[allow(dead_code)]
10863#[derive(Debug, Clone)]
10864pub struct Operator08Token {
10865 pub operator08_term: crate::veryl_token::Token,
10866 pub comments: Box<Comments>,
10867}
10868
10869#[allow(dead_code)]
10873#[derive(Debug, Clone)]
10874pub struct Output {
10875 pub output_token: crate::veryl_token::VerylToken,
10876}
10877
10878#[allow(dead_code)]
10882#[derive(Debug, Clone)]
10883pub struct OutputTerm {
10884 pub output_term: crate::veryl_token::Token, }
10886
10887#[allow(dead_code)]
10891#[derive(Debug, Clone)]
10892pub struct OutputToken {
10893 pub output_term: crate::veryl_token::Token,
10894 pub comments: Box<Comments>,
10895}
10896
10897#[allow(dead_code)]
10901#[derive(Debug, Clone)]
10902pub struct Outside {
10903 pub outside_token: crate::veryl_token::VerylToken,
10904}
10905
10906#[allow(dead_code)]
10910#[derive(Debug, Clone)]
10911pub struct OutsideExpression {
10912 pub outside: Box<Outside>,
10913 pub expression: Box<Expression>,
10914 pub l_brace: Box<LBrace>,
10915 pub range_list: Box<RangeList>,
10916 pub r_brace: Box<RBrace>,
10917}
10918
10919#[allow(dead_code)]
10923#[derive(Debug, Clone)]
10924pub struct OutsideTerm {
10925 pub outside_term: crate::veryl_token::Token, }
10927
10928#[allow(dead_code)]
10932#[derive(Debug, Clone)]
10933pub struct OutsideToken {
10934 pub outside_term: crate::veryl_token::Token,
10935 pub comments: Box<Comments>,
10936}
10937
10938#[allow(dead_code)]
10942#[derive(Debug, Clone)]
10943pub struct P16 {
10944 pub p16_token: crate::veryl_token::VerylToken,
10945}
10946
10947#[allow(dead_code)]
10951#[derive(Debug, Clone)]
10952pub struct P16Term {
10953 pub p16_term: crate::veryl_token::Token, }
10955
10956#[allow(dead_code)]
10960#[derive(Debug, Clone)]
10961pub struct P16Token {
10962 pub p16_term: crate::veryl_token::Token,
10963 pub comments: Box<Comments>,
10964}
10965
10966#[allow(dead_code)]
10970#[derive(Debug, Clone)]
10971pub struct P32 {
10972 pub p32_token: crate::veryl_token::VerylToken,
10973}
10974
10975#[allow(dead_code)]
10979#[derive(Debug, Clone)]
10980pub struct P32Term {
10981 pub p32_term: crate::veryl_token::Token, }
10983
10984#[allow(dead_code)]
10988#[derive(Debug, Clone)]
10989pub struct P32Token {
10990 pub p32_term: crate::veryl_token::Token,
10991 pub comments: Box<Comments>,
10992}
10993
10994#[allow(dead_code)]
10998#[derive(Debug, Clone)]
10999pub struct P64 {
11000 pub p64_token: crate::veryl_token::VerylToken,
11001}
11002
11003#[allow(dead_code)]
11007#[derive(Debug, Clone)]
11008pub struct P64Term {
11009 pub p64_term: crate::veryl_token::Token, }
11011
11012#[allow(dead_code)]
11016#[derive(Debug, Clone)]
11017pub struct P64Token {
11018 pub p64_term: crate::veryl_token::Token,
11019 pub comments: Box<Comments>,
11020}
11021
11022#[allow(dead_code)]
11026#[derive(Debug, Clone)]
11027pub struct P8 {
11028 pub p8_token: crate::veryl_token::VerylToken,
11029}
11030
11031#[allow(dead_code)]
11035#[derive(Debug, Clone)]
11036pub struct P8Term {
11037 pub p8_term: crate::veryl_token::Token, }
11039
11040#[allow(dead_code)]
11044#[derive(Debug, Clone)]
11045pub struct P8Token {
11046 pub p8_term: crate::veryl_token::Token,
11047 pub comments: Box<Comments>,
11048}
11049
11050#[allow(dead_code)]
11054#[derive(Debug, Clone)]
11055pub struct Package {
11056 pub package_token: crate::veryl_token::VerylToken,
11057}
11058
11059#[allow(dead_code)]
11063#[derive(Debug, Clone)]
11064pub struct PackageDeclaration {
11065 pub package: Box<Package>,
11066 pub identifier: Box<Identifier>,
11067 pub package_declaration_opt: Option<PackageDeclarationOpt>,
11068 pub package_declaration_opt0: Option<PackageDeclarationOpt0>,
11069 pub l_brace: Box<LBrace>,
11070 pub package_declaration_list: Vec<PackageDeclarationList>,
11071 pub r_brace: Box<RBrace>,
11072}
11073
11074#[allow(dead_code)]
11078#[derive(Debug, Clone)]
11079pub struct PackageDeclarationList {
11080 pub package_group: Box<PackageGroup>,
11081}
11082
11083#[allow(dead_code)]
11087#[derive(Debug, Clone)]
11088pub struct PackageDeclarationOpt {
11089 pub with_generic_parameter: Box<WithGenericParameter>,
11090}
11091
11092#[allow(dead_code)]
11096#[derive(Debug, Clone)]
11097pub struct PackageDeclarationOpt0 {
11098 pub r#for: Box<For>,
11099 pub scoped_identifier: Box<ScopedIdentifier>,
11100}
11101
11102#[allow(dead_code)]
11106#[derive(Debug, Clone)]
11107pub struct PackageGroup {
11108 pub package_group_list: Vec<PackageGroupList>,
11109 pub package_group_group: Box<PackageGroupGroup>,
11110}
11111
11112#[allow(dead_code)]
11116#[derive(Debug, Clone)]
11117pub enum PackageGroupGroup {
11118 LBracePackageGroupGroupListRBrace(PackageGroupGroupLBracePackageGroupGroupListRBrace),
11119 PackageItem(PackageGroupGroupPackageItem),
11120}
11121
11122#[allow(dead_code)]
11126#[derive(Debug, Clone)]
11127pub struct PackageGroupGroupList {
11128 pub package_group: Box<PackageGroup>,
11129}
11130
11131#[allow(dead_code)]
11135#[derive(Debug, Clone)]
11136pub struct PackageGroupList {
11137 pub attribute: Box<Attribute>,
11138}
11139
11140#[allow(dead_code)]
11144#[derive(Debug, Clone)]
11145pub enum PackageItem {
11146 ConstDeclaration(PackageItemConstDeclaration),
11147 TypeDefDeclaration(PackageItemTypeDefDeclaration),
11148 EnumDeclaration(PackageItemEnumDeclaration),
11149 StructUnionDeclaration(PackageItemStructUnionDeclaration),
11150 FunctionDeclaration(PackageItemFunctionDeclaration),
11151 ImportDeclaration(PackageItemImportDeclaration),
11152 AliasDeclaration(PackageItemAliasDeclaration),
11153 EmbedDeclaration(PackageItemEmbedDeclaration),
11154}
11155
11156#[allow(dead_code)]
11160#[derive(Debug, Clone)]
11161pub struct PackageTerm {
11162 pub package_term: crate::veryl_token::Token, }
11164
11165#[allow(dead_code)]
11169#[derive(Debug, Clone)]
11170pub struct PackageToken {
11171 pub package_term: crate::veryl_token::Token,
11172 pub comments: Box<Comments>,
11173}
11174
11175#[allow(dead_code)]
11179#[derive(Debug, Clone)]
11180pub struct Param {
11181 pub param_token: crate::veryl_token::VerylToken,
11182}
11183
11184#[allow(dead_code)]
11188#[derive(Debug, Clone)]
11189pub struct ParamTerm {
11190 pub param_term: crate::veryl_token::Token, }
11192
11193#[allow(dead_code)]
11197#[derive(Debug, Clone)]
11198pub struct ParamToken {
11199 pub param_term: crate::veryl_token::Token,
11200 pub comments: Box<Comments>,
11201}
11202
11203#[allow(dead_code)]
11207#[derive(Debug, Clone)]
11208pub struct PlusColon {
11209 pub plus_colon_token: crate::veryl_token::VerylToken,
11210}
11211
11212#[allow(dead_code)]
11216#[derive(Debug, Clone)]
11217pub struct PlusColonTerm {
11218 pub plus_colon_term: crate::veryl_token::Token, }
11220
11221#[allow(dead_code)]
11225#[derive(Debug, Clone)]
11226pub struct PlusColonToken {
11227 pub plus_colon_term: crate::veryl_token::Token,
11228 pub comments: Box<Comments>,
11229}
11230
11231#[allow(dead_code)]
11235#[derive(Debug, Clone)]
11236pub struct PortDeclaration {
11237 pub l_paren: Box<LParen>,
11238 pub port_declaration_opt: Option<PortDeclarationOpt>,
11239 pub r_paren: Box<RParen>,
11240}
11241
11242#[allow(dead_code)]
11246#[derive(Debug, Clone)]
11247pub struct PortDeclarationGroup {
11248 pub port_declaration_group_list: Vec<PortDeclarationGroupList>,
11249 pub port_declaration_group_group: Box<PortDeclarationGroupGroup>,
11250}
11251
11252#[allow(dead_code)]
11256#[derive(Debug, Clone)]
11257pub enum PortDeclarationGroupGroup {
11258 LBracePortDeclarationListRBrace(PortDeclarationGroupGroupLBracePortDeclarationListRBrace),
11259 PortDeclarationItem(PortDeclarationGroupGroupPortDeclarationItem),
11260}
11261
11262#[allow(dead_code)]
11266#[derive(Debug, Clone)]
11267pub struct PortDeclarationGroupList {
11268 pub attribute: Box<Attribute>,
11269}
11270
11271#[allow(dead_code)]
11275#[derive(Debug, Clone)]
11276pub struct PortDeclarationItem {
11277 pub identifier: Box<Identifier>,
11278 pub colon: Box<Colon>,
11279 pub port_declaration_item_group: Box<PortDeclarationItemGroup>,
11280}
11281
11282#[allow(dead_code)]
11286#[derive(Debug, Clone)]
11287pub enum PortDeclarationItemGroup {
11288 PortTypeConcrete(PortDeclarationItemGroupPortTypeConcrete),
11289 PortTypeAbstract(PortDeclarationItemGroupPortTypeAbstract),
11290}
11291
11292#[allow(dead_code)]
11296#[derive(Debug, Clone)]
11297pub struct PortDeclarationList {
11298 pub port_declaration_group: Box<PortDeclarationGroup>,
11299 pub port_declaration_list_list: Vec<PortDeclarationListList>,
11300 pub port_declaration_list_opt: Option<PortDeclarationListOpt>,
11301}
11302
11303#[allow(dead_code)]
11307#[derive(Debug, Clone)]
11308pub struct PortDeclarationListList {
11309 pub comma: Box<Comma>,
11310 pub port_declaration_group: Box<PortDeclarationGroup>,
11311}
11312
11313#[allow(dead_code)]
11317#[derive(Debug, Clone)]
11318pub struct PortDeclarationListOpt {
11319 pub comma: Box<Comma>,
11320}
11321
11322#[allow(dead_code)]
11326#[derive(Debug, Clone)]
11327pub struct PortDeclarationOpt {
11328 pub port_declaration_list: Box<PortDeclarationList>,
11329}
11330
11331#[allow(dead_code)]
11335#[derive(Debug, Clone)]
11336pub struct PortDefaultValue {
11337 pub expression: Box<Expression>,
11338}
11339
11340#[allow(dead_code)]
11344#[derive(Debug, Clone)]
11345pub struct PortTypeAbstract {
11346 pub port_type_abstract_opt: Option<PortTypeAbstractOpt>,
11347 pub interface: Box<Interface>,
11348 pub port_type_abstract_opt0: Option<PortTypeAbstractOpt0>,
11349 pub port_type_abstract_opt1: Option<PortTypeAbstractOpt1>,
11350}
11351
11352#[allow(dead_code)]
11356#[derive(Debug, Clone)]
11357pub struct PortTypeAbstractOpt {
11358 pub clock_domain: Box<ClockDomain>,
11359}
11360
11361#[allow(dead_code)]
11365#[derive(Debug, Clone)]
11366pub struct PortTypeAbstractOpt0 {
11367 pub colon_colon: Box<ColonColon>,
11368 pub identifier: Box<Identifier>,
11369}
11370
11371#[allow(dead_code)]
11375#[derive(Debug, Clone)]
11376pub struct PortTypeAbstractOpt1 {
11377 pub array: Box<Array>,
11378}
11379
11380#[allow(dead_code)]
11384#[derive(Debug, Clone)]
11385pub struct PortTypeConcrete {
11386 pub direction: Box<Direction>,
11387 pub port_type_concrete_opt: Option<PortTypeConcreteOpt>,
11388 pub array_type: Box<ArrayType>,
11389 pub port_type_concrete_opt0: Option<PortTypeConcreteOpt0>,
11390}
11391
11392#[allow(dead_code)]
11396#[derive(Debug, Clone)]
11397pub struct PortTypeConcreteOpt {
11398 pub clock_domain: Box<ClockDomain>,
11399}
11400
11401#[allow(dead_code)]
11405#[derive(Debug, Clone)]
11406pub struct PortTypeConcreteOpt0 {
11407 pub equ: Box<Equ>,
11408 pub port_default_value: Box<PortDefaultValue>,
11409}
11410
11411#[allow(dead_code)]
11415#[derive(Debug, Clone)]
11416pub struct Proto {
11417 pub proto_token: crate::veryl_token::VerylToken,
11418}
11419
11420#[allow(dead_code)]
11424#[derive(Debug, Clone)]
11425pub struct ProtoAliasDeclaration {
11426 pub alias: Box<Alias>,
11427 pub proto_alias_declaration_group: Box<ProtoAliasDeclarationGroup>,
11428 pub identifier: Box<Identifier>,
11429 pub colon: Box<Colon>,
11430 pub scoped_identifier: Box<ScopedIdentifier>,
11431 pub semicolon: Box<Semicolon>,
11432}
11433
11434#[allow(dead_code)]
11438#[derive(Debug, Clone)]
11439pub enum ProtoAliasDeclarationGroup {
11440 Module(ProtoAliasDeclarationGroupModule),
11441 Interface(ProtoAliasDeclarationGroupInterface),
11442 Package(ProtoAliasDeclarationGroupPackage),
11443}
11444
11445#[allow(dead_code)]
11449#[derive(Debug, Clone)]
11450pub struct ProtoConstDeclaration {
11451 pub r#const: Box<Const>,
11452 pub identifier: Box<Identifier>,
11453 pub colon: Box<Colon>,
11454 pub proto_const_declaration_group: Box<ProtoConstDeclarationGroup>,
11455 pub semicolon: Box<Semicolon>,
11456}
11457
11458#[allow(dead_code)]
11462#[derive(Debug, Clone)]
11463pub enum ProtoConstDeclarationGroup {
11464 ArrayType(ProtoConstDeclarationGroupArrayType),
11465 Type(ProtoConstDeclarationGroupType),
11466}
11467
11468#[allow(dead_code)]
11472#[derive(Debug, Clone)]
11473pub struct ProtoDeclaration {
11474 pub proto: Box<Proto>,
11475 pub proto_declaration_group: Box<ProtoDeclarationGroup>,
11476}
11477
11478#[allow(dead_code)]
11482#[derive(Debug, Clone)]
11483pub enum ProtoDeclarationGroup {
11484 ProtoModuleDeclaration(ProtoDeclarationGroupProtoModuleDeclaration),
11485 ProtoInterfaceDeclaration(ProtoDeclarationGroupProtoInterfaceDeclaration),
11486 ProtoPackageDeclaration(ProtoDeclarationGroupProtoPackageDeclaration),
11487}
11488
11489#[allow(dead_code)]
11493#[derive(Debug, Clone)]
11494pub struct ProtoFunctionDeclaration {
11495 pub function: Box<Function>,
11496 pub identifier: Box<Identifier>,
11497 pub proto_function_declaration_opt: Option<ProtoFunctionDeclarationOpt>,
11498 pub proto_function_declaration_opt0: Option<ProtoFunctionDeclarationOpt0>,
11499 pub proto_function_declaration_opt1: Option<ProtoFunctionDeclarationOpt1>,
11500 pub semicolon: Box<Semicolon>,
11501}
11502
11503#[allow(dead_code)]
11507#[derive(Debug, Clone)]
11508pub struct ProtoFunctionDeclarationOpt {
11509 pub with_generic_parameter: Box<WithGenericParameter>,
11510}
11511
11512#[allow(dead_code)]
11516#[derive(Debug, Clone)]
11517pub struct ProtoFunctionDeclarationOpt0 {
11518 pub port_declaration: Box<PortDeclaration>,
11519}
11520
11521#[allow(dead_code)]
11525#[derive(Debug, Clone)]
11526pub struct ProtoFunctionDeclarationOpt1 {
11527 pub minus_g_t: Box<MinusGT>,
11528 pub scalar_type: Box<ScalarType>,
11529}
11530
11531#[allow(dead_code)]
11535#[derive(Debug, Clone)]
11536pub struct ProtoInterfaceDeclaration {
11537 pub interface: Box<Interface>,
11538 pub identifier: Box<Identifier>,
11539 pub proto_interface_declaration_opt: Option<ProtoInterfaceDeclarationOpt>,
11540 pub l_brace: Box<LBrace>,
11541 pub proto_interface_declaration_list: Vec<ProtoInterfaceDeclarationList>,
11542 pub r_brace: Box<RBrace>,
11543}
11544
11545#[allow(dead_code)]
11549#[derive(Debug, Clone)]
11550pub struct ProtoInterfaceDeclarationList {
11551 pub proto_interface_item: Box<ProtoInterfaceItem>,
11552}
11553
11554#[allow(dead_code)]
11558#[derive(Debug, Clone)]
11559pub struct ProtoInterfaceDeclarationOpt {
11560 pub with_parameter: Box<WithParameter>,
11561}
11562
11563#[allow(dead_code)]
11567#[derive(Debug, Clone)]
11568pub enum ProtoInterfaceItem {
11569 VarDeclaration(ProtoInterfaceItemVarDeclaration),
11570 ProtoConstDeclaration(ProtoInterfaceItemProtoConstDeclaration),
11571 ProtoFunctionDeclaration(ProtoInterfaceItemProtoFunctionDeclaration),
11572 ProtoTypeDefDeclaration(ProtoInterfaceItemProtoTypeDefDeclaration),
11573 ProtoAliasDeclaration(ProtoInterfaceItemProtoAliasDeclaration),
11574 ModportDeclaration(ProtoInterfaceItemModportDeclaration),
11575 ImportDeclaration(ProtoInterfaceItemImportDeclaration),
11576}
11577
11578#[allow(dead_code)]
11582#[derive(Debug, Clone)]
11583pub struct ProtoModuleDeclaration {
11584 pub module: Box<Module>,
11585 pub identifier: Box<Identifier>,
11586 pub proto_module_declaration_opt: Option<ProtoModuleDeclarationOpt>,
11587 pub proto_module_declaration_opt0: Option<ProtoModuleDeclarationOpt0>,
11588 pub semicolon: Box<Semicolon>,
11589}
11590
11591#[allow(dead_code)]
11595#[derive(Debug, Clone)]
11596pub struct ProtoModuleDeclarationOpt {
11597 pub with_parameter: Box<WithParameter>,
11598}
11599
11600#[allow(dead_code)]
11604#[derive(Debug, Clone)]
11605pub struct ProtoModuleDeclarationOpt0 {
11606 pub port_declaration: Box<PortDeclaration>,
11607}
11608
11609#[allow(dead_code)]
11613#[derive(Debug, Clone)]
11614pub enum ProtoPacakgeItem {
11615 ProtoConstDeclaration(ProtoPacakgeItemProtoConstDeclaration),
11616 ProtoTypeDefDeclaration(ProtoPacakgeItemProtoTypeDefDeclaration),
11617 EnumDeclaration(ProtoPacakgeItemEnumDeclaration),
11618 StructUnionDeclaration(ProtoPacakgeItemStructUnionDeclaration),
11619 ProtoFunctionDeclaration(ProtoPacakgeItemProtoFunctionDeclaration),
11620 ProtoAliasDeclaration(ProtoPacakgeItemProtoAliasDeclaration),
11621 ImportDeclaration(ProtoPacakgeItemImportDeclaration),
11622}
11623
11624#[allow(dead_code)]
11628#[derive(Debug, Clone)]
11629pub struct ProtoPackageDeclaration {
11630 pub package: Box<Package>,
11631 pub identifier: Box<Identifier>,
11632 pub l_brace: Box<LBrace>,
11633 pub proto_package_declaration_list: Vec<ProtoPackageDeclarationList>,
11634 pub r_brace: Box<RBrace>,
11635}
11636
11637#[allow(dead_code)]
11641#[derive(Debug, Clone)]
11642pub struct ProtoPackageDeclarationList {
11643 pub proto_pacakge_item: Box<ProtoPacakgeItem>,
11644}
11645
11646#[allow(dead_code)]
11650#[derive(Debug, Clone)]
11651pub struct ProtoTerm {
11652 pub proto_term: crate::veryl_token::Token, }
11654
11655#[allow(dead_code)]
11659#[derive(Debug, Clone)]
11660pub struct ProtoToken {
11661 pub proto_term: crate::veryl_token::Token,
11662 pub comments: Box<Comments>,
11663}
11664
11665#[allow(dead_code)]
11669#[derive(Debug, Clone)]
11670pub struct ProtoTypeDefDeclaration {
11671 pub r#type: Box<Type>,
11672 pub identifier: Box<Identifier>,
11673 pub proto_type_def_declaration_opt: Option<ProtoTypeDefDeclarationOpt>,
11674 pub semicolon: Box<Semicolon>,
11675}
11676
11677#[allow(dead_code)]
11681#[derive(Debug, Clone)]
11682pub struct ProtoTypeDefDeclarationOpt {
11683 pub equ: Box<Equ>,
11684 pub array_type: Box<ArrayType>,
11685}
11686
11687#[allow(dead_code)]
11691#[derive(Debug, Clone)]
11692pub struct Pub {
11693 pub pub_token: crate::veryl_token::VerylToken,
11694}
11695
11696#[allow(dead_code)]
11700#[derive(Debug, Clone)]
11701pub struct PubTerm {
11702 pub pub_term: crate::veryl_token::Token, }
11704
11705#[allow(dead_code)]
11709#[derive(Debug, Clone)]
11710pub struct PubToken {
11711 pub pub_term: crate::veryl_token::Token,
11712 pub comments: Box<Comments>,
11713}
11714
11715#[allow(dead_code)]
11719#[derive(Debug, Clone)]
11720pub enum PublicDescriptionItem {
11721 ModuleDeclaration(PublicDescriptionItemModuleDeclaration),
11722 InterfaceDeclaration(PublicDescriptionItemInterfaceDeclaration),
11723 PackageDeclaration(PublicDescriptionItemPackageDeclaration),
11724 AliasDeclaration(PublicDescriptionItemAliasDeclaration),
11725 ProtoDeclaration(PublicDescriptionItemProtoDeclaration),
11726 FunctionDeclaration(PublicDescriptionItemFunctionDeclaration),
11727}
11728
11729#[allow(dead_code)]
11733#[derive(Debug, Clone)]
11734pub struct Question {
11735 pub question_token: crate::veryl_token::VerylToken,
11736}
11737
11738#[allow(dead_code)]
11742#[derive(Debug, Clone)]
11743pub struct QuestionTerm {
11744 pub question_term: crate::veryl_token::Token, }
11746
11747#[allow(dead_code)]
11751#[derive(Debug, Clone)]
11752pub struct QuestionToken {
11753 pub question_term: crate::veryl_token::Token,
11754 pub comments: Box<Comments>,
11755}
11756
11757#[allow(dead_code)]
11761#[derive(Debug, Clone)]
11762pub struct Quote {
11763 pub quote_token: crate::veryl_token::VerylToken,
11764}
11765
11766#[allow(dead_code)]
11770#[derive(Debug, Clone)]
11771pub struct QuoteLBrace {
11772 pub quote_l_brace_token: crate::veryl_token::VerylToken,
11773}
11774
11775#[allow(dead_code)]
11779#[derive(Debug, Clone)]
11780pub struct QuoteLBraceTerm {
11781 pub quote_l_brace_term: crate::veryl_token::Token, }
11783
11784#[allow(dead_code)]
11788#[derive(Debug, Clone)]
11789pub struct QuoteLBraceToken {
11790 pub quote_l_brace_term: crate::veryl_token::Token,
11791 pub comments: Box<Comments>,
11792}
11793
11794#[allow(dead_code)]
11798#[derive(Debug, Clone)]
11799pub struct QuoteTerm {
11800 pub quote_term: crate::veryl_token::Token, }
11802
11803#[allow(dead_code)]
11807#[derive(Debug, Clone)]
11808pub struct QuoteToken {
11809 pub quote_term: crate::veryl_token::Token,
11810 pub comments: Box<Comments>,
11811}
11812
11813#[allow(dead_code)]
11817#[derive(Debug, Clone)]
11818pub struct RAngle {
11819 pub r_angle_token: crate::veryl_token::VerylToken,
11820}
11821
11822#[allow(dead_code)]
11826#[derive(Debug, Clone)]
11827pub struct RAngleTerm {
11828 pub r_angle_term: crate::veryl_token::Token, }
11830
11831#[allow(dead_code)]
11835#[derive(Debug, Clone)]
11836pub struct RAngleToken {
11837 pub r_angle_term: crate::veryl_token::Token,
11838 pub comments: Box<Comments>,
11839}
11840
11841#[allow(dead_code)]
11845#[derive(Debug, Clone)]
11846pub struct RBrace {
11847 pub r_brace_token: crate::veryl_token::VerylToken,
11848}
11849
11850#[allow(dead_code)]
11854#[derive(Debug, Clone)]
11855pub struct RBraceTerm {
11856 pub r_brace_term: crate::veryl_token::Token, }
11858
11859#[allow(dead_code)]
11863#[derive(Debug, Clone)]
11864pub struct RBraceToken {
11865 pub r_brace_term: crate::veryl_token::Token,
11866 pub comments: Box<Comments>,
11867}
11868
11869#[allow(dead_code)]
11873#[derive(Debug, Clone)]
11874pub struct RBracket {
11875 pub r_bracket_token: crate::veryl_token::VerylToken,
11876}
11877
11878#[allow(dead_code)]
11882#[derive(Debug, Clone)]
11883pub struct RBracketTerm {
11884 pub r_bracket_term: crate::veryl_token::Token, }
11886
11887#[allow(dead_code)]
11891#[derive(Debug, Clone)]
11892pub struct RBracketToken {
11893 pub r_bracket_term: crate::veryl_token::Token,
11894 pub comments: Box<Comments>,
11895}
11896
11897#[allow(dead_code)]
11901#[derive(Debug, Clone)]
11902pub struct RParen {
11903 pub r_paren_token: crate::veryl_token::VerylToken,
11904}
11905
11906#[allow(dead_code)]
11910#[derive(Debug, Clone)]
11911pub struct RParenTerm {
11912 pub r_paren_term: crate::veryl_token::Token, }
11914
11915#[allow(dead_code)]
11919#[derive(Debug, Clone)]
11920pub struct RParenToken {
11921 pub r_paren_term: crate::veryl_token::Token,
11922 pub comments: Box<Comments>,
11923}
11924
11925#[allow(dead_code)]
11929#[derive(Debug, Clone)]
11930pub struct Range {
11931 pub expression: Box<Expression>,
11932 pub range_opt: Option<RangeOpt>,
11933}
11934
11935#[allow(dead_code)]
11939#[derive(Debug, Clone)]
11940pub struct RangeItem {
11941 pub range: Box<Range>,
11942}
11943
11944#[allow(dead_code)]
11948#[derive(Debug, Clone)]
11949pub struct RangeList {
11950 pub range_item: Box<RangeItem>,
11951 pub range_list_list: Vec<RangeListList>,
11952 pub range_list_opt: Option<RangeListOpt>,
11953}
11954
11955#[allow(dead_code)]
11959#[derive(Debug, Clone)]
11960pub struct RangeListList {
11961 pub comma: Box<Comma>,
11962 pub range_item: Box<RangeItem>,
11963}
11964
11965#[allow(dead_code)]
11969#[derive(Debug, Clone)]
11970pub struct RangeListOpt {
11971 pub comma: Box<Comma>,
11972}
11973
11974#[allow(dead_code)]
11978#[derive(Debug, Clone)]
11979pub enum RangeOperator {
11980 DotDot(RangeOperatorDotDot),
11981 DotDotEqu(RangeOperatorDotDotEqu),
11982}
11983
11984#[allow(dead_code)]
11988#[derive(Debug, Clone)]
11989pub struct RangeOpt {
11990 pub range_operator: Box<RangeOperator>,
11991 pub expression: Box<Expression>,
11992}
11993
11994#[allow(dead_code)]
11998#[derive(Debug, Clone)]
11999pub enum RealNumber {
12000 FixedPoint(RealNumberFixedPoint),
12001 Exponent(RealNumberExponent),
12002}
12003
12004#[allow(dead_code)]
12008#[derive(Debug, Clone)]
12009pub struct Repeat {
12010 pub repeat_token: crate::veryl_token::VerylToken,
12011}
12012
12013#[allow(dead_code)]
12017#[derive(Debug, Clone)]
12018pub struct RepeatTerm {
12019 pub repeat_term: crate::veryl_token::Token, }
12021
12022#[allow(dead_code)]
12026#[derive(Debug, Clone)]
12027pub struct RepeatToken {
12028 pub repeat_term: crate::veryl_token::Token,
12029 pub comments: Box<Comments>,
12030}
12031
12032#[allow(dead_code)]
12036#[derive(Debug, Clone)]
12037pub struct Reset {
12038 pub reset_token: crate::veryl_token::VerylToken,
12039}
12040
12041#[allow(dead_code)]
12045#[derive(Debug, Clone)]
12046pub struct ResetAsyncHigh {
12047 pub reset_async_high_token: crate::veryl_token::VerylToken,
12048}
12049
12050#[allow(dead_code)]
12054#[derive(Debug, Clone)]
12055pub struct ResetAsyncHighTerm {
12056 pub reset_async_high_term: crate::veryl_token::Token, }
12058
12059#[allow(dead_code)]
12063#[derive(Debug, Clone)]
12064pub struct ResetAsyncHighToken {
12065 pub reset_async_high_term: crate::veryl_token::Token,
12066 pub comments: Box<Comments>,
12067}
12068
12069#[allow(dead_code)]
12073#[derive(Debug, Clone)]
12074pub struct ResetAsyncLow {
12075 pub reset_async_low_token: crate::veryl_token::VerylToken,
12076}
12077
12078#[allow(dead_code)]
12082#[derive(Debug, Clone)]
12083pub struct ResetAsyncLowTerm {
12084 pub reset_async_low_term: crate::veryl_token::Token, }
12086
12087#[allow(dead_code)]
12091#[derive(Debug, Clone)]
12092pub struct ResetAsyncLowToken {
12093 pub reset_async_low_term: crate::veryl_token::Token,
12094 pub comments: Box<Comments>,
12095}
12096
12097#[allow(dead_code)]
12101#[derive(Debug, Clone)]
12102pub struct ResetSyncHigh {
12103 pub reset_sync_high_token: crate::veryl_token::VerylToken,
12104}
12105
12106#[allow(dead_code)]
12110#[derive(Debug, Clone)]
12111pub struct ResetSyncHighTerm {
12112 pub reset_sync_high_term: crate::veryl_token::Token, }
12114
12115#[allow(dead_code)]
12119#[derive(Debug, Clone)]
12120pub struct ResetSyncHighToken {
12121 pub reset_sync_high_term: crate::veryl_token::Token,
12122 pub comments: Box<Comments>,
12123}
12124
12125#[allow(dead_code)]
12129#[derive(Debug, Clone)]
12130pub struct ResetSyncLow {
12131 pub reset_sync_low_token: crate::veryl_token::VerylToken,
12132}
12133
12134#[allow(dead_code)]
12138#[derive(Debug, Clone)]
12139pub struct ResetSyncLowTerm {
12140 pub reset_sync_low_term: crate::veryl_token::Token, }
12142
12143#[allow(dead_code)]
12147#[derive(Debug, Clone)]
12148pub struct ResetSyncLowToken {
12149 pub reset_sync_low_term: crate::veryl_token::Token,
12150 pub comments: Box<Comments>,
12151}
12152
12153#[allow(dead_code)]
12157#[derive(Debug, Clone)]
12158pub struct ResetTerm {
12159 pub reset_term: crate::veryl_token::Token, }
12161
12162#[allow(dead_code)]
12166#[derive(Debug, Clone)]
12167pub struct ResetToken {
12168 pub reset_term: crate::veryl_token::Token,
12169 pub comments: Box<Comments>,
12170}
12171
12172#[allow(dead_code)]
12176#[derive(Debug, Clone)]
12177pub struct Return {
12178 pub return_token: crate::veryl_token::VerylToken,
12179}
12180
12181#[allow(dead_code)]
12185#[derive(Debug, Clone)]
12186pub struct ReturnStatement {
12187 pub r#return: Box<Return>,
12188 pub expression: Box<Expression>,
12189 pub semicolon: Box<Semicolon>,
12190}
12191
12192#[allow(dead_code)]
12196#[derive(Debug, Clone)]
12197pub struct ReturnTerm {
12198 pub return_term: crate::veryl_token::Token, }
12200
12201#[allow(dead_code)]
12205#[derive(Debug, Clone)]
12206pub struct ReturnToken {
12207 pub return_term: crate::veryl_token::Token,
12208 pub comments: Box<Comments>,
12209}
12210
12211#[allow(dead_code)]
12215#[derive(Debug, Clone)]
12216pub struct Rev {
12217 pub rev_token: crate::veryl_token::VerylToken,
12218}
12219
12220#[allow(dead_code)]
12224#[derive(Debug, Clone)]
12225pub struct RevTerm {
12226 pub rev_term: crate::veryl_token::Token, }
12228
12229#[allow(dead_code)]
12233#[derive(Debug, Clone)]
12234pub struct RevToken {
12235 pub rev_term: crate::veryl_token::Token,
12236 pub comments: Box<Comments>,
12237}
12238
12239#[allow(dead_code)]
12243#[derive(Debug, Clone)]
12244pub struct Same {
12245 pub same_token: crate::veryl_token::VerylToken,
12246}
12247
12248#[allow(dead_code)]
12252#[derive(Debug, Clone)]
12253pub struct SameTerm {
12254 pub same_term: crate::veryl_token::Token, }
12256
12257#[allow(dead_code)]
12261#[derive(Debug, Clone)]
12262pub struct SameToken {
12263 pub same_term: crate::veryl_token::Token,
12264 pub comments: Box<Comments>,
12265}
12266
12267#[allow(dead_code)]
12271#[derive(Debug, Clone)]
12272pub struct ScalarType {
12273 pub scalar_type_list: Vec<ScalarTypeList>,
12274 pub scalar_type_group: Box<ScalarTypeGroup>,
12275}
12276
12277#[allow(dead_code)]
12281#[derive(Debug, Clone)]
12282pub enum ScalarTypeGroup {
12283 UserDefinedTypeScalarTypeOpt(ScalarTypeGroupUserDefinedTypeScalarTypeOpt),
12284 FactorType(ScalarTypeGroupFactorType),
12285}
12286
12287#[allow(dead_code)]
12291#[derive(Debug, Clone)]
12292pub struct ScalarTypeList {
12293 pub type_modifier: Box<TypeModifier>,
12294}
12295
12296#[allow(dead_code)]
12300#[derive(Debug, Clone)]
12301pub struct ScalarTypeOpt {
12302 pub width: Box<Width>,
12303}
12304
12305#[allow(dead_code)]
12309#[derive(Debug, Clone)]
12310pub struct ScopedIdentifier {
12311 pub scoped_identifier_group: Box<ScopedIdentifierGroup>,
12312 pub scoped_identifier_list: Vec<ScopedIdentifierList>,
12313}
12314
12315#[allow(dead_code)]
12319#[derive(Debug, Clone)]
12320pub enum ScopedIdentifierGroup {
12321 DollarIdentifier(ScopedIdentifierGroupDollarIdentifier),
12322 IdentifierScopedIdentifierOpt(ScopedIdentifierGroupIdentifierScopedIdentifierOpt),
12323}
12324
12325#[allow(dead_code)]
12329#[derive(Debug, Clone)]
12330pub struct ScopedIdentifierList {
12331 pub colon_colon: Box<ColonColon>,
12332 pub identifier: Box<Identifier>,
12333 pub scoped_identifier_opt0: Option<ScopedIdentifierOpt0>,
12334}
12335
12336#[allow(dead_code)]
12340#[derive(Debug, Clone)]
12341pub struct ScopedIdentifierOpt {
12342 pub with_generic_argument: Box<WithGenericArgument>,
12343}
12344
12345#[allow(dead_code)]
12349#[derive(Debug, Clone)]
12350pub struct ScopedIdentifierOpt0 {
12351 pub with_generic_argument: Box<WithGenericArgument>,
12352}
12353
12354#[allow(dead_code)]
12358#[derive(Debug, Clone)]
12359pub struct Select {
12360 pub l_bracket: Box<LBracket>,
12361 pub expression: Box<Expression>,
12362 pub select_opt: Option<SelectOpt>,
12363 pub r_bracket: Box<RBracket>,
12364}
12365
12366#[allow(dead_code)]
12370#[derive(Debug, Clone)]
12371pub enum SelectOperator {
12372 Colon(SelectOperatorColon),
12373 PlusColon(SelectOperatorPlusColon),
12374 MinusColon(SelectOperatorMinusColon),
12375 Step(SelectOperatorStep),
12376}
12377
12378#[allow(dead_code)]
12382#[derive(Debug, Clone)]
12383pub struct SelectOpt {
12384 pub select_operator: Box<SelectOperator>,
12385 pub expression: Box<Expression>,
12386}
12387
12388#[allow(dead_code)]
12392#[derive(Debug, Clone)]
12393pub struct Semicolon {
12394 pub semicolon_token: crate::veryl_token::VerylToken,
12395}
12396
12397#[allow(dead_code)]
12401#[derive(Debug, Clone)]
12402pub struct SemicolonTerm {
12403 pub semicolon_term: crate::veryl_token::Token, }
12405
12406#[allow(dead_code)]
12410#[derive(Debug, Clone)]
12411pub struct SemicolonToken {
12412 pub semicolon_term: crate::veryl_token::Token,
12413 pub comments: Box<Comments>,
12414}
12415
12416#[allow(dead_code)]
12420#[derive(Debug, Clone)]
12421pub struct Signed {
12422 pub signed_token: crate::veryl_token::VerylToken,
12423}
12424
12425#[allow(dead_code)]
12429#[derive(Debug, Clone)]
12430pub struct SignedTerm {
12431 pub signed_term: crate::veryl_token::Token, }
12433
12434#[allow(dead_code)]
12438#[derive(Debug, Clone)]
12439pub struct SignedToken {
12440 pub signed_term: crate::veryl_token::Token,
12441 pub comments: Box<Comments>,
12442}
12443
12444#[allow(dead_code)]
12448#[derive(Debug, Clone)]
12449pub struct Star {
12450 pub star_token: crate::veryl_token::VerylToken,
12451}
12452
12453#[allow(dead_code)]
12457#[derive(Debug, Clone)]
12458pub struct StarTerm {
12459 pub star_term: crate::veryl_token::Token, }
12461
12462#[allow(dead_code)]
12466#[derive(Debug, Clone)]
12467pub struct StarToken {
12468 pub star_term: crate::veryl_token::Token,
12469 pub comments: Box<Comments>,
12470}
12471
12472#[allow(dead_code)]
12476#[derive(Debug, Clone)]
12477pub struct Start {
12478 pub start_token: crate::veryl_token::VerylToken,
12479}
12480
12481#[allow(dead_code)]
12485#[derive(Debug, Clone)]
12486pub struct StartToken {
12487 pub comments: Box<Comments>,
12488}
12489
12490#[allow(dead_code)]
12494#[derive(Debug, Clone)]
12495pub enum Statement {
12496 IdentifierStatement(StatementIdentifierStatement),
12497 IfStatement(StatementIfStatement),
12498 IfResetStatement(StatementIfResetStatement),
12499 ReturnStatement(StatementReturnStatement),
12500 BreakStatement(StatementBreakStatement),
12501 ForStatement(StatementForStatement),
12502 CaseStatement(StatementCaseStatement),
12503 SwitchStatement(StatementSwitchStatement),
12504}
12505
12506#[allow(dead_code)]
12510#[derive(Debug, Clone)]
12511pub struct StatementBlock {
12512 pub l_brace: Box<LBrace>,
12513 pub statement_block_list: Vec<StatementBlockList>,
12514 pub r_brace: Box<RBrace>,
12515}
12516
12517#[allow(dead_code)]
12521#[derive(Debug, Clone)]
12522pub struct StatementBlockGroup {
12523 pub statement_block_group_list: Vec<StatementBlockGroupList>,
12524 pub statement_block_group_group: Box<StatementBlockGroupGroup>,
12525}
12526
12527#[allow(dead_code)]
12531#[derive(Debug, Clone)]
12532pub enum StatementBlockGroupGroup {
12533 BlockLBraceStatementBlockGroupGroupListRBrace(
12534 StatementBlockGroupGroupBlockLBraceStatementBlockGroupGroupListRBrace,
12535 ),
12536 StatementBlockItem(StatementBlockGroupGroupStatementBlockItem),
12537}
12538
12539#[allow(dead_code)]
12543#[derive(Debug, Clone)]
12544pub struct StatementBlockGroupGroupList {
12545 pub statement_block_group: Box<StatementBlockGroup>,
12546}
12547
12548#[allow(dead_code)]
12552#[derive(Debug, Clone)]
12553pub struct StatementBlockGroupList {
12554 pub attribute: Box<Attribute>,
12555}
12556
12557#[allow(dead_code)]
12561#[derive(Debug, Clone)]
12562pub enum StatementBlockItem {
12563 VarDeclaration(StatementBlockItemVarDeclaration),
12564 LetStatement(StatementBlockItemLetStatement),
12565 ConstDeclaration(StatementBlockItemConstDeclaration),
12566 Statement(StatementBlockItemStatement),
12567 ConcatenationAssignment(StatementBlockItemConcatenationAssignment),
12568}
12569
12570#[allow(dead_code)]
12574#[derive(Debug, Clone)]
12575pub struct StatementBlockList {
12576 pub statement_block_group: Box<StatementBlockGroup>,
12577}
12578
12579#[allow(dead_code)]
12583#[derive(Debug, Clone)]
12584pub struct Step {
12585 pub step_token: crate::veryl_token::VerylToken,
12586}
12587
12588#[allow(dead_code)]
12592#[derive(Debug, Clone)]
12593pub struct StepTerm {
12594 pub step_term: crate::veryl_token::Token, }
12596
12597#[allow(dead_code)]
12601#[derive(Debug, Clone)]
12602pub struct StepToken {
12603 pub step_term: crate::veryl_token::Token,
12604 pub comments: Box<Comments>,
12605}
12606
12607#[allow(dead_code)]
12611#[derive(Debug, Clone)]
12612pub struct Strin {
12613 pub string_token: crate::veryl_token::VerylToken,
12614}
12615
12616#[allow(dead_code)]
12620#[derive(Debug, Clone)]
12621pub struct StringLiteral {
12622 pub string_literal_token: crate::veryl_token::VerylToken,
12623}
12624
12625#[allow(dead_code)]
12629#[derive(Debug, Clone)]
12630pub struct StringLiteralTerm {
12631 pub string_literal_term: crate::veryl_token::Token, }
12633
12634#[allow(dead_code)]
12638#[derive(Debug, Clone)]
12639pub struct StringLiteralToken {
12640 pub string_literal_term: crate::veryl_token::Token,
12641 pub comments: Box<Comments>,
12642}
12643
12644#[allow(dead_code)]
12648#[derive(Debug, Clone)]
12649pub struct StringTerm {
12650 pub string_term: crate::veryl_token::Token, }
12652
12653#[allow(dead_code)]
12657#[derive(Debug, Clone)]
12658pub struct StringToken {
12659 pub string_term: crate::veryl_token::Token,
12660 pub comments: Box<Comments>,
12661}
12662
12663#[allow(dead_code)]
12667#[derive(Debug, Clone)]
12668pub struct Struct {
12669 pub struct_token: crate::veryl_token::VerylToken,
12670}
12671
12672#[allow(dead_code)]
12676#[derive(Debug, Clone)]
12677pub struct StructConstructor {
12678 pub quote_l_brace: Box<QuoteLBrace>,
12679 pub struct_constructor_list: Box<StructConstructorList>,
12680 pub struct_constructor_opt: Option<StructConstructorOpt>,
12681 pub r_brace: Box<RBrace>,
12682}
12683
12684#[allow(dead_code)]
12688#[derive(Debug, Clone)]
12689pub struct StructConstructorItem {
12690 pub identifier: Box<Identifier>,
12691 pub colon: Box<Colon>,
12692 pub expression: Box<Expression>,
12693}
12694
12695#[allow(dead_code)]
12699#[derive(Debug, Clone)]
12700pub struct StructConstructorList {
12701 pub struct_constructor_item: Box<StructConstructorItem>,
12702 pub struct_constructor_list_list: Vec<StructConstructorListList>,
12703 pub struct_constructor_list_opt: Option<StructConstructorListOpt>,
12704}
12705
12706#[allow(dead_code)]
12710#[derive(Debug, Clone)]
12711pub struct StructConstructorListList {
12712 pub comma: Box<Comma>,
12713 pub struct_constructor_item: Box<StructConstructorItem>,
12714}
12715
12716#[allow(dead_code)]
12720#[derive(Debug, Clone)]
12721pub struct StructConstructorListOpt {
12722 pub comma: Box<Comma>,
12723}
12724
12725#[allow(dead_code)]
12729#[derive(Debug, Clone)]
12730pub struct StructConstructorOpt {
12731 pub dot_dot: Box<DotDot>,
12732 pub defaul: Box<Defaul>,
12733 pub l_paren: Box<LParen>,
12734 pub expression: Box<Expression>,
12735 pub r_paren: Box<RParen>,
12736}
12737
12738#[allow(dead_code)]
12742#[derive(Debug, Clone)]
12743pub struct StructTerm {
12744 pub struct_term: crate::veryl_token::Token, }
12746
12747#[allow(dead_code)]
12751#[derive(Debug, Clone)]
12752pub struct StructToken {
12753 pub struct_term: crate::veryl_token::Token,
12754 pub comments: Box<Comments>,
12755}
12756
12757#[allow(dead_code)]
12761#[derive(Debug, Clone)]
12762pub enum StructUnion {
12763 Struct(StructUnionStruct),
12764 Union(StructUnionUnion),
12765}
12766
12767#[allow(dead_code)]
12771#[derive(Debug, Clone)]
12772pub struct StructUnionDeclaration {
12773 pub struct_union: Box<StructUnion>,
12774 pub identifier: Box<Identifier>,
12775 pub struct_union_declaration_opt: Option<StructUnionDeclarationOpt>,
12776 pub l_brace: Box<LBrace>,
12777 pub struct_union_list: Box<StructUnionList>,
12778 pub r_brace: Box<RBrace>,
12779}
12780
12781#[allow(dead_code)]
12785#[derive(Debug, Clone)]
12786pub struct StructUnionDeclarationOpt {
12787 pub with_generic_parameter: Box<WithGenericParameter>,
12788}
12789
12790#[allow(dead_code)]
12794#[derive(Debug, Clone)]
12795pub struct StructUnionGroup {
12796 pub struct_union_group_list: Vec<StructUnionGroupList>,
12797 pub struct_union_group_group: Box<StructUnionGroupGroup>,
12798}
12799
12800#[allow(dead_code)]
12804#[derive(Debug, Clone)]
12805pub enum StructUnionGroupGroup {
12806 LBraceStructUnionListRBrace(StructUnionGroupGroupLBraceStructUnionListRBrace),
12807 StructUnionItem(StructUnionGroupGroupStructUnionItem),
12808}
12809
12810#[allow(dead_code)]
12814#[derive(Debug, Clone)]
12815pub struct StructUnionGroupList {
12816 pub attribute: Box<Attribute>,
12817}
12818
12819#[allow(dead_code)]
12823#[derive(Debug, Clone)]
12824pub struct StructUnionItem {
12825 pub identifier: Box<Identifier>,
12826 pub colon: Box<Colon>,
12827 pub scalar_type: Box<ScalarType>,
12828}
12829
12830#[allow(dead_code)]
12834#[derive(Debug, Clone)]
12835pub struct StructUnionList {
12836 pub struct_union_group: Box<StructUnionGroup>,
12837 pub struct_union_list_list: Vec<StructUnionListList>,
12838 pub struct_union_list_opt: Option<StructUnionListOpt>,
12839}
12840
12841#[allow(dead_code)]
12845#[derive(Debug, Clone)]
12846pub struct StructUnionListList {
12847 pub comma: Box<Comma>,
12848 pub struct_union_group: Box<StructUnionGroup>,
12849}
12850
12851#[allow(dead_code)]
12855#[derive(Debug, Clone)]
12856pub struct StructUnionListOpt {
12857 pub comma: Box<Comma>,
12858}
12859
12860#[allow(dead_code)]
12864#[derive(Debug, Clone)]
12865pub struct Switch {
12866 pub switch_token: crate::veryl_token::VerylToken,
12867}
12868
12869#[allow(dead_code)]
12873#[derive(Debug, Clone)]
12874pub struct SwitchCondition {
12875 pub expression: Box<Expression>,
12876 pub switch_condition_list: Vec<SwitchConditionList>,
12877}
12878
12879#[allow(dead_code)]
12883#[derive(Debug, Clone)]
12884pub struct SwitchConditionList {
12885 pub comma: Box<Comma>,
12886 pub expression: Box<Expression>,
12887}
12888
12889#[allow(dead_code)]
12893#[derive(Debug, Clone)]
12894pub struct SwitchExpression {
12895 pub switch: Box<Switch>,
12896 pub l_brace: Box<LBrace>,
12897 pub switch_condition: Box<SwitchCondition>,
12898 pub colon: Box<Colon>,
12899 pub expression: Box<Expression>,
12900 pub comma: Box<Comma>,
12901 pub switch_expression_list: Vec<SwitchExpressionList>,
12902 pub defaul: Box<Defaul>,
12903 pub colon0: Box<Colon>,
12904 pub expression0: Box<Expression>,
12905 pub switch_expression_opt: Option<SwitchExpressionOpt>,
12906 pub r_brace: Box<RBrace>,
12907}
12908
12909#[allow(dead_code)]
12913#[derive(Debug, Clone)]
12914pub struct SwitchExpressionList {
12915 pub switch_condition: Box<SwitchCondition>,
12916 pub colon: Box<Colon>,
12917 pub expression: Box<Expression>,
12918 pub comma: Box<Comma>,
12919}
12920
12921#[allow(dead_code)]
12925#[derive(Debug, Clone)]
12926pub struct SwitchExpressionOpt {
12927 pub comma: Box<Comma>,
12928}
12929
12930#[allow(dead_code)]
12934#[derive(Debug, Clone)]
12935pub struct SwitchItem {
12936 pub switch_item_group: Box<SwitchItemGroup>,
12937 pub colon: Box<Colon>,
12938 pub switch_item_group0: Box<SwitchItemGroup0>,
12939}
12940
12941#[allow(dead_code)]
12945#[derive(Debug, Clone)]
12946pub enum SwitchItemGroup {
12947 SwitchCondition(SwitchItemGroupSwitchCondition),
12948 Defaul(SwitchItemGroupDefaul),
12949}
12950
12951#[allow(dead_code)]
12955#[derive(Debug, Clone)]
12956pub enum SwitchItemGroup0 {
12957 Statement(SwitchItemGroup0Statement),
12958 StatementBlock(SwitchItemGroup0StatementBlock),
12959}
12960
12961#[allow(dead_code)]
12965#[derive(Debug, Clone)]
12966pub struct SwitchStatement {
12967 pub switch: Box<Switch>,
12968 pub l_brace: Box<LBrace>,
12969 pub switch_statement_list: Vec<SwitchStatementList>,
12970 pub r_brace: Box<RBrace>,
12971}
12972
12973#[allow(dead_code)]
12977#[derive(Debug, Clone)]
12978pub struct SwitchStatementList {
12979 pub switch_item: Box<SwitchItem>,
12980}
12981
12982#[allow(dead_code)]
12986#[derive(Debug, Clone)]
12987pub struct SwitchTerm {
12988 pub switch_term: crate::veryl_token::Token, }
12990
12991#[allow(dead_code)]
12995#[derive(Debug, Clone)]
12996pub struct SwitchToken {
12997 pub switch_term: crate::veryl_token::Token,
12998 pub comments: Box<Comments>,
12999}
13000
13001#[allow(dead_code)]
13005#[derive(Debug, Clone)]
13006pub struct Tri {
13007 pub tri_token: crate::veryl_token::VerylToken,
13008}
13009
13010#[allow(dead_code)]
13014#[derive(Debug, Clone)]
13015pub struct TriTerm {
13016 pub tri_term: crate::veryl_token::Token, }
13018
13019#[allow(dead_code)]
13023#[derive(Debug, Clone)]
13024pub struct TriToken {
13025 pub tri_term: crate::veryl_token::Token,
13026 pub comments: Box<Comments>,
13027}
13028
13029#[allow(dead_code)]
13033#[derive(Debug, Clone)]
13034pub struct TripleLBrace {
13035 pub triple_l_brace_token: crate::veryl_token::VerylToken,
13036}
13037
13038#[allow(dead_code)]
13042#[derive(Debug, Clone)]
13043pub struct TripleLBraceTerm {
13044 pub triple_l_brace_term: crate::veryl_token::Token, }
13046
13047#[allow(dead_code)]
13051#[derive(Debug, Clone)]
13052pub struct TripleLBraceToken {
13053 pub triple_l_brace_term: crate::veryl_token::Token,
13054}
13055
13056#[allow(dead_code)]
13060#[derive(Debug, Clone)]
13061pub struct TripleRBrace {
13062 pub triple_r_brace_token: crate::veryl_token::VerylToken,
13063}
13064
13065#[allow(dead_code)]
13069#[derive(Debug, Clone)]
13070pub struct TripleRBraceTerm {
13071 pub triple_r_brace_term: crate::veryl_token::Token, }
13073
13074#[allow(dead_code)]
13078#[derive(Debug, Clone)]
13079pub struct TripleRBraceToken {
13080 pub triple_r_brace_term: crate::veryl_token::Token,
13081 pub comments: Box<Comments>,
13082}
13083
13084#[allow(dead_code)]
13088#[derive(Debug, Clone)]
13089pub struct True {
13090 pub true_token: crate::veryl_token::VerylToken,
13091}
13092
13093#[allow(dead_code)]
13097#[derive(Debug, Clone)]
13098pub struct TrueTerm {
13099 pub true_term: crate::veryl_token::Token, }
13101
13102#[allow(dead_code)]
13106#[derive(Debug, Clone)]
13107pub struct TrueToken {
13108 pub true_term: crate::veryl_token::Token,
13109 pub comments: Box<Comments>,
13110}
13111
13112#[allow(dead_code)]
13116#[derive(Debug, Clone)]
13117pub struct Type {
13118 pub type_token: crate::veryl_token::VerylToken,
13119}
13120
13121#[allow(dead_code)]
13125#[derive(Debug, Clone)]
13126pub struct TypeDefDeclaration {
13127 pub r#type: Box<Type>,
13128 pub identifier: Box<Identifier>,
13129 pub equ: Box<Equ>,
13130 pub array_type: Box<ArrayType>,
13131 pub semicolon: Box<Semicolon>,
13132}
13133
13134#[allow(dead_code)]
13138#[derive(Debug, Clone)]
13139pub struct TypeExpression {
13140 pub r#type: Box<Type>,
13141 pub l_paren: Box<LParen>,
13142 pub expression: Box<Expression>,
13143 pub r_paren: Box<RParen>,
13144}
13145
13146#[allow(dead_code)]
13150#[derive(Debug, Clone)]
13151pub enum TypeModifier {
13152 Tri(TypeModifierTri),
13153 Signed(TypeModifierSigned),
13154 Defaul(TypeModifierDefaul),
13155}
13156
13157#[allow(dead_code)]
13161#[derive(Debug, Clone)]
13162pub struct TypeTerm {
13163 pub type_term: crate::veryl_token::Token, }
13165
13166#[allow(dead_code)]
13170#[derive(Debug, Clone)]
13171pub struct TypeToken {
13172 pub type_term: crate::veryl_token::Token,
13173 pub comments: Box<Comments>,
13174}
13175
13176#[allow(dead_code)]
13180#[derive(Debug, Clone)]
13181pub struct U16 {
13182 pub u16_token: crate::veryl_token::VerylToken,
13183}
13184
13185#[allow(dead_code)]
13189#[derive(Debug, Clone)]
13190pub struct U16Term {
13191 pub u16_term: crate::veryl_token::Token, }
13193
13194#[allow(dead_code)]
13198#[derive(Debug, Clone)]
13199pub struct U16Token {
13200 pub u16_term: crate::veryl_token::Token,
13201 pub comments: Box<Comments>,
13202}
13203
13204#[allow(dead_code)]
13208#[derive(Debug, Clone)]
13209pub struct U32 {
13210 pub u32_token: crate::veryl_token::VerylToken,
13211}
13212
13213#[allow(dead_code)]
13217#[derive(Debug, Clone)]
13218pub struct U32Term {
13219 pub u32_term: crate::veryl_token::Token, }
13221
13222#[allow(dead_code)]
13226#[derive(Debug, Clone)]
13227pub struct U32Token {
13228 pub u32_term: crate::veryl_token::Token,
13229 pub comments: Box<Comments>,
13230}
13231
13232#[allow(dead_code)]
13236#[derive(Debug, Clone)]
13237pub struct U64 {
13238 pub u64_token: crate::veryl_token::VerylToken,
13239}
13240
13241#[allow(dead_code)]
13245#[derive(Debug, Clone)]
13246pub struct U64Term {
13247 pub u64_term: crate::veryl_token::Token, }
13249
13250#[allow(dead_code)]
13254#[derive(Debug, Clone)]
13255pub struct U64Token {
13256 pub u64_term: crate::veryl_token::Token,
13257 pub comments: Box<Comments>,
13258}
13259
13260#[allow(dead_code)]
13264#[derive(Debug, Clone)]
13265pub struct U8 {
13266 pub u8_token: crate::veryl_token::VerylToken,
13267}
13268
13269#[allow(dead_code)]
13273#[derive(Debug, Clone)]
13274pub struct U8Term {
13275 pub u8_term: crate::veryl_token::Token, }
13277
13278#[allow(dead_code)]
13282#[derive(Debug, Clone)]
13283pub struct U8Token {
13284 pub u8_term: crate::veryl_token::Token,
13285 pub comments: Box<Comments>,
13286}
13287
13288#[allow(dead_code)]
13292#[derive(Debug, Clone)]
13293pub struct UnaryOperator {
13294 pub unary_operator_token: crate::veryl_token::VerylToken,
13295}
13296
13297#[allow(dead_code)]
13301#[derive(Debug, Clone)]
13302pub struct UnaryOperatorTerm {
13303 pub unary_operator_term: crate::veryl_token::Token, }
13305
13306#[allow(dead_code)]
13310#[derive(Debug, Clone)]
13311pub struct UnaryOperatorToken {
13312 pub unary_operator_term: crate::veryl_token::Token,
13313 pub comments: Box<Comments>,
13314}
13315
13316#[allow(dead_code)]
13320#[derive(Debug, Clone)]
13321pub struct Union {
13322 pub union_token: crate::veryl_token::VerylToken,
13323}
13324
13325#[allow(dead_code)]
13329#[derive(Debug, Clone)]
13330pub struct UnionTerm {
13331 pub union_term: crate::veryl_token::Token, }
13333
13334#[allow(dead_code)]
13338#[derive(Debug, Clone)]
13339pub struct UnionToken {
13340 pub union_term: crate::veryl_token::Token,
13341 pub comments: Box<Comments>,
13342}
13343
13344#[allow(dead_code)]
13348#[derive(Debug, Clone)]
13349pub struct Unsafe {
13350 pub unsafe_token: crate::veryl_token::VerylToken,
13351}
13352
13353#[allow(dead_code)]
13357#[derive(Debug, Clone)]
13358pub struct UnsafeBlock {
13359 pub r#unsafe: Box<Unsafe>,
13360 pub l_paren: Box<LParen>,
13361 pub identifier: Box<Identifier>,
13362 pub r_paren: Box<RParen>,
13363 pub l_brace: Box<LBrace>,
13364 pub unsafe_block_list: Vec<UnsafeBlockList>,
13365 pub r_brace: Box<RBrace>,
13366}
13367
13368#[allow(dead_code)]
13372#[derive(Debug, Clone)]
13373pub struct UnsafeBlockList {
13374 pub generate_group: Box<GenerateGroup>,
13375}
13376
13377#[allow(dead_code)]
13381#[derive(Debug, Clone)]
13382pub struct UnsafeTerm {
13383 pub unsafe_term: crate::veryl_token::Token, }
13385
13386#[allow(dead_code)]
13390#[derive(Debug, Clone)]
13391pub struct UnsafeToken {
13392 pub unsafe_term: crate::veryl_token::Token,
13393 pub comments: Box<Comments>,
13394}
13395
13396#[allow(dead_code)]
13400#[derive(Debug, Clone)]
13401pub struct UserDefinedType {
13402 pub scoped_identifier: Box<ScopedIdentifier>,
13403}
13404
13405#[allow(dead_code)]
13409#[derive(Debug, Clone)]
13410pub struct Var {
13411 pub var_token: crate::veryl_token::VerylToken,
13412}
13413
13414#[allow(dead_code)]
13418#[derive(Debug, Clone)]
13419pub struct VarDeclaration {
13420 pub var: Box<Var>,
13421 pub identifier: Box<Identifier>,
13422 pub colon: Box<Colon>,
13423 pub var_declaration_opt: Option<VarDeclarationOpt>,
13424 pub array_type: Box<ArrayType>,
13425 pub semicolon: Box<Semicolon>,
13426}
13427
13428#[allow(dead_code)]
13432#[derive(Debug, Clone)]
13433pub struct VarDeclarationOpt {
13434 pub clock_domain: Box<ClockDomain>,
13435}
13436
13437#[allow(dead_code)]
13441#[derive(Debug, Clone)]
13442pub struct VarTerm {
13443 pub var_term: crate::veryl_token::Token, }
13445
13446#[allow(dead_code)]
13450#[derive(Debug, Clone)]
13451pub struct VarToken {
13452 pub var_term: crate::veryl_token::Token,
13453 pub comments: Box<Comments>,
13454}
13455
13456#[allow(dead_code)]
13460#[derive(Debug, Clone)]
13461pub enum VariableType {
13462 Clock(VariableTypeClock),
13463 ClockPosedge(VariableTypeClockPosedge),
13464 ClockNegedge(VariableTypeClockNegedge),
13465 Reset(VariableTypeReset),
13466 ResetAsyncHigh(VariableTypeResetAsyncHigh),
13467 ResetAsyncLow(VariableTypeResetAsyncLow),
13468 ResetSyncHigh(VariableTypeResetSyncHigh),
13469 ResetSyncLow(VariableTypeResetSyncLow),
13470 Logic(VariableTypeLogic),
13471 Bit(VariableTypeBit),
13472}
13473
13474#[allow(dead_code)]
13478#[derive(Debug, Clone)]
13479pub struct Veryl {
13480 pub start: Box<Start>,
13481 pub veryl_list: Vec<VerylList>,
13482}
13483
13484#[allow(dead_code)]
13488#[derive(Debug, Clone)]
13489pub struct VerylList {
13490 pub description_group: Box<DescriptionGroup>,
13491}
13492
13493#[allow(dead_code)]
13497#[derive(Debug, Clone)]
13498pub struct Width {
13499 pub l_angle: Box<LAngle>,
13500 pub expression: Box<Expression>,
13501 pub width_list: Vec<WidthList>,
13502 pub r_angle: Box<RAngle>,
13503}
13504
13505#[allow(dead_code)]
13509#[derive(Debug, Clone)]
13510pub struct WidthList {
13511 pub comma: Box<Comma>,
13512 pub expression: Box<Expression>,
13513}
13514
13515#[allow(dead_code)]
13519#[derive(Debug, Clone)]
13520pub struct WithGenericArgument {
13521 pub colon_colon_l_angle: Box<ColonColonLAngle>,
13522 pub with_generic_argument_opt: Option<WithGenericArgumentOpt>,
13523 pub r_angle: Box<RAngle>,
13524}
13525
13526#[allow(dead_code)]
13530#[derive(Debug, Clone)]
13531pub enum WithGenericArgumentItem {
13532 GenericArgIdentifier(WithGenericArgumentItemGenericArgIdentifier),
13533 FixedType(WithGenericArgumentItemFixedType),
13534 Number(WithGenericArgumentItemNumber),
13535 BooleanLiteral(WithGenericArgumentItemBooleanLiteral),
13536}
13537
13538#[allow(dead_code)]
13542#[derive(Debug, Clone)]
13543pub struct WithGenericArgumentList {
13544 pub with_generic_argument_item: Box<WithGenericArgumentItem>,
13545 pub with_generic_argument_list_list: Vec<WithGenericArgumentListList>,
13546 pub with_generic_argument_list_opt: Option<WithGenericArgumentListOpt>,
13547}
13548
13549#[allow(dead_code)]
13553#[derive(Debug, Clone)]
13554pub struct WithGenericArgumentListList {
13555 pub comma: Box<Comma>,
13556 pub with_generic_argument_item: Box<WithGenericArgumentItem>,
13557}
13558
13559#[allow(dead_code)]
13563#[derive(Debug, Clone)]
13564pub struct WithGenericArgumentListOpt {
13565 pub comma: Box<Comma>,
13566}
13567
13568#[allow(dead_code)]
13572#[derive(Debug, Clone)]
13573pub struct WithGenericArgumentOpt {
13574 pub with_generic_argument_list: Box<WithGenericArgumentList>,
13575}
13576
13577#[allow(dead_code)]
13581#[derive(Debug, Clone)]
13582pub struct WithGenericParameter {
13583 pub colon_colon_l_angle: Box<ColonColonLAngle>,
13584 pub with_generic_parameter_list: Box<WithGenericParameterList>,
13585 pub r_angle: Box<RAngle>,
13586}
13587
13588#[allow(dead_code)]
13592#[derive(Debug, Clone)]
13593pub struct WithGenericParameterItem {
13594 pub identifier: Box<Identifier>,
13595 pub colon: Box<Colon>,
13596 pub generic_bound: Box<GenericBound>,
13597 pub with_generic_parameter_item_opt: Option<WithGenericParameterItemOpt>,
13598}
13599
13600#[allow(dead_code)]
13604#[derive(Debug, Clone)]
13605pub struct WithGenericParameterItemOpt {
13606 pub equ: Box<Equ>,
13607 pub with_generic_argument_item: Box<WithGenericArgumentItem>,
13608}
13609
13610#[allow(dead_code)]
13614#[derive(Debug, Clone)]
13615pub struct WithGenericParameterList {
13616 pub with_generic_parameter_item: Box<WithGenericParameterItem>,
13617 pub with_generic_parameter_list_list: Vec<WithGenericParameterListList>,
13618 pub with_generic_parameter_list_opt: Option<WithGenericParameterListOpt>,
13619}
13620
13621#[allow(dead_code)]
13625#[derive(Debug, Clone)]
13626pub struct WithGenericParameterListList {
13627 pub comma: Box<Comma>,
13628 pub with_generic_parameter_item: Box<WithGenericParameterItem>,
13629}
13630
13631#[allow(dead_code)]
13635#[derive(Debug, Clone)]
13636pub struct WithGenericParameterListOpt {
13637 pub comma: Box<Comma>,
13638}
13639
13640#[allow(dead_code)]
13644#[derive(Debug, Clone)]
13645pub struct WithParameter {
13646 pub hash: Box<Hash>,
13647 pub l_paren: Box<LParen>,
13648 pub with_parameter_opt: Option<WithParameterOpt>,
13649 pub r_paren: Box<RParen>,
13650}
13651
13652#[allow(dead_code)]
13656#[derive(Debug, Clone)]
13657pub struct WithParameterGroup {
13658 pub with_parameter_group_list: Vec<WithParameterGroupList>,
13659 pub with_parameter_group_group: Box<WithParameterGroupGroup>,
13660}
13661
13662#[allow(dead_code)]
13666#[derive(Debug, Clone)]
13667pub enum WithParameterGroupGroup {
13668 LBraceWithParameterListRBrace(WithParameterGroupGroupLBraceWithParameterListRBrace),
13669 WithParameterItem(WithParameterGroupGroupWithParameterItem),
13670}
13671
13672#[allow(dead_code)]
13676#[derive(Debug, Clone)]
13677pub struct WithParameterGroupList {
13678 pub attribute: Box<Attribute>,
13679}
13680
13681#[allow(dead_code)]
13685#[derive(Debug, Clone)]
13686pub struct WithParameterItem {
13687 pub with_parameter_item_group: Box<WithParameterItemGroup>,
13688 pub identifier: Box<Identifier>,
13689 pub colon: Box<Colon>,
13690 pub with_parameter_item_group0: Box<WithParameterItemGroup0>,
13691 pub with_parameter_item_opt: Option<WithParameterItemOpt>,
13692}
13693
13694#[allow(dead_code)]
13698#[derive(Debug, Clone)]
13699pub enum WithParameterItemGroup {
13700 Param(WithParameterItemGroupParam),
13701 Const(WithParameterItemGroupConst),
13702}
13703
13704#[allow(dead_code)]
13708#[derive(Debug, Clone)]
13709pub enum WithParameterItemGroup0 {
13710 ArrayType(WithParameterItemGroup0ArrayType),
13711 Type(WithParameterItemGroup0Type),
13712}
13713
13714#[allow(dead_code)]
13718#[derive(Debug, Clone)]
13719pub struct WithParameterItemOpt {
13720 pub equ: Box<Equ>,
13721 pub expression: Box<Expression>,
13722}
13723
13724#[allow(dead_code)]
13728#[derive(Debug, Clone)]
13729pub struct WithParameterList {
13730 pub with_parameter_group: Box<WithParameterGroup>,
13731 pub with_parameter_list_list: Vec<WithParameterListList>,
13732 pub with_parameter_list_opt: Option<WithParameterListOpt>,
13733}
13734
13735#[allow(dead_code)]
13739#[derive(Debug, Clone)]
13740pub struct WithParameterListList {
13741 pub comma: Box<Comma>,
13742 pub with_parameter_group: Box<WithParameterGroup>,
13743}
13744
13745#[allow(dead_code)]
13749#[derive(Debug, Clone)]
13750pub struct WithParameterListOpt {
13751 pub comma: Box<Comma>,
13752}
13753
13754#[allow(dead_code)]
13758#[derive(Debug, Clone)]
13759pub struct WithParameterOpt {
13760 pub with_parameter_list: Box<WithParameterList>,
13761}
13762
13763#[allow(dead_code)]
13769#[derive(Debug, Clone)]
13770pub enum ASTType {
13771 Alias(Alias),
13772 AliasDeclaration(AliasDeclaration),
13773 AliasDeclarationGroup(AliasDeclarationGroup),
13774 AliasTerm(AliasTerm),
13775 AliasToken(AliasToken),
13776 AllBit(AllBit),
13777 AllBitTerm(AllBitTerm),
13778 AllBitToken(AllBitToken),
13779 AlwaysComb(AlwaysComb),
13780 AlwaysCombDeclaration(AlwaysCombDeclaration),
13781 AlwaysCombTerm(AlwaysCombTerm),
13782 AlwaysCombToken(AlwaysCombToken),
13783 AlwaysFf(AlwaysFf),
13784 AlwaysFfClock(AlwaysFfClock),
13785 AlwaysFfDeclaration(AlwaysFfDeclaration),
13786 AlwaysFfDeclarationOpt(Option<AlwaysFfDeclarationOpt>),
13787 AlwaysFfEventList(AlwaysFfEventList),
13788 AlwaysFfEventListOpt(Option<AlwaysFfEventListOpt>),
13789 AlwaysFfReset(AlwaysFfReset),
13790 AlwaysFfTerm(AlwaysFfTerm),
13791 AlwaysFfToken(AlwaysFfToken),
13792 Any(Any),
13793 AnyTerm(AnyTerm),
13794 AnyToken(AnyToken),
13795 ArgumentExpression(ArgumentExpression),
13796 ArgumentItem(ArgumentItem),
13797 ArgumentItemOpt(Option<ArgumentItemOpt>),
13798 ArgumentList(ArgumentList),
13799 ArgumentListList(Vec<ArgumentListList>),
13800 ArgumentListOpt(Option<ArgumentListOpt>),
13801 Array(Array),
13802 ArrayList(Vec<ArrayList>),
13803 ArrayLiteralItem(ArrayLiteralItem),
13804 ArrayLiteralItemGroup(ArrayLiteralItemGroup),
13805 ArrayLiteralItemOpt(Option<ArrayLiteralItemOpt>),
13806 ArrayLiteralList(ArrayLiteralList),
13807 ArrayLiteralListList(Vec<ArrayLiteralListList>),
13808 ArrayLiteralListOpt(Option<ArrayLiteralListOpt>),
13809 ArrayType(ArrayType),
13810 ArrayTypeOpt(Option<ArrayTypeOpt>),
13811 As(As),
13812 AsTerm(AsTerm),
13813 AsToken(AsToken),
13814 Assign(Assign),
13815 AssignConcatenationItem(AssignConcatenationItem),
13816 AssignConcatenationList(AssignConcatenationList),
13817 AssignConcatenationListList(Vec<AssignConcatenationListList>),
13818 AssignConcatenationListOpt(Option<AssignConcatenationListOpt>),
13819 AssignDeclaration(AssignDeclaration),
13820 AssignDestination(AssignDestination),
13821 AssignTerm(AssignTerm),
13822 AssignToken(AssignToken),
13823 Assignment(Assignment),
13824 AssignmentGroup(AssignmentGroup),
13825 AssignmentOperator(AssignmentOperator),
13826 AssignmentOperatorTerm(AssignmentOperatorTerm),
13827 AssignmentOperatorToken(AssignmentOperatorToken),
13828 Attribute(Attribute),
13829 AttributeItem(AttributeItem),
13830 AttributeList(AttributeList),
13831 AttributeListList(Vec<AttributeListList>),
13832 AttributeListOpt(Option<AttributeListOpt>),
13833 AttributeOpt(Option<AttributeOpt>),
13834 BBool(BBool),
13835 BBoolTerm(BBoolTerm),
13836 BBoolToken(BBoolToken),
13837 BaseLess(BaseLess),
13838 BaseLessTerm(BaseLessTerm),
13839 BaseLessToken(BaseLessToken),
13840 Based(Based),
13841 BasedTerm(BasedTerm),
13842 BasedToken(BasedToken),
13843 Bind(Bind),
13844 BindDeclaration(BindDeclaration),
13845 BindTerm(BindTerm),
13846 BindToken(BindToken),
13847 Bit(Bit),
13848 BitTerm(BitTerm),
13849 BitToken(BitToken),
13850 Block(Block),
13851 BlockTerm(BlockTerm),
13852 BlockToken(BlockToken),
13853 BooleanLiteral(BooleanLiteral),
13854 Break(Break),
13855 BreakStatement(BreakStatement),
13856 BreakTerm(BreakTerm),
13857 BreakToken(BreakToken),
13858 Case(Case),
13859 CaseCondition(CaseCondition),
13860 CaseConditionList(Vec<CaseConditionList>),
13861 CaseExpression(CaseExpression),
13862 CaseExpressionList(Vec<CaseExpressionList>),
13863 CaseExpressionOpt(Option<CaseExpressionOpt>),
13864 CaseItem(CaseItem),
13865 CaseItemGroup(CaseItemGroup),
13866 CaseItemGroup0(CaseItemGroup0),
13867 CaseStatement(CaseStatement),
13868 CaseStatementList(Vec<CaseStatementList>),
13869 CaseTerm(CaseTerm),
13870 CaseToken(CaseToken),
13871 CastingType(CastingType),
13872 Clock(Clock),
13873 ClockDomain(ClockDomain),
13874 ClockNegedge(ClockNegedge),
13875 ClockNegedgeTerm(ClockNegedgeTerm),
13876 ClockNegedgeToken(ClockNegedgeToken),
13877 ClockPosedge(ClockPosedge),
13878 ClockPosedgeTerm(ClockPosedgeTerm),
13879 ClockPosedgeToken(ClockPosedgeToken),
13880 ClockTerm(ClockTerm),
13881 ClockToken(ClockToken),
13882 Colon(Colon),
13883 ColonColon(ColonColon),
13884 ColonColonLAngle(ColonColonLAngle),
13885 ColonColonLAngleTerm(ColonColonLAngleTerm),
13886 ColonColonLAngleToken(ColonColonLAngleToken),
13887 ColonColonTerm(ColonColonTerm),
13888 ColonColonToken(ColonColonToken),
13889 ColonTerm(ColonTerm),
13890 ColonToken(ColonToken),
13891 Comma(Comma),
13892 CommaTerm(CommaTerm),
13893 CommaToken(CommaToken),
13894 Comments(Comments),
13895 CommentsOpt(Option<CommentsOpt>),
13896 CommentsTerm(CommentsTerm),
13897 ComponentInstantiation(ComponentInstantiation),
13898 ComponentInstantiationOpt(Option<ComponentInstantiationOpt>),
13899 ComponentInstantiationOpt0(Option<ComponentInstantiationOpt0>),
13900 ComponentInstantiationOpt1(Option<ComponentInstantiationOpt1>),
13901 ComponentInstantiationOpt2(Option<ComponentInstantiationOpt2>),
13902 ConcatenationAssignment(ConcatenationAssignment),
13903 ConcatenationItem(ConcatenationItem),
13904 ConcatenationItemOpt(Option<ConcatenationItemOpt>),
13905 ConcatenationList(ConcatenationList),
13906 ConcatenationListList(Vec<ConcatenationListList>),
13907 ConcatenationListOpt(Option<ConcatenationListOpt>),
13908 Connect(Connect),
13909 ConnectDeclaration(ConnectDeclaration),
13910 ConnectTerm(ConnectTerm),
13911 ConnectToken(ConnectToken),
13912 Const(Const),
13913 ConstDeclaration(ConstDeclaration),
13914 ConstDeclarationGroup(ConstDeclarationGroup),
13915 ConstTerm(ConstTerm),
13916 ConstToken(ConstToken),
13917 Converse(Converse),
13918 ConverseTerm(ConverseTerm),
13919 ConverseToken(ConverseToken),
13920 Defaul(Defaul),
13921 DefaultTerm(DefaultTerm),
13922 DefaultToken(DefaultToken),
13923 DescriptionGroup(DescriptionGroup),
13924 DescriptionGroupGroup(DescriptionGroupGroup),
13925 DescriptionGroupGroupList(Vec<DescriptionGroupGroupList>),
13926 DescriptionGroupList(Vec<DescriptionGroupList>),
13927 DescriptionItem(DescriptionItem),
13928 DescriptionItemOpt(Option<DescriptionItemOpt>),
13929 DiamondOperator(DiamondOperator),
13930 DiamondOperatorTerm(DiamondOperatorTerm),
13931 DiamondOperatorToken(DiamondOperatorToken),
13932 Direction(Direction),
13933 DollarIdentifier(DollarIdentifier),
13934 DollarIdentifierTerm(DollarIdentifierTerm),
13935 DollarIdentifierToken(DollarIdentifierToken),
13936 Dot(Dot),
13937 DotDot(DotDot),
13938 DotDotEqu(DotDotEqu),
13939 DotDotEquTerm(DotDotEquTerm),
13940 DotDotEquToken(DotDotEquToken),
13941 DotDotTerm(DotDotTerm),
13942 DotDotToken(DotDotToken),
13943 DotTerm(DotTerm),
13944 DotToken(DotToken),
13945 Else(Else),
13946 ElseTerm(ElseTerm),
13947 ElseToken(ElseToken),
13948 Embed(Embed),
13949 EmbedContent(EmbedContent),
13950 EmbedContentList(Vec<EmbedContentList>),
13951 EmbedDeclaration(EmbedDeclaration),
13952 EmbedItem(EmbedItem),
13953 EmbedItemList(Vec<EmbedItemList>),
13954 EmbedLBrace(EmbedLBrace),
13955 EmbedLBraceToken(EmbedLBraceToken),
13956 EmbedRBrace(EmbedRBrace),
13957 EmbedRBraceToken(EmbedRBraceToken),
13958 EmbedScopedIdentifier(EmbedScopedIdentifier),
13959 EmbedTerm(EmbedTerm),
13960 EmbedToken(EmbedToken),
13961 Enum(Enum),
13962 EnumDeclaration(EnumDeclaration),
13963 EnumDeclarationOpt(Option<EnumDeclarationOpt>),
13964 EnumGroup(EnumGroup),
13965 EnumGroupGroup(EnumGroupGroup),
13966 EnumGroupList(Vec<EnumGroupList>),
13967 EnumItem(EnumItem),
13968 EnumItemOpt(Option<EnumItemOpt>),
13969 EnumList(EnumList),
13970 EnumListList(Vec<EnumListList>),
13971 EnumListOpt(Option<EnumListOpt>),
13972 EnumTerm(EnumTerm),
13973 EnumToken(EnumToken),
13974 Equ(Equ),
13975 EquTerm(EquTerm),
13976 EquToken(EquToken),
13977 EscapedLBrace(EscapedLBrace),
13978 EscapedLBraceTerm(EscapedLBraceTerm),
13979 EscapedLBraceToken(EscapedLBraceToken),
13980 EscapedRBrace(EscapedRBrace),
13981 EscapedRBraceTerm(EscapedRBraceTerm),
13982 EscapedRBraceToken(EscapedRBraceToken),
13983 Exponent(Exponent),
13984 ExponentTerm(ExponentTerm),
13985 ExponentToken(ExponentToken),
13986 Expression(Expression),
13987 Expression01(Expression01),
13988 Expression01List(Vec<Expression01List>),
13989 Expression01Op(Expression01Op),
13990 Expression02(Expression02),
13991 Expression02List(Vec<Expression02List>),
13992 Expression02Op(Expression02Op),
13993 Expression02Opt(Option<Expression02Opt>),
13994 ExpressionIdentifier(ExpressionIdentifier),
13995 ExpressionIdentifierList(Vec<ExpressionIdentifierList>),
13996 ExpressionIdentifierList0(Vec<ExpressionIdentifierList0>),
13997 ExpressionIdentifierList0List(Vec<ExpressionIdentifierList0List>),
13998 ExpressionIdentifierOpt(Option<ExpressionIdentifierOpt>),
13999 F32(F32),
14000 F32Term(F32Term),
14001 F32Token(F32Token),
14002 F64(F64),
14003 F64Term(F64Term),
14004 F64Token(F64Token),
14005 Factor(Factor),
14006 FactorGroup(FactorGroup),
14007 FactorType(FactorType),
14008 FactorTypeFactor(FactorTypeFactor),
14009 FactorTypeFactorList(Vec<FactorTypeFactorList>),
14010 FactorTypeGroup(FactorTypeGroup),
14011 FactorTypeOpt(Option<FactorTypeOpt>),
14012 False(False),
14013 FalseTerm(FalseTerm),
14014 FalseToken(FalseToken),
14015 Final(Final),
14016 FinalDeclaration(FinalDeclaration),
14017 FinalTerm(FinalTerm),
14018 FinalToken(FinalToken),
14019 FixedPoint(FixedPoint),
14020 FixedPointTerm(FixedPointTerm),
14021 FixedPointToken(FixedPointToken),
14022 FixedType(FixedType),
14023 For(For),
14024 ForStatement(ForStatement),
14025 ForStatementOpt(Option<ForStatementOpt>),
14026 ForStatementOpt0(Option<ForStatementOpt0>),
14027 ForTerm(ForTerm),
14028 ForToken(ForToken),
14029 Function(Function),
14030 FunctionCall(FunctionCall),
14031 FunctionCallOpt(Option<FunctionCallOpt>),
14032 FunctionDeclaration(FunctionDeclaration),
14033 FunctionDeclarationOpt(Option<FunctionDeclarationOpt>),
14034 FunctionDeclarationOpt0(Option<FunctionDeclarationOpt0>),
14035 FunctionDeclarationOpt1(Option<FunctionDeclarationOpt1>),
14036 FunctionTerm(FunctionTerm),
14037 FunctionToken(FunctionToken),
14038 GenerateBlockDeclaration(GenerateBlockDeclaration),
14039 GenerateForDeclaration(GenerateForDeclaration),
14040 GenerateForDeclarationOpt(Option<GenerateForDeclarationOpt>),
14041 GenerateForDeclarationOpt0(Option<GenerateForDeclarationOpt0>),
14042 GenerateGroup(GenerateGroup),
14043 GenerateGroupGroup(GenerateGroupGroup),
14044 GenerateGroupGroupList(Vec<GenerateGroupGroupList>),
14045 GenerateGroupList(Vec<GenerateGroupList>),
14046 GenerateIfDeclaration(GenerateIfDeclaration),
14047 GenerateIfDeclarationList(Vec<GenerateIfDeclarationList>),
14048 GenerateIfDeclarationOpt(Option<GenerateIfDeclarationOpt>),
14049 GenerateItem(GenerateItem),
14050 GenerateNamedBlock(GenerateNamedBlock),
14051 GenerateNamedBlockList(Vec<GenerateNamedBlockList>),
14052 GenerateOptionalNamedBlock(GenerateOptionalNamedBlock),
14053 GenerateOptionalNamedBlockList(Vec<GenerateOptionalNamedBlockList>),
14054 GenerateOptionalNamedBlockOpt(Option<GenerateOptionalNamedBlockOpt>),
14055 GenericArgIdentifier(GenericArgIdentifier),
14056 GenericArgIdentifierList(Vec<GenericArgIdentifierList>),
14057 GenericBound(GenericBound),
14058 GenericProtoBound(GenericProtoBound),
14059 Hash(Hash),
14060 HashLBracket(HashLBracket),
14061 HashLBracketTerm(HashLBracketTerm),
14062 HashLBracketToken(HashLBracketToken),
14063 HashTerm(HashTerm),
14064 HashToken(HashToken),
14065 HierarchicalIdentifier(HierarchicalIdentifier),
14066 HierarchicalIdentifierList(Vec<HierarchicalIdentifierList>),
14067 HierarchicalIdentifierList0(Vec<HierarchicalIdentifierList0>),
14068 HierarchicalIdentifierList0List(Vec<HierarchicalIdentifierList0List>),
14069 I16(I16),
14070 I16Term(I16Term),
14071 I16Token(I16Token),
14072 I32(I32),
14073 I32Term(I32Term),
14074 I32Token(I32Token),
14075 I64(I64),
14076 I64Term(I64Term),
14077 I64Token(I64Token),
14078 I8(I8),
14079 I8Term(I8Term),
14080 I8Token(I8Token),
14081 Identifier(Identifier),
14082 IdentifierFactor(IdentifierFactor),
14083 IdentifierFactorOpt(Option<IdentifierFactorOpt>),
14084 IdentifierFactorOptGroup(IdentifierFactorOptGroup),
14085 IdentifierStatement(IdentifierStatement),
14086 IdentifierStatementGroup(IdentifierStatementGroup),
14087 IdentifierTerm(IdentifierTerm),
14088 IdentifierToken(IdentifierToken),
14089 If(If),
14090 IfExpression(IfExpression),
14091 IfExpressionList(Vec<IfExpressionList>),
14092 IfReset(IfReset),
14093 IfResetStatement(IfResetStatement),
14094 IfResetStatementList(Vec<IfResetStatementList>),
14095 IfResetStatementOpt(Option<IfResetStatementOpt>),
14096 IfResetTerm(IfResetTerm),
14097 IfResetToken(IfResetToken),
14098 IfStatement(IfStatement),
14099 IfStatementList(Vec<IfStatementList>),
14100 IfStatementOpt(Option<IfStatementOpt>),
14101 IfTerm(IfTerm),
14102 IfToken(IfToken),
14103 Import(Import),
14104 ImportDeclaration(ImportDeclaration),
14105 ImportDeclarationOpt(Option<ImportDeclarationOpt>),
14106 ImportTerm(ImportTerm),
14107 ImportToken(ImportToken),
14108 In(In),
14109 InTerm(InTerm),
14110 InToken(InToken),
14111 Include(Include),
14112 IncludeDeclaration(IncludeDeclaration),
14113 IncludeTerm(IncludeTerm),
14114 IncludeToken(IncludeToken),
14115 Initial(Initial),
14116 InitialDeclaration(InitialDeclaration),
14117 InitialTerm(InitialTerm),
14118 InitialToken(InitialToken),
14119 Inout(Inout),
14120 InoutTerm(InoutTerm),
14121 InoutToken(InoutToken),
14122 Input(Input),
14123 InputTerm(InputTerm),
14124 InputToken(InputToken),
14125 Inside(Inside),
14126 InsideExpression(InsideExpression),
14127 InsideTerm(InsideTerm),
14128 InsideToken(InsideToken),
14129 Inst(Inst),
14130 InstDeclaration(InstDeclaration),
14131 InstParameter(InstParameter),
14132 InstParameterGroup(InstParameterGroup),
14133 InstParameterGroupGroup(InstParameterGroupGroup),
14134 InstParameterGroupList(Vec<InstParameterGroupList>),
14135 InstParameterItem(InstParameterItem),
14136 InstParameterItemOpt(Option<InstParameterItemOpt>),
14137 InstParameterList(InstParameterList),
14138 InstParameterListList(Vec<InstParameterListList>),
14139 InstParameterListOpt(Option<InstParameterListOpt>),
14140 InstParameterOpt(Option<InstParameterOpt>),
14141 InstPort(InstPort),
14142 InstPortGroup(InstPortGroup),
14143 InstPortGroupGroup(InstPortGroupGroup),
14144 InstPortGroupList(Vec<InstPortGroupList>),
14145 InstPortItem(InstPortItem),
14146 InstPortItemOpt(Option<InstPortItemOpt>),
14147 InstPortList(InstPortList),
14148 InstPortListList(Vec<InstPortListList>),
14149 InstPortListOpt(Option<InstPortListOpt>),
14150 InstPortOpt(Option<InstPortOpt>),
14151 InstTerm(InstTerm),
14152 InstToken(InstToken),
14153 IntegralNumber(IntegralNumber),
14154 Interface(Interface),
14155 InterfaceDeclaration(InterfaceDeclaration),
14156 InterfaceDeclarationList(Vec<InterfaceDeclarationList>),
14157 InterfaceDeclarationOpt(Option<InterfaceDeclarationOpt>),
14158 InterfaceDeclarationOpt0(Option<InterfaceDeclarationOpt0>),
14159 InterfaceDeclarationOpt1(Option<InterfaceDeclarationOpt1>),
14160 InterfaceGroup(InterfaceGroup),
14161 InterfaceGroupGroup(InterfaceGroupGroup),
14162 InterfaceGroupGroupList(Vec<InterfaceGroupGroupList>),
14163 InterfaceGroupList(Vec<InterfaceGroupList>),
14164 InterfaceItem(InterfaceItem),
14165 InterfaceTerm(InterfaceTerm),
14166 InterfaceToken(InterfaceToken),
14167 LAngle(LAngle),
14168 LAngleTerm(LAngleTerm),
14169 LAngleToken(LAngleToken),
14170 LBool(LBool),
14171 LBoolTerm(LBoolTerm),
14172 LBoolToken(LBoolToken),
14173 LBrace(LBrace),
14174 LBraceTerm(LBraceTerm),
14175 LBraceToken(LBraceToken),
14176 LBracket(LBracket),
14177 LBracketTerm(LBracketTerm),
14178 LBracketToken(LBracketToken),
14179 LParen(LParen),
14180 LParenTerm(LParenTerm),
14181 LParenToken(LParenToken),
14182 LTMinus(LTMinus),
14183 LTMinusTerm(LTMinusTerm),
14184 LTMinusToken(LTMinusToken),
14185 Let(Let),
14186 LetDeclaration(LetDeclaration),
14187 LetDeclarationOpt(Option<LetDeclarationOpt>),
14188 LetStatement(LetStatement),
14189 LetStatementOpt(Option<LetStatementOpt>),
14190 LetTerm(LetTerm),
14191 LetToken(LetToken),
14192 Logic(Logic),
14193 LogicTerm(LogicTerm),
14194 LogicToken(LogicToken),
14195 Lsb(Lsb),
14196 LsbTerm(LsbTerm),
14197 LsbToken(LsbToken),
14198 MinusColon(MinusColon),
14199 MinusColonTerm(MinusColonTerm),
14200 MinusColonToken(MinusColonToken),
14201 MinusGT(MinusGT),
14202 MinusGTTerm(MinusGTTerm),
14203 MinusGTToken(MinusGTToken),
14204 Modport(Modport),
14205 ModportDeclaration(ModportDeclaration),
14206 ModportDeclarationOpt(Option<ModportDeclarationOpt>),
14207 ModportDeclarationOpt0(Option<ModportDeclarationOpt0>),
14208 ModportDefault(ModportDefault),
14209 ModportDefaultList(ModportDefaultList),
14210 ModportDefaultListList(Vec<ModportDefaultListList>),
14211 ModportDefaultListOpt(Option<ModportDefaultListOpt>),
14212 ModportGroup(ModportGroup),
14213 ModportGroupGroup(ModportGroupGroup),
14214 ModportGroupList(Vec<ModportGroupList>),
14215 ModportItem(ModportItem),
14216 ModportList(ModportList),
14217 ModportListList(Vec<ModportListList>),
14218 ModportListOpt(Option<ModportListOpt>),
14219 ModportTerm(ModportTerm),
14220 ModportToken(ModportToken),
14221 Module(Module),
14222 ModuleDeclaration(ModuleDeclaration),
14223 ModuleDeclarationList(Vec<ModuleDeclarationList>),
14224 ModuleDeclarationOpt(Option<ModuleDeclarationOpt>),
14225 ModuleDeclarationOpt0(Option<ModuleDeclarationOpt0>),
14226 ModuleDeclarationOpt1(Option<ModuleDeclarationOpt1>),
14227 ModuleDeclarationOpt2(Option<ModuleDeclarationOpt2>),
14228 ModuleGroup(ModuleGroup),
14229 ModuleGroupGroup(ModuleGroupGroup),
14230 ModuleGroupGroupList(Vec<ModuleGroupGroupList>),
14231 ModuleGroupList(Vec<ModuleGroupList>),
14232 ModuleItem(ModuleItem),
14233 ModuleTerm(ModuleTerm),
14234 ModuleToken(ModuleToken),
14235 Msb(Msb),
14236 MsbTerm(MsbTerm),
14237 MsbToken(MsbToken),
14238 Number(Number),
14239 Operator01(Operator01),
14240 Operator01Term(Operator01Term),
14241 Operator01Token(Operator01Token),
14242 Operator02(Operator02),
14243 Operator02Term(Operator02Term),
14244 Operator02Token(Operator02Token),
14245 Operator03(Operator03),
14246 Operator03Term(Operator03Term),
14247 Operator03Token(Operator03Token),
14248 Operator04(Operator04),
14249 Operator04Term(Operator04Term),
14250 Operator04Token(Operator04Token),
14251 Operator05(Operator05),
14252 Operator05Term(Operator05Term),
14253 Operator05Token(Operator05Token),
14254 Operator06(Operator06),
14255 Operator06Term(Operator06Term),
14256 Operator06Token(Operator06Token),
14257 Operator07(Operator07),
14258 Operator07Term(Operator07Term),
14259 Operator07Token(Operator07Token),
14260 Operator08(Operator08),
14261 Operator08Term(Operator08Term),
14262 Operator08Token(Operator08Token),
14263 Output(Output),
14264 OutputTerm(OutputTerm),
14265 OutputToken(OutputToken),
14266 Outside(Outside),
14267 OutsideExpression(OutsideExpression),
14268 OutsideTerm(OutsideTerm),
14269 OutsideToken(OutsideToken),
14270 P16(P16),
14271 P16Term(P16Term),
14272 P16Token(P16Token),
14273 P32(P32),
14274 P32Term(P32Term),
14275 P32Token(P32Token),
14276 P64(P64),
14277 P64Term(P64Term),
14278 P64Token(P64Token),
14279 P8(P8),
14280 P8Term(P8Term),
14281 P8Token(P8Token),
14282 Package(Package),
14283 PackageDeclaration(PackageDeclaration),
14284 PackageDeclarationList(Vec<PackageDeclarationList>),
14285 PackageDeclarationOpt(Option<PackageDeclarationOpt>),
14286 PackageDeclarationOpt0(Option<PackageDeclarationOpt0>),
14287 PackageGroup(PackageGroup),
14288 PackageGroupGroup(PackageGroupGroup),
14289 PackageGroupGroupList(Vec<PackageGroupGroupList>),
14290 PackageGroupList(Vec<PackageGroupList>),
14291 PackageItem(PackageItem),
14292 PackageTerm(PackageTerm),
14293 PackageToken(PackageToken),
14294 Param(Param),
14295 ParamTerm(ParamTerm),
14296 ParamToken(ParamToken),
14297 PlusColon(PlusColon),
14298 PlusColonTerm(PlusColonTerm),
14299 PlusColonToken(PlusColonToken),
14300 PortDeclaration(PortDeclaration),
14301 PortDeclarationGroup(PortDeclarationGroup),
14302 PortDeclarationGroupGroup(PortDeclarationGroupGroup),
14303 PortDeclarationGroupList(Vec<PortDeclarationGroupList>),
14304 PortDeclarationItem(PortDeclarationItem),
14305 PortDeclarationItemGroup(PortDeclarationItemGroup),
14306 PortDeclarationList(PortDeclarationList),
14307 PortDeclarationListList(Vec<PortDeclarationListList>),
14308 PortDeclarationListOpt(Option<PortDeclarationListOpt>),
14309 PortDeclarationOpt(Option<PortDeclarationOpt>),
14310 PortDefaultValue(PortDefaultValue),
14311 PortTypeAbstract(PortTypeAbstract),
14312 PortTypeAbstractOpt(Option<PortTypeAbstractOpt>),
14313 PortTypeAbstractOpt0(Option<PortTypeAbstractOpt0>),
14314 PortTypeAbstractOpt1(Option<PortTypeAbstractOpt1>),
14315 PortTypeConcrete(PortTypeConcrete),
14316 PortTypeConcreteOpt(Option<PortTypeConcreteOpt>),
14317 PortTypeConcreteOpt0(Option<PortTypeConcreteOpt0>),
14318 Proto(Proto),
14319 ProtoAliasDeclaration(ProtoAliasDeclaration),
14320 ProtoAliasDeclarationGroup(ProtoAliasDeclarationGroup),
14321 ProtoConstDeclaration(ProtoConstDeclaration),
14322 ProtoConstDeclarationGroup(ProtoConstDeclarationGroup),
14323 ProtoDeclaration(ProtoDeclaration),
14324 ProtoDeclarationGroup(ProtoDeclarationGroup),
14325 ProtoFunctionDeclaration(ProtoFunctionDeclaration),
14326 ProtoFunctionDeclarationOpt(Option<ProtoFunctionDeclarationOpt>),
14327 ProtoFunctionDeclarationOpt0(Option<ProtoFunctionDeclarationOpt0>),
14328 ProtoFunctionDeclarationOpt1(Option<ProtoFunctionDeclarationOpt1>),
14329 ProtoInterfaceDeclaration(ProtoInterfaceDeclaration),
14330 ProtoInterfaceDeclarationList(Vec<ProtoInterfaceDeclarationList>),
14331 ProtoInterfaceDeclarationOpt(Option<ProtoInterfaceDeclarationOpt>),
14332 ProtoInterfaceItem(ProtoInterfaceItem),
14333 ProtoModuleDeclaration(ProtoModuleDeclaration),
14334 ProtoModuleDeclarationOpt(Option<ProtoModuleDeclarationOpt>),
14335 ProtoModuleDeclarationOpt0(Option<ProtoModuleDeclarationOpt0>),
14336 ProtoPacakgeItem(ProtoPacakgeItem),
14337 ProtoPackageDeclaration(ProtoPackageDeclaration),
14338 ProtoPackageDeclarationList(Vec<ProtoPackageDeclarationList>),
14339 ProtoTerm(ProtoTerm),
14340 ProtoToken(ProtoToken),
14341 ProtoTypeDefDeclaration(ProtoTypeDefDeclaration),
14342 ProtoTypeDefDeclarationOpt(Option<ProtoTypeDefDeclarationOpt>),
14343 Pub(Pub),
14344 PubTerm(PubTerm),
14345 PubToken(PubToken),
14346 PublicDescriptionItem(PublicDescriptionItem),
14347 Question(Question),
14348 QuestionTerm(QuestionTerm),
14349 QuestionToken(QuestionToken),
14350 Quote(Quote),
14351 QuoteLBrace(QuoteLBrace),
14352 QuoteLBraceTerm(QuoteLBraceTerm),
14353 QuoteLBraceToken(QuoteLBraceToken),
14354 QuoteTerm(QuoteTerm),
14355 QuoteToken(QuoteToken),
14356 RAngle(RAngle),
14357 RAngleTerm(RAngleTerm),
14358 RAngleToken(RAngleToken),
14359 RBrace(RBrace),
14360 RBraceTerm(RBraceTerm),
14361 RBraceToken(RBraceToken),
14362 RBracket(RBracket),
14363 RBracketTerm(RBracketTerm),
14364 RBracketToken(RBracketToken),
14365 RParen(RParen),
14366 RParenTerm(RParenTerm),
14367 RParenToken(RParenToken),
14368 Range(Range),
14369 RangeItem(RangeItem),
14370 RangeList(RangeList),
14371 RangeListList(Vec<RangeListList>),
14372 RangeListOpt(Option<RangeListOpt>),
14373 RangeOperator(RangeOperator),
14374 RangeOpt(Option<RangeOpt>),
14375 RealNumber(RealNumber),
14376 Repeat(Repeat),
14377 RepeatTerm(RepeatTerm),
14378 RepeatToken(RepeatToken),
14379 Reset(Reset),
14380 ResetAsyncHigh(ResetAsyncHigh),
14381 ResetAsyncHighTerm(ResetAsyncHighTerm),
14382 ResetAsyncHighToken(ResetAsyncHighToken),
14383 ResetAsyncLow(ResetAsyncLow),
14384 ResetAsyncLowTerm(ResetAsyncLowTerm),
14385 ResetAsyncLowToken(ResetAsyncLowToken),
14386 ResetSyncHigh(ResetSyncHigh),
14387 ResetSyncHighTerm(ResetSyncHighTerm),
14388 ResetSyncHighToken(ResetSyncHighToken),
14389 ResetSyncLow(ResetSyncLow),
14390 ResetSyncLowTerm(ResetSyncLowTerm),
14391 ResetSyncLowToken(ResetSyncLowToken),
14392 ResetTerm(ResetTerm),
14393 ResetToken(ResetToken),
14394 Return(Return),
14395 ReturnStatement(ReturnStatement),
14396 ReturnTerm(ReturnTerm),
14397 ReturnToken(ReturnToken),
14398 Rev(Rev),
14399 RevTerm(RevTerm),
14400 RevToken(RevToken),
14401 Same(Same),
14402 SameTerm(SameTerm),
14403 SameToken(SameToken),
14404 ScalarType(ScalarType),
14405 ScalarTypeGroup(ScalarTypeGroup),
14406 ScalarTypeList(Vec<ScalarTypeList>),
14407 ScalarTypeOpt(Option<ScalarTypeOpt>),
14408 ScopedIdentifier(ScopedIdentifier),
14409 ScopedIdentifierGroup(ScopedIdentifierGroup),
14410 ScopedIdentifierList(Vec<ScopedIdentifierList>),
14411 ScopedIdentifierOpt(Option<ScopedIdentifierOpt>),
14412 ScopedIdentifierOpt0(Option<ScopedIdentifierOpt0>),
14413 Select(Select),
14414 SelectOperator(SelectOperator),
14415 SelectOpt(Option<SelectOpt>),
14416 Semicolon(Semicolon),
14417 SemicolonTerm(SemicolonTerm),
14418 SemicolonToken(SemicolonToken),
14419 Signed(Signed),
14420 SignedTerm(SignedTerm),
14421 SignedToken(SignedToken),
14422 Star(Star),
14423 StarTerm(StarTerm),
14424 StarToken(StarToken),
14425 Start(Start),
14426 StartToken(StartToken),
14427 Statement(Statement),
14428 StatementBlock(StatementBlock),
14429 StatementBlockGroup(StatementBlockGroup),
14430 StatementBlockGroupGroup(StatementBlockGroupGroup),
14431 StatementBlockGroupGroupList(Vec<StatementBlockGroupGroupList>),
14432 StatementBlockGroupList(Vec<StatementBlockGroupList>),
14433 StatementBlockItem(StatementBlockItem),
14434 StatementBlockList(Vec<StatementBlockList>),
14435 Step(Step),
14436 StepTerm(StepTerm),
14437 StepToken(StepToken),
14438 Strin(Strin),
14439 StringLiteral(StringLiteral),
14440 StringLiteralTerm(StringLiteralTerm),
14441 StringLiteralToken(StringLiteralToken),
14442 StringTerm(StringTerm),
14443 StringToken(StringToken),
14444 Struct(Struct),
14445 StructConstructor(StructConstructor),
14446 StructConstructorItem(StructConstructorItem),
14447 StructConstructorList(StructConstructorList),
14448 StructConstructorListList(Vec<StructConstructorListList>),
14449 StructConstructorListOpt(Option<StructConstructorListOpt>),
14450 StructConstructorOpt(Option<StructConstructorOpt>),
14451 StructTerm(StructTerm),
14452 StructToken(StructToken),
14453 StructUnion(StructUnion),
14454 StructUnionDeclaration(StructUnionDeclaration),
14455 StructUnionDeclarationOpt(Option<StructUnionDeclarationOpt>),
14456 StructUnionGroup(StructUnionGroup),
14457 StructUnionGroupGroup(StructUnionGroupGroup),
14458 StructUnionGroupList(Vec<StructUnionGroupList>),
14459 StructUnionItem(StructUnionItem),
14460 StructUnionList(StructUnionList),
14461 StructUnionListList(Vec<StructUnionListList>),
14462 StructUnionListOpt(Option<StructUnionListOpt>),
14463 Switch(Switch),
14464 SwitchCondition(SwitchCondition),
14465 SwitchConditionList(Vec<SwitchConditionList>),
14466 SwitchExpression(SwitchExpression),
14467 SwitchExpressionList(Vec<SwitchExpressionList>),
14468 SwitchExpressionOpt(Option<SwitchExpressionOpt>),
14469 SwitchItem(SwitchItem),
14470 SwitchItemGroup(SwitchItemGroup),
14471 SwitchItemGroup0(SwitchItemGroup0),
14472 SwitchStatement(SwitchStatement),
14473 SwitchStatementList(Vec<SwitchStatementList>),
14474 SwitchTerm(SwitchTerm),
14475 SwitchToken(SwitchToken),
14476 Tri(Tri),
14477 TriTerm(TriTerm),
14478 TriToken(TriToken),
14479 TripleLBrace(TripleLBrace),
14480 TripleLBraceTerm(TripleLBraceTerm),
14481 TripleLBraceToken(TripleLBraceToken),
14482 TripleRBrace(TripleRBrace),
14483 TripleRBraceTerm(TripleRBraceTerm),
14484 TripleRBraceToken(TripleRBraceToken),
14485 True(True),
14486 TrueTerm(TrueTerm),
14487 TrueToken(TrueToken),
14488 Type(Type),
14489 TypeDefDeclaration(TypeDefDeclaration),
14490 TypeExpression(TypeExpression),
14491 TypeModifier(TypeModifier),
14492 TypeTerm(TypeTerm),
14493 TypeToken(TypeToken),
14494 U16(U16),
14495 U16Term(U16Term),
14496 U16Token(U16Token),
14497 U32(U32),
14498 U32Term(U32Term),
14499 U32Token(U32Token),
14500 U64(U64),
14501 U64Term(U64Term),
14502 U64Token(U64Token),
14503 U8(U8),
14504 U8Term(U8Term),
14505 U8Token(U8Token),
14506 UnaryOperator(UnaryOperator),
14507 UnaryOperatorTerm(UnaryOperatorTerm),
14508 UnaryOperatorToken(UnaryOperatorToken),
14509 Union(Union),
14510 UnionTerm(UnionTerm),
14511 UnionToken(UnionToken),
14512 Unsafe(Unsafe),
14513 UnsafeBlock(UnsafeBlock),
14514 UnsafeBlockList(Vec<UnsafeBlockList>),
14515 UnsafeTerm(UnsafeTerm),
14516 UnsafeToken(UnsafeToken),
14517 UserDefinedType(UserDefinedType),
14518 Var(Var),
14519 VarDeclaration(VarDeclaration),
14520 VarDeclarationOpt(Option<VarDeclarationOpt>),
14521 VarTerm(VarTerm),
14522 VarToken(VarToken),
14523 VariableType(VariableType),
14524 Veryl(Veryl),
14525 VerylList(Vec<VerylList>),
14526 Width(Width),
14527 WidthList(Vec<WidthList>),
14528 WithGenericArgument(WithGenericArgument),
14529 WithGenericArgumentItem(WithGenericArgumentItem),
14530 WithGenericArgumentList(WithGenericArgumentList),
14531 WithGenericArgumentListList(Vec<WithGenericArgumentListList>),
14532 WithGenericArgumentListOpt(Option<WithGenericArgumentListOpt>),
14533 WithGenericArgumentOpt(Option<WithGenericArgumentOpt>),
14534 WithGenericParameter(WithGenericParameter),
14535 WithGenericParameterItem(WithGenericParameterItem),
14536 WithGenericParameterItemOpt(Option<WithGenericParameterItemOpt>),
14537 WithGenericParameterList(WithGenericParameterList),
14538 WithGenericParameterListList(Vec<WithGenericParameterListList>),
14539 WithGenericParameterListOpt(Option<WithGenericParameterListOpt>),
14540 WithParameter(WithParameter),
14541 WithParameterGroup(WithParameterGroup),
14542 WithParameterGroupGroup(WithParameterGroupGroup),
14543 WithParameterGroupList(Vec<WithParameterGroupList>),
14544 WithParameterItem(WithParameterItem),
14545 WithParameterItemGroup(WithParameterItemGroup),
14546 WithParameterItemGroup0(WithParameterItemGroup0),
14547 WithParameterItemOpt(Option<WithParameterItemOpt>),
14548 WithParameterList(WithParameterList),
14549 WithParameterListList(Vec<WithParameterListList>),
14550 WithParameterListOpt(Option<WithParameterListOpt>),
14551 WithParameterOpt(Option<WithParameterOpt>),
14552}
14553
14554#[allow(dead_code)]
14562pub struct VerylGrammarAuto<'t, 'u>
14563where
14564 't: 'u,
14565{
14566 user_grammar: &'u mut dyn VerylGrammarTrait,
14568 item_stack: Vec<ASTType>,
14570 phantom: PhantomData<&'t str>,
14572}
14573
14574impl<'t, 'u> VerylGrammarAuto<'t, 'u> {
14579 pub fn new(user_grammar: &'u mut dyn VerylGrammarTrait) -> Self {
14580 Self {
14581 user_grammar,
14582 item_stack: Vec::new(),
14583 phantom: PhantomData,
14584 }
14585 }
14586
14587 #[allow(dead_code)]
14588 fn push(&mut self, item: ASTType, context: &str) {
14589 trace!("push {context}: {item:?}");
14590 self.item_stack.push(item)
14591 }
14592
14593 #[allow(dead_code)]
14594 fn pop(&mut self, context: &str) -> Option<ASTType> {
14595 let item = self.item_stack.pop();
14596 if let Some(ref item) = item {
14597 trace!("pop {context}: {item:?}");
14598 }
14599 item
14600 }
14601
14602 #[allow(dead_code)]
14603 fn trace_item_stack(&self, context: &str) -> std::string::String {
14606 format!(
14607 "Item stack at {}:\n{}",
14608 context,
14609 self.item_stack
14610 .iter()
14611 .rev()
14612 .map(|s| format!(" {s:?}"))
14613 .collect::<Vec<std::string::String>>()
14614 .join("\n")
14615 )
14616 }
14617
14618 #[parol_runtime::function_name::named]
14623 fn comments_term(&mut self, comments_term: &ParseTreeType<'t>) -> Result<()> {
14624 let context = function_name!();
14625 trace!("{}", self.trace_item_stack(context));
14626 let comments_term = comments_term
14627 .token()?
14628 .try_into()
14629 .map_err(parol_runtime::ParolError::UserError)?;
14630 let comments_term_built = CommentsTerm { comments_term };
14631 self.user_grammar.comments_term(&comments_term_built)?;
14633 self.push(ASTType::CommentsTerm(comments_term_built), context);
14634 Ok(())
14635 }
14636
14637 #[parol_runtime::function_name::named]
14642 fn string_literal_term(&mut self, string_literal_term: &ParseTreeType<'t>) -> Result<()> {
14643 let context = function_name!();
14644 trace!("{}", self.trace_item_stack(context));
14645 let string_literal_term = string_literal_term
14646 .token()?
14647 .try_into()
14648 .map_err(parol_runtime::ParolError::UserError)?;
14649 let string_literal_term_built = StringLiteralTerm {
14650 string_literal_term,
14651 };
14652 self.user_grammar
14654 .string_literal_term(&string_literal_term_built)?;
14655 self.push(
14656 ASTType::StringLiteralTerm(string_literal_term_built),
14657 context,
14658 );
14659 Ok(())
14660 }
14661
14662 #[parol_runtime::function_name::named]
14667 fn exponent_term(&mut self, exponent_term: &ParseTreeType<'t>) -> Result<()> {
14668 let context = function_name!();
14669 trace!("{}", self.trace_item_stack(context));
14670 let exponent_term = exponent_term
14671 .token()?
14672 .try_into()
14673 .map_err(parol_runtime::ParolError::UserError)?;
14674 let exponent_term_built = ExponentTerm { exponent_term };
14675 self.user_grammar.exponent_term(&exponent_term_built)?;
14677 self.push(ASTType::ExponentTerm(exponent_term_built), context);
14678 Ok(())
14679 }
14680
14681 #[parol_runtime::function_name::named]
14686 fn fixed_point_term(&mut self, fixed_point_term: &ParseTreeType<'t>) -> Result<()> {
14687 let context = function_name!();
14688 trace!("{}", self.trace_item_stack(context));
14689 let fixed_point_term = fixed_point_term
14690 .token()?
14691 .try_into()
14692 .map_err(parol_runtime::ParolError::UserError)?;
14693 let fixed_point_term_built = FixedPointTerm { fixed_point_term };
14694 self.user_grammar
14696 .fixed_point_term(&fixed_point_term_built)?;
14697 self.push(ASTType::FixedPointTerm(fixed_point_term_built), context);
14698 Ok(())
14699 }
14700
14701 #[parol_runtime::function_name::named]
14706 fn based_term(&mut self, based_term: &ParseTreeType<'t>) -> Result<()> {
14707 let context = function_name!();
14708 trace!("{}", self.trace_item_stack(context));
14709 let based_term = based_term
14710 .token()?
14711 .try_into()
14712 .map_err(parol_runtime::ParolError::UserError)?;
14713 let based_term_built = BasedTerm { based_term };
14714 self.user_grammar.based_term(&based_term_built)?;
14716 self.push(ASTType::BasedTerm(based_term_built), context);
14717 Ok(())
14718 }
14719
14720 #[parol_runtime::function_name::named]
14725 fn all_bit_term(&mut self, all_bit_term: &ParseTreeType<'t>) -> Result<()> {
14726 let context = function_name!();
14727 trace!("{}", self.trace_item_stack(context));
14728 let all_bit_term = all_bit_term
14729 .token()?
14730 .try_into()
14731 .map_err(parol_runtime::ParolError::UserError)?;
14732 let all_bit_term_built = AllBitTerm { all_bit_term };
14733 self.user_grammar.all_bit_term(&all_bit_term_built)?;
14735 self.push(ASTType::AllBitTerm(all_bit_term_built), context);
14736 Ok(())
14737 }
14738
14739 #[parol_runtime::function_name::named]
14744 fn base_less_term(&mut self, base_less_term: &ParseTreeType<'t>) -> Result<()> {
14745 let context = function_name!();
14746 trace!("{}", self.trace_item_stack(context));
14747 let base_less_term = base_less_term
14748 .token()?
14749 .try_into()
14750 .map_err(parol_runtime::ParolError::UserError)?;
14751 let base_less_term_built = BaseLessTerm { base_less_term };
14752 self.user_grammar.base_less_term(&base_less_term_built)?;
14754 self.push(ASTType::BaseLessTerm(base_less_term_built), context);
14755 Ok(())
14756 }
14757
14758 #[parol_runtime::function_name::named]
14763 fn minus_colon_term(&mut self, minus_colon_term: &ParseTreeType<'t>) -> Result<()> {
14764 let context = function_name!();
14765 trace!("{}", self.trace_item_stack(context));
14766 let minus_colon_term = minus_colon_term
14767 .token()?
14768 .try_into()
14769 .map_err(parol_runtime::ParolError::UserError)?;
14770 let minus_colon_term_built = MinusColonTerm { minus_colon_term };
14771 self.user_grammar
14773 .minus_colon_term(&minus_colon_term_built)?;
14774 self.push(ASTType::MinusColonTerm(minus_colon_term_built), context);
14775 Ok(())
14776 }
14777
14778 #[parol_runtime::function_name::named]
14783 fn minus_g_t_term(&mut self, minus_g_t_term: &ParseTreeType<'t>) -> Result<()> {
14784 let context = function_name!();
14785 trace!("{}", self.trace_item_stack(context));
14786 let minus_g_t_term = minus_g_t_term
14787 .token()?
14788 .try_into()
14789 .map_err(parol_runtime::ParolError::UserError)?;
14790 let minus_g_t_term_built = MinusGTTerm { minus_g_t_term };
14791 self.user_grammar.minus_g_t_term(&minus_g_t_term_built)?;
14793 self.push(ASTType::MinusGTTerm(minus_g_t_term_built), context);
14794 Ok(())
14795 }
14796
14797 #[parol_runtime::function_name::named]
14802 fn l_t_minus_term(&mut self, l_t_minus_term: &ParseTreeType<'t>) -> Result<()> {
14803 let context = function_name!();
14804 trace!("{}", self.trace_item_stack(context));
14805 let l_t_minus_term = l_t_minus_term
14806 .token()?
14807 .try_into()
14808 .map_err(parol_runtime::ParolError::UserError)?;
14809 let l_t_minus_term_built = LTMinusTerm { l_t_minus_term };
14810 self.user_grammar.l_t_minus_term(&l_t_minus_term_built)?;
14812 self.push(ASTType::LTMinusTerm(l_t_minus_term_built), context);
14813 Ok(())
14814 }
14815
14816 #[parol_runtime::function_name::named]
14821 fn plus_colon_term(&mut self, plus_colon_term: &ParseTreeType<'t>) -> Result<()> {
14822 let context = function_name!();
14823 trace!("{}", self.trace_item_stack(context));
14824 let plus_colon_term = plus_colon_term
14825 .token()?
14826 .try_into()
14827 .map_err(parol_runtime::ParolError::UserError)?;
14828 let plus_colon_term_built = PlusColonTerm { plus_colon_term };
14829 self.user_grammar.plus_colon_term(&plus_colon_term_built)?;
14831 self.push(ASTType::PlusColonTerm(plus_colon_term_built), context);
14832 Ok(())
14833 }
14834
14835 #[parol_runtime::function_name::named]
14840 fn assignment_operator_term(
14841 &mut self,
14842 assignment_operator_term: &ParseTreeType<'t>,
14843 ) -> Result<()> {
14844 let context = function_name!();
14845 trace!("{}", self.trace_item_stack(context));
14846 let assignment_operator_term = assignment_operator_term
14847 .token()?
14848 .try_into()
14849 .map_err(parol_runtime::ParolError::UserError)?;
14850 let assignment_operator_term_built = AssignmentOperatorTerm {
14851 assignment_operator_term,
14852 };
14853 self.user_grammar
14855 .assignment_operator_term(&assignment_operator_term_built)?;
14856 self.push(
14857 ASTType::AssignmentOperatorTerm(assignment_operator_term_built),
14858 context,
14859 );
14860 Ok(())
14861 }
14862
14863 #[parol_runtime::function_name::named]
14868 fn diamond_operator_term(&mut self, diamond_operator_term: &ParseTreeType<'t>) -> Result<()> {
14869 let context = function_name!();
14870 trace!("{}", self.trace_item_stack(context));
14871 let diamond_operator_term = diamond_operator_term
14872 .token()?
14873 .try_into()
14874 .map_err(parol_runtime::ParolError::UserError)?;
14875 let diamond_operator_term_built = DiamondOperatorTerm {
14876 diamond_operator_term,
14877 };
14878 self.user_grammar
14880 .diamond_operator_term(&diamond_operator_term_built)?;
14881 self.push(
14882 ASTType::DiamondOperatorTerm(diamond_operator_term_built),
14883 context,
14884 );
14885 Ok(())
14886 }
14887
14888 #[parol_runtime::function_name::named]
14893 fn operator08_term(&mut self, operator08_term: &ParseTreeType<'t>) -> Result<()> {
14894 let context = function_name!();
14895 trace!("{}", self.trace_item_stack(context));
14896 let operator08_term = operator08_term
14897 .token()?
14898 .try_into()
14899 .map_err(parol_runtime::ParolError::UserError)?;
14900 let operator08_term_built = Operator08Term { operator08_term };
14901 self.user_grammar.operator08_term(&operator08_term_built)?;
14903 self.push(ASTType::Operator08Term(operator08_term_built), context);
14904 Ok(())
14905 }
14906
14907 #[parol_runtime::function_name::named]
14912 fn operator07_term(&mut self, operator07_term: &ParseTreeType<'t>) -> Result<()> {
14913 let context = function_name!();
14914 trace!("{}", self.trace_item_stack(context));
14915 let operator07_term = operator07_term
14916 .token()?
14917 .try_into()
14918 .map_err(parol_runtime::ParolError::UserError)?;
14919 let operator07_term_built = Operator07Term { operator07_term };
14920 self.user_grammar.operator07_term(&operator07_term_built)?;
14922 self.push(ASTType::Operator07Term(operator07_term_built), context);
14923 Ok(())
14924 }
14925
14926 #[parol_runtime::function_name::named]
14931 fn operator06_term(&mut self, operator06_term: &ParseTreeType<'t>) -> Result<()> {
14932 let context = function_name!();
14933 trace!("{}", self.trace_item_stack(context));
14934 let operator06_term = operator06_term
14935 .token()?
14936 .try_into()
14937 .map_err(parol_runtime::ParolError::UserError)?;
14938 let operator06_term_built = Operator06Term { operator06_term };
14939 self.user_grammar.operator06_term(&operator06_term_built)?;
14941 self.push(ASTType::Operator06Term(operator06_term_built), context);
14942 Ok(())
14943 }
14944
14945 #[parol_runtime::function_name::named]
14950 fn operator02_term(&mut self, operator02_term: &ParseTreeType<'t>) -> Result<()> {
14951 let context = function_name!();
14952 trace!("{}", self.trace_item_stack(context));
14953 let operator02_term = operator02_term
14954 .token()?
14955 .try_into()
14956 .map_err(parol_runtime::ParolError::UserError)?;
14957 let operator02_term_built = Operator02Term { operator02_term };
14958 self.user_grammar.operator02_term(&operator02_term_built)?;
14960 self.push(ASTType::Operator02Term(operator02_term_built), context);
14961 Ok(())
14962 }
14963
14964 #[parol_runtime::function_name::named]
14969 fn operator01_term(&mut self, operator01_term: &ParseTreeType<'t>) -> Result<()> {
14970 let context = function_name!();
14971 trace!("{}", self.trace_item_stack(context));
14972 let operator01_term = operator01_term
14973 .token()?
14974 .try_into()
14975 .map_err(parol_runtime::ParolError::UserError)?;
14976 let operator01_term_built = Operator01Term { operator01_term };
14977 self.user_grammar.operator01_term(&operator01_term_built)?;
14979 self.push(ASTType::Operator01Term(operator01_term_built), context);
14980 Ok(())
14981 }
14982
14983 #[parol_runtime::function_name::named]
14988 fn operator05_term(&mut self, operator05_term: &ParseTreeType<'t>) -> Result<()> {
14989 let context = function_name!();
14990 trace!("{}", self.trace_item_stack(context));
14991 let operator05_term = operator05_term
14992 .token()?
14993 .try_into()
14994 .map_err(parol_runtime::ParolError::UserError)?;
14995 let operator05_term_built = Operator05Term { operator05_term };
14996 self.user_grammar.operator05_term(&operator05_term_built)?;
14998 self.push(ASTType::Operator05Term(operator05_term_built), context);
14999 Ok(())
15000 }
15001
15002 #[parol_runtime::function_name::named]
15007 fn operator04_term(&mut self, operator04_term: &ParseTreeType<'t>) -> Result<()> {
15008 let context = function_name!();
15009 trace!("{}", self.trace_item_stack(context));
15010 let operator04_term = operator04_term
15011 .token()?
15012 .try_into()
15013 .map_err(parol_runtime::ParolError::UserError)?;
15014 let operator04_term_built = Operator04Term { operator04_term };
15015 self.user_grammar.operator04_term(&operator04_term_built)?;
15017 self.push(ASTType::Operator04Term(operator04_term_built), context);
15018 Ok(())
15019 }
15020
15021 #[parol_runtime::function_name::named]
15026 fn operator03_term(&mut self, operator03_term: &ParseTreeType<'t>) -> Result<()> {
15027 let context = function_name!();
15028 trace!("{}", self.trace_item_stack(context));
15029 let operator03_term = operator03_term
15030 .token()?
15031 .try_into()
15032 .map_err(parol_runtime::ParolError::UserError)?;
15033 let operator03_term_built = Operator03Term { operator03_term };
15034 self.user_grammar.operator03_term(&operator03_term_built)?;
15036 self.push(ASTType::Operator03Term(operator03_term_built), context);
15037 Ok(())
15038 }
15039
15040 #[parol_runtime::function_name::named]
15045 fn unary_operator_term(&mut self, unary_operator_term: &ParseTreeType<'t>) -> Result<()> {
15046 let context = function_name!();
15047 trace!("{}", self.trace_item_stack(context));
15048 let unary_operator_term = unary_operator_term
15049 .token()?
15050 .try_into()
15051 .map_err(parol_runtime::ParolError::UserError)?;
15052 let unary_operator_term_built = UnaryOperatorTerm {
15053 unary_operator_term,
15054 };
15055 self.user_grammar
15057 .unary_operator_term(&unary_operator_term_built)?;
15058 self.push(
15059 ASTType::UnaryOperatorTerm(unary_operator_term_built),
15060 context,
15061 );
15062 Ok(())
15063 }
15064
15065 #[parol_runtime::function_name::named]
15070 fn colon_colon_l_angle_term(
15071 &mut self,
15072 colon_colon_l_angle_term: &ParseTreeType<'t>,
15073 ) -> Result<()> {
15074 let context = function_name!();
15075 trace!("{}", self.trace_item_stack(context));
15076 let colon_colon_l_angle_term = colon_colon_l_angle_term
15077 .token()?
15078 .try_into()
15079 .map_err(parol_runtime::ParolError::UserError)?;
15080 let colon_colon_l_angle_term_built = ColonColonLAngleTerm {
15081 colon_colon_l_angle_term,
15082 };
15083 self.user_grammar
15085 .colon_colon_l_angle_term(&colon_colon_l_angle_term_built)?;
15086 self.push(
15087 ASTType::ColonColonLAngleTerm(colon_colon_l_angle_term_built),
15088 context,
15089 );
15090 Ok(())
15091 }
15092
15093 #[parol_runtime::function_name::named]
15098 fn colon_colon_term(&mut self, colon_colon_term: &ParseTreeType<'t>) -> Result<()> {
15099 let context = function_name!();
15100 trace!("{}", self.trace_item_stack(context));
15101 let colon_colon_term = colon_colon_term
15102 .token()?
15103 .try_into()
15104 .map_err(parol_runtime::ParolError::UserError)?;
15105 let colon_colon_term_built = ColonColonTerm { colon_colon_term };
15106 self.user_grammar
15108 .colon_colon_term(&colon_colon_term_built)?;
15109 self.push(ASTType::ColonColonTerm(colon_colon_term_built), context);
15110 Ok(())
15111 }
15112
15113 #[parol_runtime::function_name::named]
15118 fn colon_term(&mut self, colon_term: &ParseTreeType<'t>) -> Result<()> {
15119 let context = function_name!();
15120 trace!("{}", self.trace_item_stack(context));
15121 let colon_term = colon_term
15122 .token()?
15123 .try_into()
15124 .map_err(parol_runtime::ParolError::UserError)?;
15125 let colon_term_built = ColonTerm { colon_term };
15126 self.user_grammar.colon_term(&colon_term_built)?;
15128 self.push(ASTType::ColonTerm(colon_term_built), context);
15129 Ok(())
15130 }
15131
15132 #[parol_runtime::function_name::named]
15137 fn comma_term(&mut self, comma_term: &ParseTreeType<'t>) -> Result<()> {
15138 let context = function_name!();
15139 trace!("{}", self.trace_item_stack(context));
15140 let comma_term = comma_term
15141 .token()?
15142 .try_into()
15143 .map_err(parol_runtime::ParolError::UserError)?;
15144 let comma_term_built = CommaTerm { comma_term };
15145 self.user_grammar.comma_term(&comma_term_built)?;
15147 self.push(ASTType::CommaTerm(comma_term_built), context);
15148 Ok(())
15149 }
15150
15151 #[parol_runtime::function_name::named]
15156 fn dot_dot_equ_term(&mut self, dot_dot_equ_term: &ParseTreeType<'t>) -> Result<()> {
15157 let context = function_name!();
15158 trace!("{}", self.trace_item_stack(context));
15159 let dot_dot_equ_term = dot_dot_equ_term
15160 .token()?
15161 .try_into()
15162 .map_err(parol_runtime::ParolError::UserError)?;
15163 let dot_dot_equ_term_built = DotDotEquTerm { dot_dot_equ_term };
15164 self.user_grammar
15166 .dot_dot_equ_term(&dot_dot_equ_term_built)?;
15167 self.push(ASTType::DotDotEquTerm(dot_dot_equ_term_built), context);
15168 Ok(())
15169 }
15170
15171 #[parol_runtime::function_name::named]
15176 fn dot_dot_term(&mut self, dot_dot_term: &ParseTreeType<'t>) -> Result<()> {
15177 let context = function_name!();
15178 trace!("{}", self.trace_item_stack(context));
15179 let dot_dot_term = dot_dot_term
15180 .token()?
15181 .try_into()
15182 .map_err(parol_runtime::ParolError::UserError)?;
15183 let dot_dot_term_built = DotDotTerm { dot_dot_term };
15184 self.user_grammar.dot_dot_term(&dot_dot_term_built)?;
15186 self.push(ASTType::DotDotTerm(dot_dot_term_built), context);
15187 Ok(())
15188 }
15189
15190 #[parol_runtime::function_name::named]
15195 fn dot_term(&mut self, dot_term: &ParseTreeType<'t>) -> Result<()> {
15196 let context = function_name!();
15197 trace!("{}", self.trace_item_stack(context));
15198 let dot_term = dot_term
15199 .token()?
15200 .try_into()
15201 .map_err(parol_runtime::ParolError::UserError)?;
15202 let dot_term_built = DotTerm { dot_term };
15203 self.user_grammar.dot_term(&dot_term_built)?;
15205 self.push(ASTType::DotTerm(dot_term_built), context);
15206 Ok(())
15207 }
15208
15209 #[parol_runtime::function_name::named]
15214 fn equ_term(&mut self, equ_term: &ParseTreeType<'t>) -> Result<()> {
15215 let context = function_name!();
15216 trace!("{}", self.trace_item_stack(context));
15217 let equ_term = equ_term
15218 .token()?
15219 .try_into()
15220 .map_err(parol_runtime::ParolError::UserError)?;
15221 let equ_term_built = EquTerm { equ_term };
15222 self.user_grammar.equ_term(&equ_term_built)?;
15224 self.push(ASTType::EquTerm(equ_term_built), context);
15225 Ok(())
15226 }
15227
15228 #[parol_runtime::function_name::named]
15233 fn hash_l_bracket_term(&mut self, hash_l_bracket_term: &ParseTreeType<'t>) -> Result<()> {
15234 let context = function_name!();
15235 trace!("{}", self.trace_item_stack(context));
15236 let hash_l_bracket_term = hash_l_bracket_term
15237 .token()?
15238 .try_into()
15239 .map_err(parol_runtime::ParolError::UserError)?;
15240 let hash_l_bracket_term_built = HashLBracketTerm {
15241 hash_l_bracket_term,
15242 };
15243 self.user_grammar
15245 .hash_l_bracket_term(&hash_l_bracket_term_built)?;
15246 self.push(
15247 ASTType::HashLBracketTerm(hash_l_bracket_term_built),
15248 context,
15249 );
15250 Ok(())
15251 }
15252
15253 #[parol_runtime::function_name::named]
15258 fn hash_term(&mut self, hash_term: &ParseTreeType<'t>) -> Result<()> {
15259 let context = function_name!();
15260 trace!("{}", self.trace_item_stack(context));
15261 let hash_term = hash_term
15262 .token()?
15263 .try_into()
15264 .map_err(parol_runtime::ParolError::UserError)?;
15265 let hash_term_built = HashTerm { hash_term };
15266 self.user_grammar.hash_term(&hash_term_built)?;
15268 self.push(ASTType::HashTerm(hash_term_built), context);
15269 Ok(())
15270 }
15271
15272 #[parol_runtime::function_name::named]
15277 fn l_angle_term(&mut self, l_angle_term: &ParseTreeType<'t>) -> Result<()> {
15278 let context = function_name!();
15279 trace!("{}", self.trace_item_stack(context));
15280 let l_angle_term = l_angle_term
15281 .token()?
15282 .try_into()
15283 .map_err(parol_runtime::ParolError::UserError)?;
15284 let l_angle_term_built = LAngleTerm { l_angle_term };
15285 self.user_grammar.l_angle_term(&l_angle_term_built)?;
15287 self.push(ASTType::LAngleTerm(l_angle_term_built), context);
15288 Ok(())
15289 }
15290
15291 #[parol_runtime::function_name::named]
15296 fn question_term(&mut self, question_term: &ParseTreeType<'t>) -> Result<()> {
15297 let context = function_name!();
15298 trace!("{}", self.trace_item_stack(context));
15299 let question_term = question_term
15300 .token()?
15301 .try_into()
15302 .map_err(parol_runtime::ParolError::UserError)?;
15303 let question_term_built = QuestionTerm { question_term };
15304 self.user_grammar.question_term(&question_term_built)?;
15306 self.push(ASTType::QuestionTerm(question_term_built), context);
15307 Ok(())
15308 }
15309
15310 #[parol_runtime::function_name::named]
15315 fn quote_l_brace_term(&mut self, quote_l_brace_term: &ParseTreeType<'t>) -> Result<()> {
15316 let context = function_name!();
15317 trace!("{}", self.trace_item_stack(context));
15318 let quote_l_brace_term = quote_l_brace_term
15319 .token()?
15320 .try_into()
15321 .map_err(parol_runtime::ParolError::UserError)?;
15322 let quote_l_brace_term_built = QuoteLBraceTerm { quote_l_brace_term };
15323 self.user_grammar
15325 .quote_l_brace_term("e_l_brace_term_built)?;
15326 self.push(ASTType::QuoteLBraceTerm(quote_l_brace_term_built), context);
15327 Ok(())
15328 }
15329
15330 #[parol_runtime::function_name::named]
15335 fn quote_term(&mut self, quote_term: &ParseTreeType<'t>) -> Result<()> {
15336 let context = function_name!();
15337 trace!("{}", self.trace_item_stack(context));
15338 let quote_term = quote_term
15339 .token()?
15340 .try_into()
15341 .map_err(parol_runtime::ParolError::UserError)?;
15342 let quote_term_built = QuoteTerm { quote_term };
15343 self.user_grammar.quote_term("e_term_built)?;
15345 self.push(ASTType::QuoteTerm(quote_term_built), context);
15346 Ok(())
15347 }
15348
15349 #[parol_runtime::function_name::named]
15354 fn escaped_l_brace_term(&mut self, escaped_l_brace_term: &ParseTreeType<'t>) -> Result<()> {
15355 let context = function_name!();
15356 trace!("{}", self.trace_item_stack(context));
15357 let escaped_l_brace_term = escaped_l_brace_term
15358 .token()?
15359 .try_into()
15360 .map_err(parol_runtime::ParolError::UserError)?;
15361 let escaped_l_brace_term_built = EscapedLBraceTerm {
15362 escaped_l_brace_term,
15363 };
15364 self.user_grammar
15366 .escaped_l_brace_term(&escaped_l_brace_term_built)?;
15367 self.push(
15368 ASTType::EscapedLBraceTerm(escaped_l_brace_term_built),
15369 context,
15370 );
15371 Ok(())
15372 }
15373
15374 #[parol_runtime::function_name::named]
15379 fn triple_l_brace_term(&mut self, triple_l_brace_term: &ParseTreeType<'t>) -> Result<()> {
15380 let context = function_name!();
15381 trace!("{}", self.trace_item_stack(context));
15382 let triple_l_brace_term = triple_l_brace_term
15383 .token()?
15384 .try_into()
15385 .map_err(parol_runtime::ParolError::UserError)?;
15386 let triple_l_brace_term_built = TripleLBraceTerm {
15387 triple_l_brace_term,
15388 };
15389 self.user_grammar
15391 .triple_l_brace_term(&triple_l_brace_term_built)?;
15392 self.push(
15393 ASTType::TripleLBraceTerm(triple_l_brace_term_built),
15394 context,
15395 );
15396 Ok(())
15397 }
15398
15399 #[parol_runtime::function_name::named]
15404 fn l_brace_term(&mut self, l_brace_term: &ParseTreeType<'t>) -> Result<()> {
15405 let context = function_name!();
15406 trace!("{}", self.trace_item_stack(context));
15407 let l_brace_term = l_brace_term
15408 .token()?
15409 .try_into()
15410 .map_err(parol_runtime::ParolError::UserError)?;
15411 let l_brace_term_built = LBraceTerm { l_brace_term };
15412 self.user_grammar.l_brace_term(&l_brace_term_built)?;
15414 self.push(ASTType::LBraceTerm(l_brace_term_built), context);
15415 Ok(())
15416 }
15417
15418 #[parol_runtime::function_name::named]
15423 fn l_bracket_term(&mut self, l_bracket_term: &ParseTreeType<'t>) -> Result<()> {
15424 let context = function_name!();
15425 trace!("{}", self.trace_item_stack(context));
15426 let l_bracket_term = l_bracket_term
15427 .token()?
15428 .try_into()
15429 .map_err(parol_runtime::ParolError::UserError)?;
15430 let l_bracket_term_built = LBracketTerm { l_bracket_term };
15431 self.user_grammar.l_bracket_term(&l_bracket_term_built)?;
15433 self.push(ASTType::LBracketTerm(l_bracket_term_built), context);
15434 Ok(())
15435 }
15436
15437 #[parol_runtime::function_name::named]
15442 fn l_paren_term(&mut self, l_paren_term: &ParseTreeType<'t>) -> Result<()> {
15443 let context = function_name!();
15444 trace!("{}", self.trace_item_stack(context));
15445 let l_paren_term = l_paren_term
15446 .token()?
15447 .try_into()
15448 .map_err(parol_runtime::ParolError::UserError)?;
15449 let l_paren_term_built = LParenTerm { l_paren_term };
15450 self.user_grammar.l_paren_term(&l_paren_term_built)?;
15452 self.push(ASTType::LParenTerm(l_paren_term_built), context);
15453 Ok(())
15454 }
15455
15456 #[parol_runtime::function_name::named]
15461 fn r_angle_term(&mut self, r_angle_term: &ParseTreeType<'t>) -> Result<()> {
15462 let context = function_name!();
15463 trace!("{}", self.trace_item_stack(context));
15464 let r_angle_term = r_angle_term
15465 .token()?
15466 .try_into()
15467 .map_err(parol_runtime::ParolError::UserError)?;
15468 let r_angle_term_built = RAngleTerm { r_angle_term };
15469 self.user_grammar.r_angle_term(&r_angle_term_built)?;
15471 self.push(ASTType::RAngleTerm(r_angle_term_built), context);
15472 Ok(())
15473 }
15474
15475 #[parol_runtime::function_name::named]
15480 fn escaped_r_brace_term(&mut self, escaped_r_brace_term: &ParseTreeType<'t>) -> Result<()> {
15481 let context = function_name!();
15482 trace!("{}", self.trace_item_stack(context));
15483 let escaped_r_brace_term = escaped_r_brace_term
15484 .token()?
15485 .try_into()
15486 .map_err(parol_runtime::ParolError::UserError)?;
15487 let escaped_r_brace_term_built = EscapedRBraceTerm {
15488 escaped_r_brace_term,
15489 };
15490 self.user_grammar
15492 .escaped_r_brace_term(&escaped_r_brace_term_built)?;
15493 self.push(
15494 ASTType::EscapedRBraceTerm(escaped_r_brace_term_built),
15495 context,
15496 );
15497 Ok(())
15498 }
15499
15500 #[parol_runtime::function_name::named]
15505 fn triple_r_brace_term(&mut self, triple_r_brace_term: &ParseTreeType<'t>) -> Result<()> {
15506 let context = function_name!();
15507 trace!("{}", self.trace_item_stack(context));
15508 let triple_r_brace_term = triple_r_brace_term
15509 .token()?
15510 .try_into()
15511 .map_err(parol_runtime::ParolError::UserError)?;
15512 let triple_r_brace_term_built = TripleRBraceTerm {
15513 triple_r_brace_term,
15514 };
15515 self.user_grammar
15517 .triple_r_brace_term(&triple_r_brace_term_built)?;
15518 self.push(
15519 ASTType::TripleRBraceTerm(triple_r_brace_term_built),
15520 context,
15521 );
15522 Ok(())
15523 }
15524
15525 #[parol_runtime::function_name::named]
15530 fn r_brace_term(&mut self, r_brace_term: &ParseTreeType<'t>) -> Result<()> {
15531 let context = function_name!();
15532 trace!("{}", self.trace_item_stack(context));
15533 let r_brace_term = r_brace_term
15534 .token()?
15535 .try_into()
15536 .map_err(parol_runtime::ParolError::UserError)?;
15537 let r_brace_term_built = RBraceTerm { r_brace_term };
15538 self.user_grammar.r_brace_term(&r_brace_term_built)?;
15540 self.push(ASTType::RBraceTerm(r_brace_term_built), context);
15541 Ok(())
15542 }
15543
15544 #[parol_runtime::function_name::named]
15549 fn r_bracket_term(&mut self, r_bracket_term: &ParseTreeType<'t>) -> Result<()> {
15550 let context = function_name!();
15551 trace!("{}", self.trace_item_stack(context));
15552 let r_bracket_term = r_bracket_term
15553 .token()?
15554 .try_into()
15555 .map_err(parol_runtime::ParolError::UserError)?;
15556 let r_bracket_term_built = RBracketTerm { r_bracket_term };
15557 self.user_grammar.r_bracket_term(&r_bracket_term_built)?;
15559 self.push(ASTType::RBracketTerm(r_bracket_term_built), context);
15560 Ok(())
15561 }
15562
15563 #[parol_runtime::function_name::named]
15568 fn r_paren_term(&mut self, r_paren_term: &ParseTreeType<'t>) -> Result<()> {
15569 let context = function_name!();
15570 trace!("{}", self.trace_item_stack(context));
15571 let r_paren_term = r_paren_term
15572 .token()?
15573 .try_into()
15574 .map_err(parol_runtime::ParolError::UserError)?;
15575 let r_paren_term_built = RParenTerm { r_paren_term };
15576 self.user_grammar.r_paren_term(&r_paren_term_built)?;
15578 self.push(ASTType::RParenTerm(r_paren_term_built), context);
15579 Ok(())
15580 }
15581
15582 #[parol_runtime::function_name::named]
15587 fn semicolon_term(&mut self, semicolon_term: &ParseTreeType<'t>) -> Result<()> {
15588 let context = function_name!();
15589 trace!("{}", self.trace_item_stack(context));
15590 let semicolon_term = semicolon_term
15591 .token()?
15592 .try_into()
15593 .map_err(parol_runtime::ParolError::UserError)?;
15594 let semicolon_term_built = SemicolonTerm { semicolon_term };
15595 self.user_grammar.semicolon_term(&semicolon_term_built)?;
15597 self.push(ASTType::SemicolonTerm(semicolon_term_built), context);
15598 Ok(())
15599 }
15600
15601 #[parol_runtime::function_name::named]
15606 fn star_term(&mut self, star_term: &ParseTreeType<'t>) -> Result<()> {
15607 let context = function_name!();
15608 trace!("{}", self.trace_item_stack(context));
15609 let star_term = star_term
15610 .token()?
15611 .try_into()
15612 .map_err(parol_runtime::ParolError::UserError)?;
15613 let star_term_built = StarTerm { star_term };
15614 self.user_grammar.star_term(&star_term_built)?;
15616 self.push(ASTType::StarTerm(star_term_built), context);
15617 Ok(())
15618 }
15619
15620 #[parol_runtime::function_name::named]
15625 fn alias_term(&mut self, alias_term: &ParseTreeType<'t>) -> Result<()> {
15626 let context = function_name!();
15627 trace!("{}", self.trace_item_stack(context));
15628 let alias_term = alias_term
15629 .token()?
15630 .try_into()
15631 .map_err(parol_runtime::ParolError::UserError)?;
15632 let alias_term_built = AliasTerm { alias_term };
15633 self.user_grammar.alias_term(&alias_term_built)?;
15635 self.push(ASTType::AliasTerm(alias_term_built), context);
15636 Ok(())
15637 }
15638
15639 #[parol_runtime::function_name::named]
15644 fn always_comb_term(&mut self, always_comb_term: &ParseTreeType<'t>) -> Result<()> {
15645 let context = function_name!();
15646 trace!("{}", self.trace_item_stack(context));
15647 let always_comb_term = always_comb_term
15648 .token()?
15649 .try_into()
15650 .map_err(parol_runtime::ParolError::UserError)?;
15651 let always_comb_term_built = AlwaysCombTerm { always_comb_term };
15652 self.user_grammar
15654 .always_comb_term(&always_comb_term_built)?;
15655 self.push(ASTType::AlwaysCombTerm(always_comb_term_built), context);
15656 Ok(())
15657 }
15658
15659 #[parol_runtime::function_name::named]
15664 fn always_ff_term(&mut self, always_ff_term: &ParseTreeType<'t>) -> Result<()> {
15665 let context = function_name!();
15666 trace!("{}", self.trace_item_stack(context));
15667 let always_ff_term = always_ff_term
15668 .token()?
15669 .try_into()
15670 .map_err(parol_runtime::ParolError::UserError)?;
15671 let always_ff_term_built = AlwaysFfTerm { always_ff_term };
15672 self.user_grammar.always_ff_term(&always_ff_term_built)?;
15674 self.push(ASTType::AlwaysFfTerm(always_ff_term_built), context);
15675 Ok(())
15676 }
15677
15678 #[parol_runtime::function_name::named]
15683 fn assign_term(&mut self, assign_term: &ParseTreeType<'t>) -> Result<()> {
15684 let context = function_name!();
15685 trace!("{}", self.trace_item_stack(context));
15686 let assign_term = assign_term
15687 .token()?
15688 .try_into()
15689 .map_err(parol_runtime::ParolError::UserError)?;
15690 let assign_term_built = AssignTerm { assign_term };
15691 self.user_grammar.assign_term(&assign_term_built)?;
15693 self.push(ASTType::AssignTerm(assign_term_built), context);
15694 Ok(())
15695 }
15696
15697 #[parol_runtime::function_name::named]
15702 fn as_term(&mut self, as_term: &ParseTreeType<'t>) -> Result<()> {
15703 let context = function_name!();
15704 trace!("{}", self.trace_item_stack(context));
15705 let as_term = as_term
15706 .token()?
15707 .try_into()
15708 .map_err(parol_runtime::ParolError::UserError)?;
15709 let as_term_built = AsTerm { as_term };
15710 self.user_grammar.as_term(&as_term_built)?;
15712 self.push(ASTType::AsTerm(as_term_built), context);
15713 Ok(())
15714 }
15715
15716 #[parol_runtime::function_name::named]
15721 fn bind_term(&mut self, bind_term: &ParseTreeType<'t>) -> Result<()> {
15722 let context = function_name!();
15723 trace!("{}", self.trace_item_stack(context));
15724 let bind_term = bind_term
15725 .token()?
15726 .try_into()
15727 .map_err(parol_runtime::ParolError::UserError)?;
15728 let bind_term_built = BindTerm { bind_term };
15729 self.user_grammar.bind_term(&bind_term_built)?;
15731 self.push(ASTType::BindTerm(bind_term_built), context);
15732 Ok(())
15733 }
15734
15735 #[parol_runtime::function_name::named]
15740 fn bit_term(&mut self, bit_term: &ParseTreeType<'t>) -> Result<()> {
15741 let context = function_name!();
15742 trace!("{}", self.trace_item_stack(context));
15743 let bit_term = bit_term
15744 .token()?
15745 .try_into()
15746 .map_err(parol_runtime::ParolError::UserError)?;
15747 let bit_term_built = BitTerm { bit_term };
15748 self.user_grammar.bit_term(&bit_term_built)?;
15750 self.push(ASTType::BitTerm(bit_term_built), context);
15751 Ok(())
15752 }
15753
15754 #[parol_runtime::function_name::named]
15759 fn block_term(&mut self, block_term: &ParseTreeType<'t>) -> Result<()> {
15760 let context = function_name!();
15761 trace!("{}", self.trace_item_stack(context));
15762 let block_term = block_term
15763 .token()?
15764 .try_into()
15765 .map_err(parol_runtime::ParolError::UserError)?;
15766 let block_term_built = BlockTerm { block_term };
15767 self.user_grammar.block_term(&block_term_built)?;
15769 self.push(ASTType::BlockTerm(block_term_built), context);
15770 Ok(())
15771 }
15772
15773 #[parol_runtime::function_name::named]
15778 fn b_bool_term(&mut self, b_bool_term: &ParseTreeType<'t>) -> Result<()> {
15779 let context = function_name!();
15780 trace!("{}", self.trace_item_stack(context));
15781 let b_bool_term = b_bool_term
15782 .token()?
15783 .try_into()
15784 .map_err(parol_runtime::ParolError::UserError)?;
15785 let b_bool_term_built = BBoolTerm { b_bool_term };
15786 self.user_grammar.b_bool_term(&b_bool_term_built)?;
15788 self.push(ASTType::BBoolTerm(b_bool_term_built), context);
15789 Ok(())
15790 }
15791
15792 #[parol_runtime::function_name::named]
15797 fn l_bool_term(&mut self, l_bool_term: &ParseTreeType<'t>) -> Result<()> {
15798 let context = function_name!();
15799 trace!("{}", self.trace_item_stack(context));
15800 let l_bool_term = l_bool_term
15801 .token()?
15802 .try_into()
15803 .map_err(parol_runtime::ParolError::UserError)?;
15804 let l_bool_term_built = LBoolTerm { l_bool_term };
15805 self.user_grammar.l_bool_term(&l_bool_term_built)?;
15807 self.push(ASTType::LBoolTerm(l_bool_term_built), context);
15808 Ok(())
15809 }
15810
15811 #[parol_runtime::function_name::named]
15816 fn case_term(&mut self, case_term: &ParseTreeType<'t>) -> Result<()> {
15817 let context = function_name!();
15818 trace!("{}", self.trace_item_stack(context));
15819 let case_term = case_term
15820 .token()?
15821 .try_into()
15822 .map_err(parol_runtime::ParolError::UserError)?;
15823 let case_term_built = CaseTerm { case_term };
15824 self.user_grammar.case_term(&case_term_built)?;
15826 self.push(ASTType::CaseTerm(case_term_built), context);
15827 Ok(())
15828 }
15829
15830 #[parol_runtime::function_name::named]
15835 fn clock_term(&mut self, clock_term: &ParseTreeType<'t>) -> Result<()> {
15836 let context = function_name!();
15837 trace!("{}", self.trace_item_stack(context));
15838 let clock_term = clock_term
15839 .token()?
15840 .try_into()
15841 .map_err(parol_runtime::ParolError::UserError)?;
15842 let clock_term_built = ClockTerm { clock_term };
15843 self.user_grammar.clock_term(&clock_term_built)?;
15845 self.push(ASTType::ClockTerm(clock_term_built), context);
15846 Ok(())
15847 }
15848
15849 #[parol_runtime::function_name::named]
15854 fn clock_posedge_term(&mut self, clock_posedge_term: &ParseTreeType<'t>) -> Result<()> {
15855 let context = function_name!();
15856 trace!("{}", self.trace_item_stack(context));
15857 let clock_posedge_term = clock_posedge_term
15858 .token()?
15859 .try_into()
15860 .map_err(parol_runtime::ParolError::UserError)?;
15861 let clock_posedge_term_built = ClockPosedgeTerm { clock_posedge_term };
15862 self.user_grammar
15864 .clock_posedge_term(&clock_posedge_term_built)?;
15865 self.push(ASTType::ClockPosedgeTerm(clock_posedge_term_built), context);
15866 Ok(())
15867 }
15868
15869 #[parol_runtime::function_name::named]
15874 fn clock_negedge_term(&mut self, clock_negedge_term: &ParseTreeType<'t>) -> Result<()> {
15875 let context = function_name!();
15876 trace!("{}", self.trace_item_stack(context));
15877 let clock_negedge_term = clock_negedge_term
15878 .token()?
15879 .try_into()
15880 .map_err(parol_runtime::ParolError::UserError)?;
15881 let clock_negedge_term_built = ClockNegedgeTerm { clock_negedge_term };
15882 self.user_grammar
15884 .clock_negedge_term(&clock_negedge_term_built)?;
15885 self.push(ASTType::ClockNegedgeTerm(clock_negedge_term_built), context);
15886 Ok(())
15887 }
15888
15889 #[parol_runtime::function_name::named]
15894 fn connect_term(&mut self, connect_term: &ParseTreeType<'t>) -> Result<()> {
15895 let context = function_name!();
15896 trace!("{}", self.trace_item_stack(context));
15897 let connect_term = connect_term
15898 .token()?
15899 .try_into()
15900 .map_err(parol_runtime::ParolError::UserError)?;
15901 let connect_term_built = ConnectTerm { connect_term };
15902 self.user_grammar.connect_term(&connect_term_built)?;
15904 self.push(ASTType::ConnectTerm(connect_term_built), context);
15905 Ok(())
15906 }
15907
15908 #[parol_runtime::function_name::named]
15913 fn const_term(&mut self, const_term: &ParseTreeType<'t>) -> Result<()> {
15914 let context = function_name!();
15915 trace!("{}", self.trace_item_stack(context));
15916 let const_term = const_term
15917 .token()?
15918 .try_into()
15919 .map_err(parol_runtime::ParolError::UserError)?;
15920 let const_term_built = ConstTerm { const_term };
15921 self.user_grammar.const_term(&const_term_built)?;
15923 self.push(ASTType::ConstTerm(const_term_built), context);
15924 Ok(())
15925 }
15926
15927 #[parol_runtime::function_name::named]
15932 fn converse_term(&mut self, converse_term: &ParseTreeType<'t>) -> Result<()> {
15933 let context = function_name!();
15934 trace!("{}", self.trace_item_stack(context));
15935 let converse_term = converse_term
15936 .token()?
15937 .try_into()
15938 .map_err(parol_runtime::ParolError::UserError)?;
15939 let converse_term_built = ConverseTerm { converse_term };
15940 self.user_grammar.converse_term(&converse_term_built)?;
15942 self.push(ASTType::ConverseTerm(converse_term_built), context);
15943 Ok(())
15944 }
15945
15946 #[parol_runtime::function_name::named]
15951 fn default_term(&mut self, default_term: &ParseTreeType<'t>) -> Result<()> {
15952 let context = function_name!();
15953 trace!("{}", self.trace_item_stack(context));
15954 let default_term = default_term
15955 .token()?
15956 .try_into()
15957 .map_err(parol_runtime::ParolError::UserError)?;
15958 let default_term_built = DefaultTerm { default_term };
15959 self.user_grammar.default_term(&default_term_built)?;
15961 self.push(ASTType::DefaultTerm(default_term_built), context);
15962 Ok(())
15963 }
15964
15965 #[parol_runtime::function_name::named]
15970 fn else_term(&mut self, else_term: &ParseTreeType<'t>) -> Result<()> {
15971 let context = function_name!();
15972 trace!("{}", self.trace_item_stack(context));
15973 let else_term = else_term
15974 .token()?
15975 .try_into()
15976 .map_err(parol_runtime::ParolError::UserError)?;
15977 let else_term_built = ElseTerm { else_term };
15978 self.user_grammar.else_term(&else_term_built)?;
15980 self.push(ASTType::ElseTerm(else_term_built), context);
15981 Ok(())
15982 }
15983
15984 #[parol_runtime::function_name::named]
15989 fn embed_term(&mut self, embed_term: &ParseTreeType<'t>) -> Result<()> {
15990 let context = function_name!();
15991 trace!("{}", self.trace_item_stack(context));
15992 let embed_term = embed_term
15993 .token()?
15994 .try_into()
15995 .map_err(parol_runtime::ParolError::UserError)?;
15996 let embed_term_built = EmbedTerm { embed_term };
15997 self.user_grammar.embed_term(&embed_term_built)?;
15999 self.push(ASTType::EmbedTerm(embed_term_built), context);
16000 Ok(())
16001 }
16002
16003 #[parol_runtime::function_name::named]
16008 fn enum_term(&mut self, enum_term: &ParseTreeType<'t>) -> Result<()> {
16009 let context = function_name!();
16010 trace!("{}", self.trace_item_stack(context));
16011 let enum_term = enum_term
16012 .token()?
16013 .try_into()
16014 .map_err(parol_runtime::ParolError::UserError)?;
16015 let enum_term_built = EnumTerm { enum_term };
16016 self.user_grammar.enum_term(&enum_term_built)?;
16018 self.push(ASTType::EnumTerm(enum_term_built), context);
16019 Ok(())
16020 }
16021
16022 #[parol_runtime::function_name::named]
16027 fn f32_term(&mut self, f32_term: &ParseTreeType<'t>) -> Result<()> {
16028 let context = function_name!();
16029 trace!("{}", self.trace_item_stack(context));
16030 let f32_term = f32_term
16031 .token()?
16032 .try_into()
16033 .map_err(parol_runtime::ParolError::UserError)?;
16034 let f32_term_built = F32Term { f32_term };
16035 self.user_grammar.f32_term(&f32_term_built)?;
16037 self.push(ASTType::F32Term(f32_term_built), context);
16038 Ok(())
16039 }
16040
16041 #[parol_runtime::function_name::named]
16046 fn f64_term(&mut self, f64_term: &ParseTreeType<'t>) -> Result<()> {
16047 let context = function_name!();
16048 trace!("{}", self.trace_item_stack(context));
16049 let f64_term = f64_term
16050 .token()?
16051 .try_into()
16052 .map_err(parol_runtime::ParolError::UserError)?;
16053 let f64_term_built = F64Term { f64_term };
16054 self.user_grammar.f64_term(&f64_term_built)?;
16056 self.push(ASTType::F64Term(f64_term_built), context);
16057 Ok(())
16058 }
16059
16060 #[parol_runtime::function_name::named]
16065 fn false_term(&mut self, false_term: &ParseTreeType<'t>) -> Result<()> {
16066 let context = function_name!();
16067 trace!("{}", self.trace_item_stack(context));
16068 let false_term = false_term
16069 .token()?
16070 .try_into()
16071 .map_err(parol_runtime::ParolError::UserError)?;
16072 let false_term_built = FalseTerm { false_term };
16073 self.user_grammar.false_term(&false_term_built)?;
16075 self.push(ASTType::FalseTerm(false_term_built), context);
16076 Ok(())
16077 }
16078
16079 #[parol_runtime::function_name::named]
16084 fn final_term(&mut self, final_term: &ParseTreeType<'t>) -> Result<()> {
16085 let context = function_name!();
16086 trace!("{}", self.trace_item_stack(context));
16087 let final_term = final_term
16088 .token()?
16089 .try_into()
16090 .map_err(parol_runtime::ParolError::UserError)?;
16091 let final_term_built = FinalTerm { final_term };
16092 self.user_grammar.final_term(&final_term_built)?;
16094 self.push(ASTType::FinalTerm(final_term_built), context);
16095 Ok(())
16096 }
16097
16098 #[parol_runtime::function_name::named]
16103 fn for_term(&mut self, for_term: &ParseTreeType<'t>) -> Result<()> {
16104 let context = function_name!();
16105 trace!("{}", self.trace_item_stack(context));
16106 let for_term = for_term
16107 .token()?
16108 .try_into()
16109 .map_err(parol_runtime::ParolError::UserError)?;
16110 let for_term_built = ForTerm { for_term };
16111 self.user_grammar.for_term(&for_term_built)?;
16113 self.push(ASTType::ForTerm(for_term_built), context);
16114 Ok(())
16115 }
16116
16117 #[parol_runtime::function_name::named]
16122 fn function_term(&mut self, function_term: &ParseTreeType<'t>) -> Result<()> {
16123 let context = function_name!();
16124 trace!("{}", self.trace_item_stack(context));
16125 let function_term = function_term
16126 .token()?
16127 .try_into()
16128 .map_err(parol_runtime::ParolError::UserError)?;
16129 let function_term_built = FunctionTerm { function_term };
16130 self.user_grammar.function_term(&function_term_built)?;
16132 self.push(ASTType::FunctionTerm(function_term_built), context);
16133 Ok(())
16134 }
16135
16136 #[parol_runtime::function_name::named]
16141 fn i8_term(&mut self, i8_term: &ParseTreeType<'t>) -> Result<()> {
16142 let context = function_name!();
16143 trace!("{}", self.trace_item_stack(context));
16144 let i8_term = i8_term
16145 .token()?
16146 .try_into()
16147 .map_err(parol_runtime::ParolError::UserError)?;
16148 let i8_term_built = I8Term { i8_term };
16149 self.user_grammar.i8_term(&i8_term_built)?;
16151 self.push(ASTType::I8Term(i8_term_built), context);
16152 Ok(())
16153 }
16154
16155 #[parol_runtime::function_name::named]
16160 fn i16_term(&mut self, i16_term: &ParseTreeType<'t>) -> Result<()> {
16161 let context = function_name!();
16162 trace!("{}", self.trace_item_stack(context));
16163 let i16_term = i16_term
16164 .token()?
16165 .try_into()
16166 .map_err(parol_runtime::ParolError::UserError)?;
16167 let i16_term_built = I16Term { i16_term };
16168 self.user_grammar.i16_term(&i16_term_built)?;
16170 self.push(ASTType::I16Term(i16_term_built), context);
16171 Ok(())
16172 }
16173
16174 #[parol_runtime::function_name::named]
16179 fn i32_term(&mut self, i32_term: &ParseTreeType<'t>) -> Result<()> {
16180 let context = function_name!();
16181 trace!("{}", self.trace_item_stack(context));
16182 let i32_term = i32_term
16183 .token()?
16184 .try_into()
16185 .map_err(parol_runtime::ParolError::UserError)?;
16186 let i32_term_built = I32Term { i32_term };
16187 self.user_grammar.i32_term(&i32_term_built)?;
16189 self.push(ASTType::I32Term(i32_term_built), context);
16190 Ok(())
16191 }
16192
16193 #[parol_runtime::function_name::named]
16198 fn i64_term(&mut self, i64_term: &ParseTreeType<'t>) -> Result<()> {
16199 let context = function_name!();
16200 trace!("{}", self.trace_item_stack(context));
16201 let i64_term = i64_term
16202 .token()?
16203 .try_into()
16204 .map_err(parol_runtime::ParolError::UserError)?;
16205 let i64_term_built = I64Term { i64_term };
16206 self.user_grammar.i64_term(&i64_term_built)?;
16208 self.push(ASTType::I64Term(i64_term_built), context);
16209 Ok(())
16210 }
16211
16212 #[parol_runtime::function_name::named]
16217 fn if_reset_term(&mut self, if_reset_term: &ParseTreeType<'t>) -> Result<()> {
16218 let context = function_name!();
16219 trace!("{}", self.trace_item_stack(context));
16220 let if_reset_term = if_reset_term
16221 .token()?
16222 .try_into()
16223 .map_err(parol_runtime::ParolError::UserError)?;
16224 let if_reset_term_built = IfResetTerm { if_reset_term };
16225 self.user_grammar.if_reset_term(&if_reset_term_built)?;
16227 self.push(ASTType::IfResetTerm(if_reset_term_built), context);
16228 Ok(())
16229 }
16230
16231 #[parol_runtime::function_name::named]
16236 fn if_term(&mut self, if_term: &ParseTreeType<'t>) -> Result<()> {
16237 let context = function_name!();
16238 trace!("{}", self.trace_item_stack(context));
16239 let if_term = if_term
16240 .token()?
16241 .try_into()
16242 .map_err(parol_runtime::ParolError::UserError)?;
16243 let if_term_built = IfTerm { if_term };
16244 self.user_grammar.if_term(&if_term_built)?;
16246 self.push(ASTType::IfTerm(if_term_built), context);
16247 Ok(())
16248 }
16249
16250 #[parol_runtime::function_name::named]
16255 fn import_term(&mut self, import_term: &ParseTreeType<'t>) -> Result<()> {
16256 let context = function_name!();
16257 trace!("{}", self.trace_item_stack(context));
16258 let import_term = import_term
16259 .token()?
16260 .try_into()
16261 .map_err(parol_runtime::ParolError::UserError)?;
16262 let import_term_built = ImportTerm { import_term };
16263 self.user_grammar.import_term(&import_term_built)?;
16265 self.push(ASTType::ImportTerm(import_term_built), context);
16266 Ok(())
16267 }
16268
16269 #[parol_runtime::function_name::named]
16274 fn include_term(&mut self, include_term: &ParseTreeType<'t>) -> Result<()> {
16275 let context = function_name!();
16276 trace!("{}", self.trace_item_stack(context));
16277 let include_term = include_term
16278 .token()?
16279 .try_into()
16280 .map_err(parol_runtime::ParolError::UserError)?;
16281 let include_term_built = IncludeTerm { include_term };
16282 self.user_grammar.include_term(&include_term_built)?;
16284 self.push(ASTType::IncludeTerm(include_term_built), context);
16285 Ok(())
16286 }
16287
16288 #[parol_runtime::function_name::named]
16293 fn initial_term(&mut self, initial_term: &ParseTreeType<'t>) -> Result<()> {
16294 let context = function_name!();
16295 trace!("{}", self.trace_item_stack(context));
16296 let initial_term = initial_term
16297 .token()?
16298 .try_into()
16299 .map_err(parol_runtime::ParolError::UserError)?;
16300 let initial_term_built = InitialTerm { initial_term };
16301 self.user_grammar.initial_term(&initial_term_built)?;
16303 self.push(ASTType::InitialTerm(initial_term_built), context);
16304 Ok(())
16305 }
16306
16307 #[parol_runtime::function_name::named]
16312 fn inout_term(&mut self, inout_term: &ParseTreeType<'t>) -> Result<()> {
16313 let context = function_name!();
16314 trace!("{}", self.trace_item_stack(context));
16315 let inout_term = inout_term
16316 .token()?
16317 .try_into()
16318 .map_err(parol_runtime::ParolError::UserError)?;
16319 let inout_term_built = InoutTerm { inout_term };
16320 self.user_grammar.inout_term(&inout_term_built)?;
16322 self.push(ASTType::InoutTerm(inout_term_built), context);
16323 Ok(())
16324 }
16325
16326 #[parol_runtime::function_name::named]
16331 fn input_term(&mut self, input_term: &ParseTreeType<'t>) -> Result<()> {
16332 let context = function_name!();
16333 trace!("{}", self.trace_item_stack(context));
16334 let input_term = input_term
16335 .token()?
16336 .try_into()
16337 .map_err(parol_runtime::ParolError::UserError)?;
16338 let input_term_built = InputTerm { input_term };
16339 self.user_grammar.input_term(&input_term_built)?;
16341 self.push(ASTType::InputTerm(input_term_built), context);
16342 Ok(())
16343 }
16344
16345 #[parol_runtime::function_name::named]
16350 fn inside_term(&mut self, inside_term: &ParseTreeType<'t>) -> Result<()> {
16351 let context = function_name!();
16352 trace!("{}", self.trace_item_stack(context));
16353 let inside_term = inside_term
16354 .token()?
16355 .try_into()
16356 .map_err(parol_runtime::ParolError::UserError)?;
16357 let inside_term_built = InsideTerm { inside_term };
16358 self.user_grammar.inside_term(&inside_term_built)?;
16360 self.push(ASTType::InsideTerm(inside_term_built), context);
16361 Ok(())
16362 }
16363
16364 #[parol_runtime::function_name::named]
16369 fn inst_term(&mut self, inst_term: &ParseTreeType<'t>) -> Result<()> {
16370 let context = function_name!();
16371 trace!("{}", self.trace_item_stack(context));
16372 let inst_term = inst_term
16373 .token()?
16374 .try_into()
16375 .map_err(parol_runtime::ParolError::UserError)?;
16376 let inst_term_built = InstTerm { inst_term };
16377 self.user_grammar.inst_term(&inst_term_built)?;
16379 self.push(ASTType::InstTerm(inst_term_built), context);
16380 Ok(())
16381 }
16382
16383 #[parol_runtime::function_name::named]
16388 fn interface_term(&mut self, interface_term: &ParseTreeType<'t>) -> Result<()> {
16389 let context = function_name!();
16390 trace!("{}", self.trace_item_stack(context));
16391 let interface_term = interface_term
16392 .token()?
16393 .try_into()
16394 .map_err(parol_runtime::ParolError::UserError)?;
16395 let interface_term_built = InterfaceTerm { interface_term };
16396 self.user_grammar.interface_term(&interface_term_built)?;
16398 self.push(ASTType::InterfaceTerm(interface_term_built), context);
16399 Ok(())
16400 }
16401
16402 #[parol_runtime::function_name::named]
16407 fn in_term(&mut self, in_term: &ParseTreeType<'t>) -> Result<()> {
16408 let context = function_name!();
16409 trace!("{}", self.trace_item_stack(context));
16410 let in_term = in_term
16411 .token()?
16412 .try_into()
16413 .map_err(parol_runtime::ParolError::UserError)?;
16414 let in_term_built = InTerm { in_term };
16415 self.user_grammar.in_term(&in_term_built)?;
16417 self.push(ASTType::InTerm(in_term_built), context);
16418 Ok(())
16419 }
16420
16421 #[parol_runtime::function_name::named]
16426 fn let_term(&mut self, let_term: &ParseTreeType<'t>) -> Result<()> {
16427 let context = function_name!();
16428 trace!("{}", self.trace_item_stack(context));
16429 let let_term = let_term
16430 .token()?
16431 .try_into()
16432 .map_err(parol_runtime::ParolError::UserError)?;
16433 let let_term_built = LetTerm { let_term };
16434 self.user_grammar.let_term(&let_term_built)?;
16436 self.push(ASTType::LetTerm(let_term_built), context);
16437 Ok(())
16438 }
16439
16440 #[parol_runtime::function_name::named]
16445 fn logic_term(&mut self, logic_term: &ParseTreeType<'t>) -> Result<()> {
16446 let context = function_name!();
16447 trace!("{}", self.trace_item_stack(context));
16448 let logic_term = logic_term
16449 .token()?
16450 .try_into()
16451 .map_err(parol_runtime::ParolError::UserError)?;
16452 let logic_term_built = LogicTerm { logic_term };
16453 self.user_grammar.logic_term(&logic_term_built)?;
16455 self.push(ASTType::LogicTerm(logic_term_built), context);
16456 Ok(())
16457 }
16458
16459 #[parol_runtime::function_name::named]
16464 fn lsb_term(&mut self, lsb_term: &ParseTreeType<'t>) -> Result<()> {
16465 let context = function_name!();
16466 trace!("{}", self.trace_item_stack(context));
16467 let lsb_term = lsb_term
16468 .token()?
16469 .try_into()
16470 .map_err(parol_runtime::ParolError::UserError)?;
16471 let lsb_term_built = LsbTerm { lsb_term };
16472 self.user_grammar.lsb_term(&lsb_term_built)?;
16474 self.push(ASTType::LsbTerm(lsb_term_built), context);
16475 Ok(())
16476 }
16477
16478 #[parol_runtime::function_name::named]
16483 fn modport_term(&mut self, modport_term: &ParseTreeType<'t>) -> Result<()> {
16484 let context = function_name!();
16485 trace!("{}", self.trace_item_stack(context));
16486 let modport_term = modport_term
16487 .token()?
16488 .try_into()
16489 .map_err(parol_runtime::ParolError::UserError)?;
16490 let modport_term_built = ModportTerm { modport_term };
16491 self.user_grammar.modport_term(&modport_term_built)?;
16493 self.push(ASTType::ModportTerm(modport_term_built), context);
16494 Ok(())
16495 }
16496
16497 #[parol_runtime::function_name::named]
16502 fn module_term(&mut self, module_term: &ParseTreeType<'t>) -> Result<()> {
16503 let context = function_name!();
16504 trace!("{}", self.trace_item_stack(context));
16505 let module_term = module_term
16506 .token()?
16507 .try_into()
16508 .map_err(parol_runtime::ParolError::UserError)?;
16509 let module_term_built = ModuleTerm { module_term };
16510 self.user_grammar.module_term(&module_term_built)?;
16512 self.push(ASTType::ModuleTerm(module_term_built), context);
16513 Ok(())
16514 }
16515
16516 #[parol_runtime::function_name::named]
16521 fn msb_term(&mut self, msb_term: &ParseTreeType<'t>) -> Result<()> {
16522 let context = function_name!();
16523 trace!("{}", self.trace_item_stack(context));
16524 let msb_term = msb_term
16525 .token()?
16526 .try_into()
16527 .map_err(parol_runtime::ParolError::UserError)?;
16528 let msb_term_built = MsbTerm { msb_term };
16529 self.user_grammar.msb_term(&msb_term_built)?;
16531 self.push(ASTType::MsbTerm(msb_term_built), context);
16532 Ok(())
16533 }
16534
16535 #[parol_runtime::function_name::named]
16540 fn output_term(&mut self, output_term: &ParseTreeType<'t>) -> Result<()> {
16541 let context = function_name!();
16542 trace!("{}", self.trace_item_stack(context));
16543 let output_term = output_term
16544 .token()?
16545 .try_into()
16546 .map_err(parol_runtime::ParolError::UserError)?;
16547 let output_term_built = OutputTerm { output_term };
16548 self.user_grammar.output_term(&output_term_built)?;
16550 self.push(ASTType::OutputTerm(output_term_built), context);
16551 Ok(())
16552 }
16553
16554 #[parol_runtime::function_name::named]
16559 fn outside_term(&mut self, outside_term: &ParseTreeType<'t>) -> Result<()> {
16560 let context = function_name!();
16561 trace!("{}", self.trace_item_stack(context));
16562 let outside_term = outside_term
16563 .token()?
16564 .try_into()
16565 .map_err(parol_runtime::ParolError::UserError)?;
16566 let outside_term_built = OutsideTerm { outside_term };
16567 self.user_grammar.outside_term(&outside_term_built)?;
16569 self.push(ASTType::OutsideTerm(outside_term_built), context);
16570 Ok(())
16571 }
16572
16573 #[parol_runtime::function_name::named]
16578 fn package_term(&mut self, package_term: &ParseTreeType<'t>) -> Result<()> {
16579 let context = function_name!();
16580 trace!("{}", self.trace_item_stack(context));
16581 let package_term = package_term
16582 .token()?
16583 .try_into()
16584 .map_err(parol_runtime::ParolError::UserError)?;
16585 let package_term_built = PackageTerm { package_term };
16586 self.user_grammar.package_term(&package_term_built)?;
16588 self.push(ASTType::PackageTerm(package_term_built), context);
16589 Ok(())
16590 }
16591
16592 #[parol_runtime::function_name::named]
16597 fn param_term(&mut self, param_term: &ParseTreeType<'t>) -> Result<()> {
16598 let context = function_name!();
16599 trace!("{}", self.trace_item_stack(context));
16600 let param_term = param_term
16601 .token()?
16602 .try_into()
16603 .map_err(parol_runtime::ParolError::UserError)?;
16604 let param_term_built = ParamTerm { param_term };
16605 self.user_grammar.param_term(¶m_term_built)?;
16607 self.push(ASTType::ParamTerm(param_term_built), context);
16608 Ok(())
16609 }
16610
16611 #[parol_runtime::function_name::named]
16616 fn proto_term(&mut self, proto_term: &ParseTreeType<'t>) -> Result<()> {
16617 let context = function_name!();
16618 trace!("{}", self.trace_item_stack(context));
16619 let proto_term = proto_term
16620 .token()?
16621 .try_into()
16622 .map_err(parol_runtime::ParolError::UserError)?;
16623 let proto_term_built = ProtoTerm { proto_term };
16624 self.user_grammar.proto_term(&proto_term_built)?;
16626 self.push(ASTType::ProtoTerm(proto_term_built), context);
16627 Ok(())
16628 }
16629
16630 #[parol_runtime::function_name::named]
16635 fn pub_term(&mut self, pub_term: &ParseTreeType<'t>) -> Result<()> {
16636 let context = function_name!();
16637 trace!("{}", self.trace_item_stack(context));
16638 let pub_term = pub_term
16639 .token()?
16640 .try_into()
16641 .map_err(parol_runtime::ParolError::UserError)?;
16642 let pub_term_built = PubTerm { pub_term };
16643 self.user_grammar.pub_term(&pub_term_built)?;
16645 self.push(ASTType::PubTerm(pub_term_built), context);
16646 Ok(())
16647 }
16648
16649 #[parol_runtime::function_name::named]
16654 fn repeat_term(&mut self, repeat_term: &ParseTreeType<'t>) -> Result<()> {
16655 let context = function_name!();
16656 trace!("{}", self.trace_item_stack(context));
16657 let repeat_term = repeat_term
16658 .token()?
16659 .try_into()
16660 .map_err(parol_runtime::ParolError::UserError)?;
16661 let repeat_term_built = RepeatTerm { repeat_term };
16662 self.user_grammar.repeat_term(&repeat_term_built)?;
16664 self.push(ASTType::RepeatTerm(repeat_term_built), context);
16665 Ok(())
16666 }
16667
16668 #[parol_runtime::function_name::named]
16673 fn reset_term(&mut self, reset_term: &ParseTreeType<'t>) -> Result<()> {
16674 let context = function_name!();
16675 trace!("{}", self.trace_item_stack(context));
16676 let reset_term = reset_term
16677 .token()?
16678 .try_into()
16679 .map_err(parol_runtime::ParolError::UserError)?;
16680 let reset_term_built = ResetTerm { reset_term };
16681 self.user_grammar.reset_term(&reset_term_built)?;
16683 self.push(ASTType::ResetTerm(reset_term_built), context);
16684 Ok(())
16685 }
16686
16687 #[parol_runtime::function_name::named]
16692 fn reset_async_high_term(&mut self, reset_async_high_term: &ParseTreeType<'t>) -> Result<()> {
16693 let context = function_name!();
16694 trace!("{}", self.trace_item_stack(context));
16695 let reset_async_high_term = reset_async_high_term
16696 .token()?
16697 .try_into()
16698 .map_err(parol_runtime::ParolError::UserError)?;
16699 let reset_async_high_term_built = ResetAsyncHighTerm {
16700 reset_async_high_term,
16701 };
16702 self.user_grammar
16704 .reset_async_high_term(&reset_async_high_term_built)?;
16705 self.push(
16706 ASTType::ResetAsyncHighTerm(reset_async_high_term_built),
16707 context,
16708 );
16709 Ok(())
16710 }
16711
16712 #[parol_runtime::function_name::named]
16717 fn reset_async_low_term(&mut self, reset_async_low_term: &ParseTreeType<'t>) -> Result<()> {
16718 let context = function_name!();
16719 trace!("{}", self.trace_item_stack(context));
16720 let reset_async_low_term = reset_async_low_term
16721 .token()?
16722 .try_into()
16723 .map_err(parol_runtime::ParolError::UserError)?;
16724 let reset_async_low_term_built = ResetAsyncLowTerm {
16725 reset_async_low_term,
16726 };
16727 self.user_grammar
16729 .reset_async_low_term(&reset_async_low_term_built)?;
16730 self.push(
16731 ASTType::ResetAsyncLowTerm(reset_async_low_term_built),
16732 context,
16733 );
16734 Ok(())
16735 }
16736
16737 #[parol_runtime::function_name::named]
16742 fn reset_sync_high_term(&mut self, reset_sync_high_term: &ParseTreeType<'t>) -> Result<()> {
16743 let context = function_name!();
16744 trace!("{}", self.trace_item_stack(context));
16745 let reset_sync_high_term = reset_sync_high_term
16746 .token()?
16747 .try_into()
16748 .map_err(parol_runtime::ParolError::UserError)?;
16749 let reset_sync_high_term_built = ResetSyncHighTerm {
16750 reset_sync_high_term,
16751 };
16752 self.user_grammar
16754 .reset_sync_high_term(&reset_sync_high_term_built)?;
16755 self.push(
16756 ASTType::ResetSyncHighTerm(reset_sync_high_term_built),
16757 context,
16758 );
16759 Ok(())
16760 }
16761
16762 #[parol_runtime::function_name::named]
16767 fn reset_sync_low_term(&mut self, reset_sync_low_term: &ParseTreeType<'t>) -> Result<()> {
16768 let context = function_name!();
16769 trace!("{}", self.trace_item_stack(context));
16770 let reset_sync_low_term = reset_sync_low_term
16771 .token()?
16772 .try_into()
16773 .map_err(parol_runtime::ParolError::UserError)?;
16774 let reset_sync_low_term_built = ResetSyncLowTerm {
16775 reset_sync_low_term,
16776 };
16777 self.user_grammar
16779 .reset_sync_low_term(&reset_sync_low_term_built)?;
16780 self.push(
16781 ASTType::ResetSyncLowTerm(reset_sync_low_term_built),
16782 context,
16783 );
16784 Ok(())
16785 }
16786
16787 #[parol_runtime::function_name::named]
16792 fn return_term(&mut self, return_term: &ParseTreeType<'t>) -> Result<()> {
16793 let context = function_name!();
16794 trace!("{}", self.trace_item_stack(context));
16795 let return_term = return_term
16796 .token()?
16797 .try_into()
16798 .map_err(parol_runtime::ParolError::UserError)?;
16799 let return_term_built = ReturnTerm { return_term };
16800 self.user_grammar.return_term(&return_term_built)?;
16802 self.push(ASTType::ReturnTerm(return_term_built), context);
16803 Ok(())
16804 }
16805
16806 #[parol_runtime::function_name::named]
16811 fn rev_term(&mut self, rev_term: &ParseTreeType<'t>) -> Result<()> {
16812 let context = function_name!();
16813 trace!("{}", self.trace_item_stack(context));
16814 let rev_term = rev_term
16815 .token()?
16816 .try_into()
16817 .map_err(parol_runtime::ParolError::UserError)?;
16818 let rev_term_built = RevTerm { rev_term };
16819 self.user_grammar.rev_term(&rev_term_built)?;
16821 self.push(ASTType::RevTerm(rev_term_built), context);
16822 Ok(())
16823 }
16824
16825 #[parol_runtime::function_name::named]
16830 fn break_term(&mut self, break_term: &ParseTreeType<'t>) -> Result<()> {
16831 let context = function_name!();
16832 trace!("{}", self.trace_item_stack(context));
16833 let break_term = break_term
16834 .token()?
16835 .try_into()
16836 .map_err(parol_runtime::ParolError::UserError)?;
16837 let break_term_built = BreakTerm { break_term };
16838 self.user_grammar.break_term(&break_term_built)?;
16840 self.push(ASTType::BreakTerm(break_term_built), context);
16841 Ok(())
16842 }
16843
16844 #[parol_runtime::function_name::named]
16849 fn same_term(&mut self, same_term: &ParseTreeType<'t>) -> Result<()> {
16850 let context = function_name!();
16851 trace!("{}", self.trace_item_stack(context));
16852 let same_term = same_term
16853 .token()?
16854 .try_into()
16855 .map_err(parol_runtime::ParolError::UserError)?;
16856 let same_term_built = SameTerm { same_term };
16857 self.user_grammar.same_term(&same_term_built)?;
16859 self.push(ASTType::SameTerm(same_term_built), context);
16860 Ok(())
16861 }
16862
16863 #[parol_runtime::function_name::named]
16868 fn signed_term(&mut self, signed_term: &ParseTreeType<'t>) -> Result<()> {
16869 let context = function_name!();
16870 trace!("{}", self.trace_item_stack(context));
16871 let signed_term = signed_term
16872 .token()?
16873 .try_into()
16874 .map_err(parol_runtime::ParolError::UserError)?;
16875 let signed_term_built = SignedTerm { signed_term };
16876 self.user_grammar.signed_term(&signed_term_built)?;
16878 self.push(ASTType::SignedTerm(signed_term_built), context);
16879 Ok(())
16880 }
16881
16882 #[parol_runtime::function_name::named]
16887 fn step_term(&mut self, step_term: &ParseTreeType<'t>) -> Result<()> {
16888 let context = function_name!();
16889 trace!("{}", self.trace_item_stack(context));
16890 let step_term = step_term
16891 .token()?
16892 .try_into()
16893 .map_err(parol_runtime::ParolError::UserError)?;
16894 let step_term_built = StepTerm { step_term };
16895 self.user_grammar.step_term(&step_term_built)?;
16897 self.push(ASTType::StepTerm(step_term_built), context);
16898 Ok(())
16899 }
16900
16901 #[parol_runtime::function_name::named]
16906 fn string_term(&mut self, string_term: &ParseTreeType<'t>) -> Result<()> {
16907 let context = function_name!();
16908 trace!("{}", self.trace_item_stack(context));
16909 let string_term = string_term
16910 .token()?
16911 .try_into()
16912 .map_err(parol_runtime::ParolError::UserError)?;
16913 let string_term_built = StringTerm { string_term };
16914 self.user_grammar.string_term(&string_term_built)?;
16916 self.push(ASTType::StringTerm(string_term_built), context);
16917 Ok(())
16918 }
16919
16920 #[parol_runtime::function_name::named]
16925 fn struct_term(&mut self, struct_term: &ParseTreeType<'t>) -> Result<()> {
16926 let context = function_name!();
16927 trace!("{}", self.trace_item_stack(context));
16928 let struct_term = struct_term
16929 .token()?
16930 .try_into()
16931 .map_err(parol_runtime::ParolError::UserError)?;
16932 let struct_term_built = StructTerm { struct_term };
16933 self.user_grammar.struct_term(&struct_term_built)?;
16935 self.push(ASTType::StructTerm(struct_term_built), context);
16936 Ok(())
16937 }
16938
16939 #[parol_runtime::function_name::named]
16944 fn switch_term(&mut self, switch_term: &ParseTreeType<'t>) -> Result<()> {
16945 let context = function_name!();
16946 trace!("{}", self.trace_item_stack(context));
16947 let switch_term = switch_term
16948 .token()?
16949 .try_into()
16950 .map_err(parol_runtime::ParolError::UserError)?;
16951 let switch_term_built = SwitchTerm { switch_term };
16952 self.user_grammar.switch_term(&switch_term_built)?;
16954 self.push(ASTType::SwitchTerm(switch_term_built), context);
16955 Ok(())
16956 }
16957
16958 #[parol_runtime::function_name::named]
16963 fn tri_term(&mut self, tri_term: &ParseTreeType<'t>) -> Result<()> {
16964 let context = function_name!();
16965 trace!("{}", self.trace_item_stack(context));
16966 let tri_term = tri_term
16967 .token()?
16968 .try_into()
16969 .map_err(parol_runtime::ParolError::UserError)?;
16970 let tri_term_built = TriTerm { tri_term };
16971 self.user_grammar.tri_term(&tri_term_built)?;
16973 self.push(ASTType::TriTerm(tri_term_built), context);
16974 Ok(())
16975 }
16976
16977 #[parol_runtime::function_name::named]
16982 fn true_term(&mut self, true_term: &ParseTreeType<'t>) -> Result<()> {
16983 let context = function_name!();
16984 trace!("{}", self.trace_item_stack(context));
16985 let true_term = true_term
16986 .token()?
16987 .try_into()
16988 .map_err(parol_runtime::ParolError::UserError)?;
16989 let true_term_built = TrueTerm { true_term };
16990 self.user_grammar.true_term(&true_term_built)?;
16992 self.push(ASTType::TrueTerm(true_term_built), context);
16993 Ok(())
16994 }
16995
16996 #[parol_runtime::function_name::named]
17001 fn type_term(&mut self, type_term: &ParseTreeType<'t>) -> Result<()> {
17002 let context = function_name!();
17003 trace!("{}", self.trace_item_stack(context));
17004 let type_term = type_term
17005 .token()?
17006 .try_into()
17007 .map_err(parol_runtime::ParolError::UserError)?;
17008 let type_term_built = TypeTerm { type_term };
17009 self.user_grammar.type_term(&type_term_built)?;
17011 self.push(ASTType::TypeTerm(type_term_built), context);
17012 Ok(())
17013 }
17014
17015 #[parol_runtime::function_name::named]
17020 fn p8_term(&mut self, p8_term: &ParseTreeType<'t>) -> Result<()> {
17021 let context = function_name!();
17022 trace!("{}", self.trace_item_stack(context));
17023 let p8_term = p8_term
17024 .token()?
17025 .try_into()
17026 .map_err(parol_runtime::ParolError::UserError)?;
17027 let p8_term_built = P8Term { p8_term };
17028 self.user_grammar.p8_term(&p8_term_built)?;
17030 self.push(ASTType::P8Term(p8_term_built), context);
17031 Ok(())
17032 }
17033
17034 #[parol_runtime::function_name::named]
17039 fn p16_term(&mut self, p16_term: &ParseTreeType<'t>) -> Result<()> {
17040 let context = function_name!();
17041 trace!("{}", self.trace_item_stack(context));
17042 let p16_term = p16_term
17043 .token()?
17044 .try_into()
17045 .map_err(parol_runtime::ParolError::UserError)?;
17046 let p16_term_built = P16Term { p16_term };
17047 self.user_grammar.p16_term(&p16_term_built)?;
17049 self.push(ASTType::P16Term(p16_term_built), context);
17050 Ok(())
17051 }
17052
17053 #[parol_runtime::function_name::named]
17058 fn p32_term(&mut self, p32_term: &ParseTreeType<'t>) -> Result<()> {
17059 let context = function_name!();
17060 trace!("{}", self.trace_item_stack(context));
17061 let p32_term = p32_term
17062 .token()?
17063 .try_into()
17064 .map_err(parol_runtime::ParolError::UserError)?;
17065 let p32_term_built = P32Term { p32_term };
17066 self.user_grammar.p32_term(&p32_term_built)?;
17068 self.push(ASTType::P32Term(p32_term_built), context);
17069 Ok(())
17070 }
17071
17072 #[parol_runtime::function_name::named]
17077 fn p64_term(&mut self, p64_term: &ParseTreeType<'t>) -> Result<()> {
17078 let context = function_name!();
17079 trace!("{}", self.trace_item_stack(context));
17080 let p64_term = p64_term
17081 .token()?
17082 .try_into()
17083 .map_err(parol_runtime::ParolError::UserError)?;
17084 let p64_term_built = P64Term { p64_term };
17085 self.user_grammar.p64_term(&p64_term_built)?;
17087 self.push(ASTType::P64Term(p64_term_built), context);
17088 Ok(())
17089 }
17090
17091 #[parol_runtime::function_name::named]
17096 fn u8_term(&mut self, u8_term: &ParseTreeType<'t>) -> Result<()> {
17097 let context = function_name!();
17098 trace!("{}", self.trace_item_stack(context));
17099 let u8_term = u8_term
17100 .token()?
17101 .try_into()
17102 .map_err(parol_runtime::ParolError::UserError)?;
17103 let u8_term_built = U8Term { u8_term };
17104 self.user_grammar.u8_term(&u8_term_built)?;
17106 self.push(ASTType::U8Term(u8_term_built), context);
17107 Ok(())
17108 }
17109
17110 #[parol_runtime::function_name::named]
17115 fn u16_term(&mut self, u16_term: &ParseTreeType<'t>) -> Result<()> {
17116 let context = function_name!();
17117 trace!("{}", self.trace_item_stack(context));
17118 let u16_term = u16_term
17119 .token()?
17120 .try_into()
17121 .map_err(parol_runtime::ParolError::UserError)?;
17122 let u16_term_built = U16Term { u16_term };
17123 self.user_grammar.u16_term(&u16_term_built)?;
17125 self.push(ASTType::U16Term(u16_term_built), context);
17126 Ok(())
17127 }
17128
17129 #[parol_runtime::function_name::named]
17134 fn u32_term(&mut self, u32_term: &ParseTreeType<'t>) -> Result<()> {
17135 let context = function_name!();
17136 trace!("{}", self.trace_item_stack(context));
17137 let u32_term = u32_term
17138 .token()?
17139 .try_into()
17140 .map_err(parol_runtime::ParolError::UserError)?;
17141 let u32_term_built = U32Term { u32_term };
17142 self.user_grammar.u32_term(&u32_term_built)?;
17144 self.push(ASTType::U32Term(u32_term_built), context);
17145 Ok(())
17146 }
17147
17148 #[parol_runtime::function_name::named]
17153 fn u64_term(&mut self, u64_term: &ParseTreeType<'t>) -> Result<()> {
17154 let context = function_name!();
17155 trace!("{}", self.trace_item_stack(context));
17156 let u64_term = u64_term
17157 .token()?
17158 .try_into()
17159 .map_err(parol_runtime::ParolError::UserError)?;
17160 let u64_term_built = U64Term { u64_term };
17161 self.user_grammar.u64_term(&u64_term_built)?;
17163 self.push(ASTType::U64Term(u64_term_built), context);
17164 Ok(())
17165 }
17166
17167 #[parol_runtime::function_name::named]
17172 fn union_term(&mut self, union_term: &ParseTreeType<'t>) -> Result<()> {
17173 let context = function_name!();
17174 trace!("{}", self.trace_item_stack(context));
17175 let union_term = union_term
17176 .token()?
17177 .try_into()
17178 .map_err(parol_runtime::ParolError::UserError)?;
17179 let union_term_built = UnionTerm { union_term };
17180 self.user_grammar.union_term(&union_term_built)?;
17182 self.push(ASTType::UnionTerm(union_term_built), context);
17183 Ok(())
17184 }
17185
17186 #[parol_runtime::function_name::named]
17191 fn unsafe_term(&mut self, unsafe_term: &ParseTreeType<'t>) -> Result<()> {
17192 let context = function_name!();
17193 trace!("{}", self.trace_item_stack(context));
17194 let unsafe_term = unsafe_term
17195 .token()?
17196 .try_into()
17197 .map_err(parol_runtime::ParolError::UserError)?;
17198 let unsafe_term_built = UnsafeTerm { unsafe_term };
17199 self.user_grammar.unsafe_term(&unsafe_term_built)?;
17201 self.push(ASTType::UnsafeTerm(unsafe_term_built), context);
17202 Ok(())
17203 }
17204
17205 #[parol_runtime::function_name::named]
17210 fn var_term(&mut self, var_term: &ParseTreeType<'t>) -> Result<()> {
17211 let context = function_name!();
17212 trace!("{}", self.trace_item_stack(context));
17213 let var_term = var_term
17214 .token()?
17215 .try_into()
17216 .map_err(parol_runtime::ParolError::UserError)?;
17217 let var_term_built = VarTerm { var_term };
17218 self.user_grammar.var_term(&var_term_built)?;
17220 self.push(ASTType::VarTerm(var_term_built), context);
17221 Ok(())
17222 }
17223
17224 #[parol_runtime::function_name::named]
17229 fn dollar_identifier_term(&mut self, dollar_identifier_term: &ParseTreeType<'t>) -> Result<()> {
17230 let context = function_name!();
17231 trace!("{}", self.trace_item_stack(context));
17232 let dollar_identifier_term = dollar_identifier_term
17233 .token()?
17234 .try_into()
17235 .map_err(parol_runtime::ParolError::UserError)?;
17236 let dollar_identifier_term_built = DollarIdentifierTerm {
17237 dollar_identifier_term,
17238 };
17239 self.user_grammar
17241 .dollar_identifier_term(&dollar_identifier_term_built)?;
17242 self.push(
17243 ASTType::DollarIdentifierTerm(dollar_identifier_term_built),
17244 context,
17245 );
17246 Ok(())
17247 }
17248
17249 #[parol_runtime::function_name::named]
17254 fn identifier_term(&mut self, identifier_term: &ParseTreeType<'t>) -> Result<()> {
17255 let context = function_name!();
17256 trace!("{}", self.trace_item_stack(context));
17257 let identifier_term = identifier_term
17258 .token()?
17259 .try_into()
17260 .map_err(parol_runtime::ParolError::UserError)?;
17261 let identifier_term_built = IdentifierTerm { identifier_term };
17262 self.user_grammar.identifier_term(&identifier_term_built)?;
17264 self.push(ASTType::IdentifierTerm(identifier_term_built), context);
17265 Ok(())
17266 }
17267
17268 #[parol_runtime::function_name::named]
17273 fn any_term(&mut self, any_term: &ParseTreeType<'t>) -> Result<()> {
17274 let context = function_name!();
17275 trace!("{}", self.trace_item_stack(context));
17276 let any_term = any_term
17277 .token()?
17278 .try_into()
17279 .map_err(parol_runtime::ParolError::UserError)?;
17280 let any_term_built = AnyTerm { any_term };
17281 self.user_grammar.any_term(&any_term_built)?;
17283 self.push(ASTType::AnyTerm(any_term_built), context);
17284 Ok(())
17285 }
17286
17287 #[parol_runtime::function_name::named]
17292 fn comments(&mut self, _comments_opt: &ParseTreeType<'t>) -> Result<()> {
17293 let context = function_name!();
17294 trace!("{}", self.trace_item_stack(context));
17295 let comments_opt = pop_item!(self, comments_opt, CommentsOpt, context);
17296 let comments_built = Comments { comments_opt };
17297 self.user_grammar.comments(&comments_built)?;
17299 self.push(ASTType::Comments(comments_built), context);
17300 Ok(())
17301 }
17302
17303 #[parol_runtime::function_name::named]
17308 fn comments_opt_0(&mut self, _comments_term: &ParseTreeType<'t>) -> Result<()> {
17309 let context = function_name!();
17310 trace!("{}", self.trace_item_stack(context));
17311 let comments_term = pop_item!(self, comments_term, CommentsTerm, context);
17312 let comments_opt_0_built = CommentsOpt {
17313 comments_term: Box::new(comments_term),
17314 };
17315 self.push(ASTType::CommentsOpt(Some(comments_opt_0_built)), context);
17316 Ok(())
17317 }
17318
17319 #[parol_runtime::function_name::named]
17324 fn comments_opt_1(&mut self) -> Result<()> {
17325 let context = function_name!();
17326 trace!("{}", self.trace_item_stack(context));
17327 self.push(ASTType::CommentsOpt(None), context);
17328 Ok(())
17329 }
17330
17331 #[parol_runtime::function_name::named]
17336 fn start_token(&mut self, _comments: &ParseTreeType<'t>) -> Result<()> {
17337 let context = function_name!();
17338 trace!("{}", self.trace_item_stack(context));
17339 let comments = pop_item!(self, comments, Comments, context);
17340 let start_token_built = StartToken {
17341 comments: Box::new(comments),
17342 };
17343 self.user_grammar.start_token(&start_token_built)?;
17345 self.push(ASTType::StartToken(start_token_built), context);
17346 Ok(())
17347 }
17348
17349 #[parol_runtime::function_name::named]
17354 fn string_literal_token(
17355 &mut self,
17356 _string_literal_term: &ParseTreeType<'t>,
17357 _comments: &ParseTreeType<'t>,
17358 ) -> Result<()> {
17359 let context = function_name!();
17360 trace!("{}", self.trace_item_stack(context));
17361 let comments = pop_item!(self, comments, Comments, context);
17362 let string_literal_term = pop_item!(self, string_literal_term, StringLiteralTerm, context);
17363 let string_literal_token_built = StringLiteralToken {
17364 string_literal_term: (&string_literal_term)
17365 .try_into()
17366 .map_err(parol_runtime::ParolError::UserError)?,
17367 comments: Box::new(comments),
17368 };
17369 self.user_grammar
17371 .string_literal_token(&string_literal_token_built)?;
17372 self.push(
17373 ASTType::StringLiteralToken(string_literal_token_built),
17374 context,
17375 );
17376 Ok(())
17377 }
17378
17379 #[parol_runtime::function_name::named]
17384 fn exponent_token(
17385 &mut self,
17386 _exponent_term: &ParseTreeType<'t>,
17387 _comments: &ParseTreeType<'t>,
17388 ) -> Result<()> {
17389 let context = function_name!();
17390 trace!("{}", self.trace_item_stack(context));
17391 let comments = pop_item!(self, comments, Comments, context);
17392 let exponent_term = pop_item!(self, exponent_term, ExponentTerm, context);
17393 let exponent_token_built = ExponentToken {
17394 exponent_term: (&exponent_term)
17395 .try_into()
17396 .map_err(parol_runtime::ParolError::UserError)?,
17397 comments: Box::new(comments),
17398 };
17399 self.user_grammar.exponent_token(&exponent_token_built)?;
17401 self.push(ASTType::ExponentToken(exponent_token_built), context);
17402 Ok(())
17403 }
17404
17405 #[parol_runtime::function_name::named]
17410 fn fixed_point_token(
17411 &mut self,
17412 _fixed_point_term: &ParseTreeType<'t>,
17413 _comments: &ParseTreeType<'t>,
17414 ) -> Result<()> {
17415 let context = function_name!();
17416 trace!("{}", self.trace_item_stack(context));
17417 let comments = pop_item!(self, comments, Comments, context);
17418 let fixed_point_term = pop_item!(self, fixed_point_term, FixedPointTerm, context);
17419 let fixed_point_token_built = FixedPointToken {
17420 fixed_point_term: (&fixed_point_term)
17421 .try_into()
17422 .map_err(parol_runtime::ParolError::UserError)?,
17423 comments: Box::new(comments),
17424 };
17425 self.user_grammar
17427 .fixed_point_token(&fixed_point_token_built)?;
17428 self.push(ASTType::FixedPointToken(fixed_point_token_built), context);
17429 Ok(())
17430 }
17431
17432 #[parol_runtime::function_name::named]
17437 fn based_token(
17438 &mut self,
17439 _based_term: &ParseTreeType<'t>,
17440 _comments: &ParseTreeType<'t>,
17441 ) -> Result<()> {
17442 let context = function_name!();
17443 trace!("{}", self.trace_item_stack(context));
17444 let comments = pop_item!(self, comments, Comments, context);
17445 let based_term = pop_item!(self, based_term, BasedTerm, context);
17446 let based_token_built = BasedToken {
17447 based_term: (&based_term)
17448 .try_into()
17449 .map_err(parol_runtime::ParolError::UserError)?,
17450 comments: Box::new(comments),
17451 };
17452 self.user_grammar.based_token(&based_token_built)?;
17454 self.push(ASTType::BasedToken(based_token_built), context);
17455 Ok(())
17456 }
17457
17458 #[parol_runtime::function_name::named]
17463 fn base_less_token(
17464 &mut self,
17465 _base_less_term: &ParseTreeType<'t>,
17466 _comments: &ParseTreeType<'t>,
17467 ) -> Result<()> {
17468 let context = function_name!();
17469 trace!("{}", self.trace_item_stack(context));
17470 let comments = pop_item!(self, comments, Comments, context);
17471 let base_less_term = pop_item!(self, base_less_term, BaseLessTerm, context);
17472 let base_less_token_built = BaseLessToken {
17473 base_less_term: (&base_less_term)
17474 .try_into()
17475 .map_err(parol_runtime::ParolError::UserError)?,
17476 comments: Box::new(comments),
17477 };
17478 self.user_grammar.base_less_token(&base_less_token_built)?;
17480 self.push(ASTType::BaseLessToken(base_less_token_built), context);
17481 Ok(())
17482 }
17483
17484 #[parol_runtime::function_name::named]
17489 fn all_bit_token(
17490 &mut self,
17491 _all_bit_term: &ParseTreeType<'t>,
17492 _comments: &ParseTreeType<'t>,
17493 ) -> Result<()> {
17494 let context = function_name!();
17495 trace!("{}", self.trace_item_stack(context));
17496 let comments = pop_item!(self, comments, Comments, context);
17497 let all_bit_term = pop_item!(self, all_bit_term, AllBitTerm, context);
17498 let all_bit_token_built = AllBitToken {
17499 all_bit_term: (&all_bit_term)
17500 .try_into()
17501 .map_err(parol_runtime::ParolError::UserError)?,
17502 comments: Box::new(comments),
17503 };
17504 self.user_grammar.all_bit_token(&all_bit_token_built)?;
17506 self.push(ASTType::AllBitToken(all_bit_token_built), context);
17507 Ok(())
17508 }
17509
17510 #[parol_runtime::function_name::named]
17515 fn assignment_operator_token(
17516 &mut self,
17517 _assignment_operator_term: &ParseTreeType<'t>,
17518 _comments: &ParseTreeType<'t>,
17519 ) -> Result<()> {
17520 let context = function_name!();
17521 trace!("{}", self.trace_item_stack(context));
17522 let comments = pop_item!(self, comments, Comments, context);
17523 let assignment_operator_term = pop_item!(
17524 self,
17525 assignment_operator_term,
17526 AssignmentOperatorTerm,
17527 context
17528 );
17529 let assignment_operator_token_built = AssignmentOperatorToken {
17530 assignment_operator_term: (&assignment_operator_term)
17531 .try_into()
17532 .map_err(parol_runtime::ParolError::UserError)?,
17533 comments: Box::new(comments),
17534 };
17535 self.user_grammar
17537 .assignment_operator_token(&assignment_operator_token_built)?;
17538 self.push(
17539 ASTType::AssignmentOperatorToken(assignment_operator_token_built),
17540 context,
17541 );
17542 Ok(())
17543 }
17544
17545 #[parol_runtime::function_name::named]
17550 fn diamond_operator_token(
17551 &mut self,
17552 _diamond_operator_term: &ParseTreeType<'t>,
17553 _comments: &ParseTreeType<'t>,
17554 ) -> Result<()> {
17555 let context = function_name!();
17556 trace!("{}", self.trace_item_stack(context));
17557 let comments = pop_item!(self, comments, Comments, context);
17558 let diamond_operator_term =
17559 pop_item!(self, diamond_operator_term, DiamondOperatorTerm, context);
17560 let diamond_operator_token_built = DiamondOperatorToken {
17561 diamond_operator_term: (&diamond_operator_term)
17562 .try_into()
17563 .map_err(parol_runtime::ParolError::UserError)?,
17564 comments: Box::new(comments),
17565 };
17566 self.user_grammar
17568 .diamond_operator_token(&diamond_operator_token_built)?;
17569 self.push(
17570 ASTType::DiamondOperatorToken(diamond_operator_token_built),
17571 context,
17572 );
17573 Ok(())
17574 }
17575
17576 #[parol_runtime::function_name::named]
17581 fn operator01_token(
17582 &mut self,
17583 _operator01_term: &ParseTreeType<'t>,
17584 _comments: &ParseTreeType<'t>,
17585 ) -> Result<()> {
17586 let context = function_name!();
17587 trace!("{}", self.trace_item_stack(context));
17588 let comments = pop_item!(self, comments, Comments, context);
17589 let operator01_term = pop_item!(self, operator01_term, Operator01Term, context);
17590 let operator01_token_built = Operator01Token {
17591 operator01_term: (&operator01_term)
17592 .try_into()
17593 .map_err(parol_runtime::ParolError::UserError)?,
17594 comments: Box::new(comments),
17595 };
17596 self.user_grammar
17598 .operator01_token(&operator01_token_built)?;
17599 self.push(ASTType::Operator01Token(operator01_token_built), context);
17600 Ok(())
17601 }
17602
17603 #[parol_runtime::function_name::named]
17608 fn operator02_token(
17609 &mut self,
17610 _operator02_term: &ParseTreeType<'t>,
17611 _comments: &ParseTreeType<'t>,
17612 ) -> Result<()> {
17613 let context = function_name!();
17614 trace!("{}", self.trace_item_stack(context));
17615 let comments = pop_item!(self, comments, Comments, context);
17616 let operator02_term = pop_item!(self, operator02_term, Operator02Term, context);
17617 let operator02_token_built = Operator02Token {
17618 operator02_term: (&operator02_term)
17619 .try_into()
17620 .map_err(parol_runtime::ParolError::UserError)?,
17621 comments: Box::new(comments),
17622 };
17623 self.user_grammar
17625 .operator02_token(&operator02_token_built)?;
17626 self.push(ASTType::Operator02Token(operator02_token_built), context);
17627 Ok(())
17628 }
17629
17630 #[parol_runtime::function_name::named]
17635 fn operator03_token(
17636 &mut self,
17637 _operator03_term: &ParseTreeType<'t>,
17638 _comments: &ParseTreeType<'t>,
17639 ) -> Result<()> {
17640 let context = function_name!();
17641 trace!("{}", self.trace_item_stack(context));
17642 let comments = pop_item!(self, comments, Comments, context);
17643 let operator03_term = pop_item!(self, operator03_term, Operator03Term, context);
17644 let operator03_token_built = Operator03Token {
17645 operator03_term: (&operator03_term)
17646 .try_into()
17647 .map_err(parol_runtime::ParolError::UserError)?,
17648 comments: Box::new(comments),
17649 };
17650 self.user_grammar
17652 .operator03_token(&operator03_token_built)?;
17653 self.push(ASTType::Operator03Token(operator03_token_built), context);
17654 Ok(())
17655 }
17656
17657 #[parol_runtime::function_name::named]
17662 fn operator04_token(
17663 &mut self,
17664 _operator04_term: &ParseTreeType<'t>,
17665 _comments: &ParseTreeType<'t>,
17666 ) -> Result<()> {
17667 let context = function_name!();
17668 trace!("{}", self.trace_item_stack(context));
17669 let comments = pop_item!(self, comments, Comments, context);
17670 let operator04_term = pop_item!(self, operator04_term, Operator04Term, context);
17671 let operator04_token_built = Operator04Token {
17672 operator04_term: (&operator04_term)
17673 .try_into()
17674 .map_err(parol_runtime::ParolError::UserError)?,
17675 comments: Box::new(comments),
17676 };
17677 self.user_grammar
17679 .operator04_token(&operator04_token_built)?;
17680 self.push(ASTType::Operator04Token(operator04_token_built), context);
17681 Ok(())
17682 }
17683
17684 #[parol_runtime::function_name::named]
17689 fn operator05_token(
17690 &mut self,
17691 _operator05_term: &ParseTreeType<'t>,
17692 _comments: &ParseTreeType<'t>,
17693 ) -> Result<()> {
17694 let context = function_name!();
17695 trace!("{}", self.trace_item_stack(context));
17696 let comments = pop_item!(self, comments, Comments, context);
17697 let operator05_term = pop_item!(self, operator05_term, Operator05Term, context);
17698 let operator05_token_built = Operator05Token {
17699 operator05_term: (&operator05_term)
17700 .try_into()
17701 .map_err(parol_runtime::ParolError::UserError)?,
17702 comments: Box::new(comments),
17703 };
17704 self.user_grammar
17706 .operator05_token(&operator05_token_built)?;
17707 self.push(ASTType::Operator05Token(operator05_token_built), context);
17708 Ok(())
17709 }
17710
17711 #[parol_runtime::function_name::named]
17716 fn operator06_token(
17717 &mut self,
17718 _operator06_term: &ParseTreeType<'t>,
17719 _comments: &ParseTreeType<'t>,
17720 ) -> Result<()> {
17721 let context = function_name!();
17722 trace!("{}", self.trace_item_stack(context));
17723 let comments = pop_item!(self, comments, Comments, context);
17724 let operator06_term = pop_item!(self, operator06_term, Operator06Term, context);
17725 let operator06_token_built = Operator06Token {
17726 operator06_term: (&operator06_term)
17727 .try_into()
17728 .map_err(parol_runtime::ParolError::UserError)?,
17729 comments: Box::new(comments),
17730 };
17731 self.user_grammar
17733 .operator06_token(&operator06_token_built)?;
17734 self.push(ASTType::Operator06Token(operator06_token_built), context);
17735 Ok(())
17736 }
17737
17738 #[parol_runtime::function_name::named]
17743 fn operator07_token(
17744 &mut self,
17745 _operator07_term: &ParseTreeType<'t>,
17746 _comments: &ParseTreeType<'t>,
17747 ) -> Result<()> {
17748 let context = function_name!();
17749 trace!("{}", self.trace_item_stack(context));
17750 let comments = pop_item!(self, comments, Comments, context);
17751 let operator07_term = pop_item!(self, operator07_term, Operator07Term, context);
17752 let operator07_token_built = Operator07Token {
17753 operator07_term: (&operator07_term)
17754 .try_into()
17755 .map_err(parol_runtime::ParolError::UserError)?,
17756 comments: Box::new(comments),
17757 };
17758 self.user_grammar
17760 .operator07_token(&operator07_token_built)?;
17761 self.push(ASTType::Operator07Token(operator07_token_built), context);
17762 Ok(())
17763 }
17764
17765 #[parol_runtime::function_name::named]
17770 fn operator08_token(
17771 &mut self,
17772 _operator08_term: &ParseTreeType<'t>,
17773 _comments: &ParseTreeType<'t>,
17774 ) -> Result<()> {
17775 let context = function_name!();
17776 trace!("{}", self.trace_item_stack(context));
17777 let comments = pop_item!(self, comments, Comments, context);
17778 let operator08_term = pop_item!(self, operator08_term, Operator08Term, context);
17779 let operator08_token_built = Operator08Token {
17780 operator08_term: (&operator08_term)
17781 .try_into()
17782 .map_err(parol_runtime::ParolError::UserError)?,
17783 comments: Box::new(comments),
17784 };
17785 self.user_grammar
17787 .operator08_token(&operator08_token_built)?;
17788 self.push(ASTType::Operator08Token(operator08_token_built), context);
17789 Ok(())
17790 }
17791
17792 #[parol_runtime::function_name::named]
17797 fn unary_operator_token(
17798 &mut self,
17799 _unary_operator_term: &ParseTreeType<'t>,
17800 _comments: &ParseTreeType<'t>,
17801 ) -> Result<()> {
17802 let context = function_name!();
17803 trace!("{}", self.trace_item_stack(context));
17804 let comments = pop_item!(self, comments, Comments, context);
17805 let unary_operator_term = pop_item!(self, unary_operator_term, UnaryOperatorTerm, context);
17806 let unary_operator_token_built = UnaryOperatorToken {
17807 unary_operator_term: (&unary_operator_term)
17808 .try_into()
17809 .map_err(parol_runtime::ParolError::UserError)?,
17810 comments: Box::new(comments),
17811 };
17812 self.user_grammar
17814 .unary_operator_token(&unary_operator_token_built)?;
17815 self.push(
17816 ASTType::UnaryOperatorToken(unary_operator_token_built),
17817 context,
17818 );
17819 Ok(())
17820 }
17821
17822 #[parol_runtime::function_name::named]
17827 fn colon_token(
17828 &mut self,
17829 _colon_term: &ParseTreeType<'t>,
17830 _comments: &ParseTreeType<'t>,
17831 ) -> Result<()> {
17832 let context = function_name!();
17833 trace!("{}", self.trace_item_stack(context));
17834 let comments = pop_item!(self, comments, Comments, context);
17835 let colon_term = pop_item!(self, colon_term, ColonTerm, context);
17836 let colon_token_built = ColonToken {
17837 colon_term: (&colon_term)
17838 .try_into()
17839 .map_err(parol_runtime::ParolError::UserError)?,
17840 comments: Box::new(comments),
17841 };
17842 self.user_grammar.colon_token(&colon_token_built)?;
17844 self.push(ASTType::ColonToken(colon_token_built), context);
17845 Ok(())
17846 }
17847
17848 #[parol_runtime::function_name::named]
17853 fn colon_colon_l_angle_token(
17854 &mut self,
17855 _colon_colon_l_angle_term: &ParseTreeType<'t>,
17856 _comments: &ParseTreeType<'t>,
17857 ) -> Result<()> {
17858 let context = function_name!();
17859 trace!("{}", self.trace_item_stack(context));
17860 let comments = pop_item!(self, comments, Comments, context);
17861 let colon_colon_l_angle_term = pop_item!(
17862 self,
17863 colon_colon_l_angle_term,
17864 ColonColonLAngleTerm,
17865 context
17866 );
17867 let colon_colon_l_angle_token_built = ColonColonLAngleToken {
17868 colon_colon_l_angle_term: (&colon_colon_l_angle_term)
17869 .try_into()
17870 .map_err(parol_runtime::ParolError::UserError)?,
17871 comments: Box::new(comments),
17872 };
17873 self.user_grammar
17875 .colon_colon_l_angle_token(&colon_colon_l_angle_token_built)?;
17876 self.push(
17877 ASTType::ColonColonLAngleToken(colon_colon_l_angle_token_built),
17878 context,
17879 );
17880 Ok(())
17881 }
17882
17883 #[parol_runtime::function_name::named]
17888 fn colon_colon_token(
17889 &mut self,
17890 _colon_colon_term: &ParseTreeType<'t>,
17891 _comments: &ParseTreeType<'t>,
17892 ) -> Result<()> {
17893 let context = function_name!();
17894 trace!("{}", self.trace_item_stack(context));
17895 let comments = pop_item!(self, comments, Comments, context);
17896 let colon_colon_term = pop_item!(self, colon_colon_term, ColonColonTerm, context);
17897 let colon_colon_token_built = ColonColonToken {
17898 colon_colon_term: (&colon_colon_term)
17899 .try_into()
17900 .map_err(parol_runtime::ParolError::UserError)?,
17901 comments: Box::new(comments),
17902 };
17903 self.user_grammar
17905 .colon_colon_token(&colon_colon_token_built)?;
17906 self.push(ASTType::ColonColonToken(colon_colon_token_built), context);
17907 Ok(())
17908 }
17909
17910 #[parol_runtime::function_name::named]
17915 fn comma_token(
17916 &mut self,
17917 _comma_term: &ParseTreeType<'t>,
17918 _comments: &ParseTreeType<'t>,
17919 ) -> Result<()> {
17920 let context = function_name!();
17921 trace!("{}", self.trace_item_stack(context));
17922 let comments = pop_item!(self, comments, Comments, context);
17923 let comma_term = pop_item!(self, comma_term, CommaTerm, context);
17924 let comma_token_built = CommaToken {
17925 comma_term: (&comma_term)
17926 .try_into()
17927 .map_err(parol_runtime::ParolError::UserError)?,
17928 comments: Box::new(comments),
17929 };
17930 self.user_grammar.comma_token(&comma_token_built)?;
17932 self.push(ASTType::CommaToken(comma_token_built), context);
17933 Ok(())
17934 }
17935
17936 #[parol_runtime::function_name::named]
17941 fn dot_dot_token(
17942 &mut self,
17943 _dot_dot_term: &ParseTreeType<'t>,
17944 _comments: &ParseTreeType<'t>,
17945 ) -> Result<()> {
17946 let context = function_name!();
17947 trace!("{}", self.trace_item_stack(context));
17948 let comments = pop_item!(self, comments, Comments, context);
17949 let dot_dot_term = pop_item!(self, dot_dot_term, DotDotTerm, context);
17950 let dot_dot_token_built = DotDotToken {
17951 dot_dot_term: (&dot_dot_term)
17952 .try_into()
17953 .map_err(parol_runtime::ParolError::UserError)?,
17954 comments: Box::new(comments),
17955 };
17956 self.user_grammar.dot_dot_token(&dot_dot_token_built)?;
17958 self.push(ASTType::DotDotToken(dot_dot_token_built), context);
17959 Ok(())
17960 }
17961
17962 #[parol_runtime::function_name::named]
17967 fn dot_dot_equ_token(
17968 &mut self,
17969 _dot_dot_equ_term: &ParseTreeType<'t>,
17970 _comments: &ParseTreeType<'t>,
17971 ) -> Result<()> {
17972 let context = function_name!();
17973 trace!("{}", self.trace_item_stack(context));
17974 let comments = pop_item!(self, comments, Comments, context);
17975 let dot_dot_equ_term = pop_item!(self, dot_dot_equ_term, DotDotEquTerm, context);
17976 let dot_dot_equ_token_built = DotDotEquToken {
17977 dot_dot_equ_term: (&dot_dot_equ_term)
17978 .try_into()
17979 .map_err(parol_runtime::ParolError::UserError)?,
17980 comments: Box::new(comments),
17981 };
17982 self.user_grammar
17984 .dot_dot_equ_token(&dot_dot_equ_token_built)?;
17985 self.push(ASTType::DotDotEquToken(dot_dot_equ_token_built), context);
17986 Ok(())
17987 }
17988
17989 #[parol_runtime::function_name::named]
17994 fn dot_token(
17995 &mut self,
17996 _dot_term: &ParseTreeType<'t>,
17997 _comments: &ParseTreeType<'t>,
17998 ) -> Result<()> {
17999 let context = function_name!();
18000 trace!("{}", self.trace_item_stack(context));
18001 let comments = pop_item!(self, comments, Comments, context);
18002 let dot_term = pop_item!(self, dot_term, DotTerm, context);
18003 let dot_token_built = DotToken {
18004 dot_term: (&dot_term)
18005 .try_into()
18006 .map_err(parol_runtime::ParolError::UserError)?,
18007 comments: Box::new(comments),
18008 };
18009 self.user_grammar.dot_token(&dot_token_built)?;
18011 self.push(ASTType::DotToken(dot_token_built), context);
18012 Ok(())
18013 }
18014
18015 #[parol_runtime::function_name::named]
18020 fn equ_token(
18021 &mut self,
18022 _equ_term: &ParseTreeType<'t>,
18023 _comments: &ParseTreeType<'t>,
18024 ) -> Result<()> {
18025 let context = function_name!();
18026 trace!("{}", self.trace_item_stack(context));
18027 let comments = pop_item!(self, comments, Comments, context);
18028 let equ_term = pop_item!(self, equ_term, EquTerm, context);
18029 let equ_token_built = EquToken {
18030 equ_term: (&equ_term)
18031 .try_into()
18032 .map_err(parol_runtime::ParolError::UserError)?,
18033 comments: Box::new(comments),
18034 };
18035 self.user_grammar.equ_token(&equ_token_built)?;
18037 self.push(ASTType::EquToken(equ_token_built), context);
18038 Ok(())
18039 }
18040
18041 #[parol_runtime::function_name::named]
18046 fn hash_l_bracket_token(
18047 &mut self,
18048 _hash_l_bracket_term: &ParseTreeType<'t>,
18049 _comments: &ParseTreeType<'t>,
18050 ) -> Result<()> {
18051 let context = function_name!();
18052 trace!("{}", self.trace_item_stack(context));
18053 let comments = pop_item!(self, comments, Comments, context);
18054 let hash_l_bracket_term = pop_item!(self, hash_l_bracket_term, HashLBracketTerm, context);
18055 let hash_l_bracket_token_built = HashLBracketToken {
18056 hash_l_bracket_term: (&hash_l_bracket_term)
18057 .try_into()
18058 .map_err(parol_runtime::ParolError::UserError)?,
18059 comments: Box::new(comments),
18060 };
18061 self.user_grammar
18063 .hash_l_bracket_token(&hash_l_bracket_token_built)?;
18064 self.push(
18065 ASTType::HashLBracketToken(hash_l_bracket_token_built),
18066 context,
18067 );
18068 Ok(())
18069 }
18070
18071 #[parol_runtime::function_name::named]
18076 fn hash_token(
18077 &mut self,
18078 _hash_term: &ParseTreeType<'t>,
18079 _comments: &ParseTreeType<'t>,
18080 ) -> Result<()> {
18081 let context = function_name!();
18082 trace!("{}", self.trace_item_stack(context));
18083 let comments = pop_item!(self, comments, Comments, context);
18084 let hash_term = pop_item!(self, hash_term, HashTerm, context);
18085 let hash_token_built = HashToken {
18086 hash_term: (&hash_term)
18087 .try_into()
18088 .map_err(parol_runtime::ParolError::UserError)?,
18089 comments: Box::new(comments),
18090 };
18091 self.user_grammar.hash_token(&hash_token_built)?;
18093 self.push(ASTType::HashToken(hash_token_built), context);
18094 Ok(())
18095 }
18096
18097 #[parol_runtime::function_name::named]
18102 fn question_token(
18103 &mut self,
18104 _question_term: &ParseTreeType<'t>,
18105 _comments: &ParseTreeType<'t>,
18106 ) -> Result<()> {
18107 let context = function_name!();
18108 trace!("{}", self.trace_item_stack(context));
18109 let comments = pop_item!(self, comments, Comments, context);
18110 let question_term = pop_item!(self, question_term, QuestionTerm, context);
18111 let question_token_built = QuestionToken {
18112 question_term: (&question_term)
18113 .try_into()
18114 .map_err(parol_runtime::ParolError::UserError)?,
18115 comments: Box::new(comments),
18116 };
18117 self.user_grammar.question_token(&question_token_built)?;
18119 self.push(ASTType::QuestionToken(question_token_built), context);
18120 Ok(())
18121 }
18122
18123 #[parol_runtime::function_name::named]
18128 fn quote_l_brace_token(
18129 &mut self,
18130 _quote_l_brace_term: &ParseTreeType<'t>,
18131 _comments: &ParseTreeType<'t>,
18132 ) -> Result<()> {
18133 let context = function_name!();
18134 trace!("{}", self.trace_item_stack(context));
18135 let comments = pop_item!(self, comments, Comments, context);
18136 let quote_l_brace_term = pop_item!(self, quote_l_brace_term, QuoteLBraceTerm, context);
18137 let quote_l_brace_token_built = QuoteLBraceToken {
18138 quote_l_brace_term: ("e_l_brace_term)
18139 .try_into()
18140 .map_err(parol_runtime::ParolError::UserError)?,
18141 comments: Box::new(comments),
18142 };
18143 self.user_grammar
18145 .quote_l_brace_token("e_l_brace_token_built)?;
18146 self.push(
18147 ASTType::QuoteLBraceToken(quote_l_brace_token_built),
18148 context,
18149 );
18150 Ok(())
18151 }
18152
18153 #[parol_runtime::function_name::named]
18158 fn quote_token(
18159 &mut self,
18160 _quote_term: &ParseTreeType<'t>,
18161 _comments: &ParseTreeType<'t>,
18162 ) -> Result<()> {
18163 let context = function_name!();
18164 trace!("{}", self.trace_item_stack(context));
18165 let comments = pop_item!(self, comments, Comments, context);
18166 let quote_term = pop_item!(self, quote_term, QuoteTerm, context);
18167 let quote_token_built = QuoteToken {
18168 quote_term: ("e_term)
18169 .try_into()
18170 .map_err(parol_runtime::ParolError::UserError)?,
18171 comments: Box::new(comments),
18172 };
18173 self.user_grammar.quote_token("e_token_built)?;
18175 self.push(ASTType::QuoteToken(quote_token_built), context);
18176 Ok(())
18177 }
18178
18179 #[parol_runtime::function_name::named]
18184 fn l_angle_token(
18185 &mut self,
18186 _l_angle_term: &ParseTreeType<'t>,
18187 _comments: &ParseTreeType<'t>,
18188 ) -> Result<()> {
18189 let context = function_name!();
18190 trace!("{}", self.trace_item_stack(context));
18191 let comments = pop_item!(self, comments, Comments, context);
18192 let l_angle_term = pop_item!(self, l_angle_term, LAngleTerm, context);
18193 let l_angle_token_built = LAngleToken {
18194 l_angle_term: (&l_angle_term)
18195 .try_into()
18196 .map_err(parol_runtime::ParolError::UserError)?,
18197 comments: Box::new(comments),
18198 };
18199 self.user_grammar.l_angle_token(&l_angle_token_built)?;
18201 self.push(ASTType::LAngleToken(l_angle_token_built), context);
18202 Ok(())
18203 }
18204
18205 #[parol_runtime::function_name::named]
18210 fn embed_l_brace_token(&mut self, _l_brace_term: &ParseTreeType<'t>) -> Result<()> {
18211 let context = function_name!();
18212 trace!("{}", self.trace_item_stack(context));
18213 let l_brace_term = pop_item!(self, l_brace_term, LBraceTerm, context);
18214 let embed_l_brace_token_built = EmbedLBraceToken {
18215 l_brace_term: (&l_brace_term)
18216 .try_into()
18217 .map_err(parol_runtime::ParolError::UserError)?,
18218 };
18219 self.user_grammar
18221 .embed_l_brace_token(&embed_l_brace_token_built)?;
18222 self.push(
18223 ASTType::EmbedLBraceToken(embed_l_brace_token_built),
18224 context,
18225 );
18226 Ok(())
18227 }
18228
18229 #[parol_runtime::function_name::named]
18234 fn escaped_l_brace_token(&mut self, _escaped_l_brace_term: &ParseTreeType<'t>) -> Result<()> {
18235 let context = function_name!();
18236 trace!("{}", self.trace_item_stack(context));
18237 let escaped_l_brace_term =
18238 pop_item!(self, escaped_l_brace_term, EscapedLBraceTerm, context);
18239 let escaped_l_brace_token_built = EscapedLBraceToken {
18240 escaped_l_brace_term: (&escaped_l_brace_term)
18241 .try_into()
18242 .map_err(parol_runtime::ParolError::UserError)?,
18243 };
18244 self.user_grammar
18246 .escaped_l_brace_token(&escaped_l_brace_token_built)?;
18247 self.push(
18248 ASTType::EscapedLBraceToken(escaped_l_brace_token_built),
18249 context,
18250 );
18251 Ok(())
18252 }
18253
18254 #[parol_runtime::function_name::named]
18259 fn triple_l_brace_token(&mut self, _triple_l_brace_term: &ParseTreeType<'t>) -> Result<()> {
18260 let context = function_name!();
18261 trace!("{}", self.trace_item_stack(context));
18262 let triple_l_brace_term = pop_item!(self, triple_l_brace_term, TripleLBraceTerm, context);
18263 let triple_l_brace_token_built = TripleLBraceToken {
18264 triple_l_brace_term: (&triple_l_brace_term)
18265 .try_into()
18266 .map_err(parol_runtime::ParolError::UserError)?,
18267 };
18268 self.user_grammar
18270 .triple_l_brace_token(&triple_l_brace_token_built)?;
18271 self.push(
18272 ASTType::TripleLBraceToken(triple_l_brace_token_built),
18273 context,
18274 );
18275 Ok(())
18276 }
18277
18278 #[parol_runtime::function_name::named]
18283 fn l_brace_token(
18284 &mut self,
18285 _l_brace_term: &ParseTreeType<'t>,
18286 _comments: &ParseTreeType<'t>,
18287 ) -> Result<()> {
18288 let context = function_name!();
18289 trace!("{}", self.trace_item_stack(context));
18290 let comments = pop_item!(self, comments, Comments, context);
18291 let l_brace_term = pop_item!(self, l_brace_term, LBraceTerm, context);
18292 let l_brace_token_built = LBraceToken {
18293 l_brace_term: (&l_brace_term)
18294 .try_into()
18295 .map_err(parol_runtime::ParolError::UserError)?,
18296 comments: Box::new(comments),
18297 };
18298 self.user_grammar.l_brace_token(&l_brace_token_built)?;
18300 self.push(ASTType::LBraceToken(l_brace_token_built), context);
18301 Ok(())
18302 }
18303
18304 #[parol_runtime::function_name::named]
18309 fn l_bracket_token(
18310 &mut self,
18311 _l_bracket_term: &ParseTreeType<'t>,
18312 _comments: &ParseTreeType<'t>,
18313 ) -> Result<()> {
18314 let context = function_name!();
18315 trace!("{}", self.trace_item_stack(context));
18316 let comments = pop_item!(self, comments, Comments, context);
18317 let l_bracket_term = pop_item!(self, l_bracket_term, LBracketTerm, context);
18318 let l_bracket_token_built = LBracketToken {
18319 l_bracket_term: (&l_bracket_term)
18320 .try_into()
18321 .map_err(parol_runtime::ParolError::UserError)?,
18322 comments: Box::new(comments),
18323 };
18324 self.user_grammar.l_bracket_token(&l_bracket_token_built)?;
18326 self.push(ASTType::LBracketToken(l_bracket_token_built), context);
18327 Ok(())
18328 }
18329
18330 #[parol_runtime::function_name::named]
18335 fn l_paren_token(
18336 &mut self,
18337 _l_paren_term: &ParseTreeType<'t>,
18338 _comments: &ParseTreeType<'t>,
18339 ) -> Result<()> {
18340 let context = function_name!();
18341 trace!("{}", self.trace_item_stack(context));
18342 let comments = pop_item!(self, comments, Comments, context);
18343 let l_paren_term = pop_item!(self, l_paren_term, LParenTerm, context);
18344 let l_paren_token_built = LParenToken {
18345 l_paren_term: (&l_paren_term)
18346 .try_into()
18347 .map_err(parol_runtime::ParolError::UserError)?,
18348 comments: Box::new(comments),
18349 };
18350 self.user_grammar.l_paren_token(&l_paren_token_built)?;
18352 self.push(ASTType::LParenToken(l_paren_token_built), context);
18353 Ok(())
18354 }
18355
18356 #[parol_runtime::function_name::named]
18361 fn l_t_minus_token(
18362 &mut self,
18363 _l_t_minus_term: &ParseTreeType<'t>,
18364 _comments: &ParseTreeType<'t>,
18365 ) -> Result<()> {
18366 let context = function_name!();
18367 trace!("{}", self.trace_item_stack(context));
18368 let comments = pop_item!(self, comments, Comments, context);
18369 let l_t_minus_term = pop_item!(self, l_t_minus_term, LTMinusTerm, context);
18370 let l_t_minus_token_built = LTMinusToken {
18371 l_t_minus_term: (&l_t_minus_term)
18372 .try_into()
18373 .map_err(parol_runtime::ParolError::UserError)?,
18374 comments: Box::new(comments),
18375 };
18376 self.user_grammar.l_t_minus_token(&l_t_minus_token_built)?;
18378 self.push(ASTType::LTMinusToken(l_t_minus_token_built), context);
18379 Ok(())
18380 }
18381
18382 #[parol_runtime::function_name::named]
18387 fn minus_colon_token(
18388 &mut self,
18389 _minus_colon_term: &ParseTreeType<'t>,
18390 _comments: &ParseTreeType<'t>,
18391 ) -> Result<()> {
18392 let context = function_name!();
18393 trace!("{}", self.trace_item_stack(context));
18394 let comments = pop_item!(self, comments, Comments, context);
18395 let minus_colon_term = pop_item!(self, minus_colon_term, MinusColonTerm, context);
18396 let minus_colon_token_built = MinusColonToken {
18397 minus_colon_term: (&minus_colon_term)
18398 .try_into()
18399 .map_err(parol_runtime::ParolError::UserError)?,
18400 comments: Box::new(comments),
18401 };
18402 self.user_grammar
18404 .minus_colon_token(&minus_colon_token_built)?;
18405 self.push(ASTType::MinusColonToken(minus_colon_token_built), context);
18406 Ok(())
18407 }
18408
18409 #[parol_runtime::function_name::named]
18414 fn minus_g_t_token(
18415 &mut self,
18416 _minus_g_t_term: &ParseTreeType<'t>,
18417 _comments: &ParseTreeType<'t>,
18418 ) -> Result<()> {
18419 let context = function_name!();
18420 trace!("{}", self.trace_item_stack(context));
18421 let comments = pop_item!(self, comments, Comments, context);
18422 let minus_g_t_term = pop_item!(self, minus_g_t_term, MinusGTTerm, context);
18423 let minus_g_t_token_built = MinusGTToken {
18424 minus_g_t_term: (&minus_g_t_term)
18425 .try_into()
18426 .map_err(parol_runtime::ParolError::UserError)?,
18427 comments: Box::new(comments),
18428 };
18429 self.user_grammar.minus_g_t_token(&minus_g_t_token_built)?;
18431 self.push(ASTType::MinusGTToken(minus_g_t_token_built), context);
18432 Ok(())
18433 }
18434
18435 #[parol_runtime::function_name::named]
18440 fn plus_colon_token(
18441 &mut self,
18442 _plus_colon_term: &ParseTreeType<'t>,
18443 _comments: &ParseTreeType<'t>,
18444 ) -> Result<()> {
18445 let context = function_name!();
18446 trace!("{}", self.trace_item_stack(context));
18447 let comments = pop_item!(self, comments, Comments, context);
18448 let plus_colon_term = pop_item!(self, plus_colon_term, PlusColonTerm, context);
18449 let plus_colon_token_built = PlusColonToken {
18450 plus_colon_term: (&plus_colon_term)
18451 .try_into()
18452 .map_err(parol_runtime::ParolError::UserError)?,
18453 comments: Box::new(comments),
18454 };
18455 self.user_grammar
18457 .plus_colon_token(&plus_colon_token_built)?;
18458 self.push(ASTType::PlusColonToken(plus_colon_token_built), context);
18459 Ok(())
18460 }
18461
18462 #[parol_runtime::function_name::named]
18467 fn r_angle_token(
18468 &mut self,
18469 _r_angle_term: &ParseTreeType<'t>,
18470 _comments: &ParseTreeType<'t>,
18471 ) -> Result<()> {
18472 let context = function_name!();
18473 trace!("{}", self.trace_item_stack(context));
18474 let comments = pop_item!(self, comments, Comments, context);
18475 let r_angle_term = pop_item!(self, r_angle_term, RAngleTerm, context);
18476 let r_angle_token_built = RAngleToken {
18477 r_angle_term: (&r_angle_term)
18478 .try_into()
18479 .map_err(parol_runtime::ParolError::UserError)?,
18480 comments: Box::new(comments),
18481 };
18482 self.user_grammar.r_angle_token(&r_angle_token_built)?;
18484 self.push(ASTType::RAngleToken(r_angle_token_built), context);
18485 Ok(())
18486 }
18487
18488 #[parol_runtime::function_name::named]
18493 fn embed_r_brace_token(&mut self, _r_brace_term: &ParseTreeType<'t>) -> Result<()> {
18494 let context = function_name!();
18495 trace!("{}", self.trace_item_stack(context));
18496 let r_brace_term = pop_item!(self, r_brace_term, RBraceTerm, context);
18497 let embed_r_brace_token_built = EmbedRBraceToken {
18498 r_brace_term: (&r_brace_term)
18499 .try_into()
18500 .map_err(parol_runtime::ParolError::UserError)?,
18501 };
18502 self.user_grammar
18504 .embed_r_brace_token(&embed_r_brace_token_built)?;
18505 self.push(
18506 ASTType::EmbedRBraceToken(embed_r_brace_token_built),
18507 context,
18508 );
18509 Ok(())
18510 }
18511
18512 #[parol_runtime::function_name::named]
18517 fn escaped_r_brace_token(&mut self, _escaped_r_brace_term: &ParseTreeType<'t>) -> Result<()> {
18518 let context = function_name!();
18519 trace!("{}", self.trace_item_stack(context));
18520 let escaped_r_brace_term =
18521 pop_item!(self, escaped_r_brace_term, EscapedRBraceTerm, context);
18522 let escaped_r_brace_token_built = EscapedRBraceToken {
18523 escaped_r_brace_term: (&escaped_r_brace_term)
18524 .try_into()
18525 .map_err(parol_runtime::ParolError::UserError)?,
18526 };
18527 self.user_grammar
18529 .escaped_r_brace_token(&escaped_r_brace_token_built)?;
18530 self.push(
18531 ASTType::EscapedRBraceToken(escaped_r_brace_token_built),
18532 context,
18533 );
18534 Ok(())
18535 }
18536
18537 #[parol_runtime::function_name::named]
18542 fn triple_r_brace_token(
18543 &mut self,
18544 _triple_r_brace_term: &ParseTreeType<'t>,
18545 _comments: &ParseTreeType<'t>,
18546 ) -> Result<()> {
18547 let context = function_name!();
18548 trace!("{}", self.trace_item_stack(context));
18549 let comments = pop_item!(self, comments, Comments, context);
18550 let triple_r_brace_term = pop_item!(self, triple_r_brace_term, TripleRBraceTerm, context);
18551 let triple_r_brace_token_built = TripleRBraceToken {
18552 triple_r_brace_term: (&triple_r_brace_term)
18553 .try_into()
18554 .map_err(parol_runtime::ParolError::UserError)?,
18555 comments: Box::new(comments),
18556 };
18557 self.user_grammar
18559 .triple_r_brace_token(&triple_r_brace_token_built)?;
18560 self.push(
18561 ASTType::TripleRBraceToken(triple_r_brace_token_built),
18562 context,
18563 );
18564 Ok(())
18565 }
18566
18567 #[parol_runtime::function_name::named]
18572 fn r_brace_token(
18573 &mut self,
18574 _r_brace_term: &ParseTreeType<'t>,
18575 _comments: &ParseTreeType<'t>,
18576 ) -> Result<()> {
18577 let context = function_name!();
18578 trace!("{}", self.trace_item_stack(context));
18579 let comments = pop_item!(self, comments, Comments, context);
18580 let r_brace_term = pop_item!(self, r_brace_term, RBraceTerm, context);
18581 let r_brace_token_built = RBraceToken {
18582 r_brace_term: (&r_brace_term)
18583 .try_into()
18584 .map_err(parol_runtime::ParolError::UserError)?,
18585 comments: Box::new(comments),
18586 };
18587 self.user_grammar.r_brace_token(&r_brace_token_built)?;
18589 self.push(ASTType::RBraceToken(r_brace_token_built), context);
18590 Ok(())
18591 }
18592
18593 #[parol_runtime::function_name::named]
18598 fn r_bracket_token(
18599 &mut self,
18600 _r_bracket_term: &ParseTreeType<'t>,
18601 _comments: &ParseTreeType<'t>,
18602 ) -> Result<()> {
18603 let context = function_name!();
18604 trace!("{}", self.trace_item_stack(context));
18605 let comments = pop_item!(self, comments, Comments, context);
18606 let r_bracket_term = pop_item!(self, r_bracket_term, RBracketTerm, context);
18607 let r_bracket_token_built = RBracketToken {
18608 r_bracket_term: (&r_bracket_term)
18609 .try_into()
18610 .map_err(parol_runtime::ParolError::UserError)?,
18611 comments: Box::new(comments),
18612 };
18613 self.user_grammar.r_bracket_token(&r_bracket_token_built)?;
18615 self.push(ASTType::RBracketToken(r_bracket_token_built), context);
18616 Ok(())
18617 }
18618
18619 #[parol_runtime::function_name::named]
18624 fn r_paren_token(
18625 &mut self,
18626 _r_paren_term: &ParseTreeType<'t>,
18627 _comments: &ParseTreeType<'t>,
18628 ) -> Result<()> {
18629 let context = function_name!();
18630 trace!("{}", self.trace_item_stack(context));
18631 let comments = pop_item!(self, comments, Comments, context);
18632 let r_paren_term = pop_item!(self, r_paren_term, RParenTerm, context);
18633 let r_paren_token_built = RParenToken {
18634 r_paren_term: (&r_paren_term)
18635 .try_into()
18636 .map_err(parol_runtime::ParolError::UserError)?,
18637 comments: Box::new(comments),
18638 };
18639 self.user_grammar.r_paren_token(&r_paren_token_built)?;
18641 self.push(ASTType::RParenToken(r_paren_token_built), context);
18642 Ok(())
18643 }
18644
18645 #[parol_runtime::function_name::named]
18650 fn semicolon_token(
18651 &mut self,
18652 _semicolon_term: &ParseTreeType<'t>,
18653 _comments: &ParseTreeType<'t>,
18654 ) -> Result<()> {
18655 let context = function_name!();
18656 trace!("{}", self.trace_item_stack(context));
18657 let comments = pop_item!(self, comments, Comments, context);
18658 let semicolon_term = pop_item!(self, semicolon_term, SemicolonTerm, context);
18659 let semicolon_token_built = SemicolonToken {
18660 semicolon_term: (&semicolon_term)
18661 .try_into()
18662 .map_err(parol_runtime::ParolError::UserError)?,
18663 comments: Box::new(comments),
18664 };
18665 self.user_grammar.semicolon_token(&semicolon_token_built)?;
18667 self.push(ASTType::SemicolonToken(semicolon_token_built), context);
18668 Ok(())
18669 }
18670
18671 #[parol_runtime::function_name::named]
18676 fn star_token(
18677 &mut self,
18678 _star_term: &ParseTreeType<'t>,
18679 _comments: &ParseTreeType<'t>,
18680 ) -> Result<()> {
18681 let context = function_name!();
18682 trace!("{}", self.trace_item_stack(context));
18683 let comments = pop_item!(self, comments, Comments, context);
18684 let star_term = pop_item!(self, star_term, StarTerm, context);
18685 let star_token_built = StarToken {
18686 star_term: (&star_term)
18687 .try_into()
18688 .map_err(parol_runtime::ParolError::UserError)?,
18689 comments: Box::new(comments),
18690 };
18691 self.user_grammar.star_token(&star_token_built)?;
18693 self.push(ASTType::StarToken(star_token_built), context);
18694 Ok(())
18695 }
18696
18697 #[parol_runtime::function_name::named]
18702 fn alias_token(
18703 &mut self,
18704 _alias_term: &ParseTreeType<'t>,
18705 _comments: &ParseTreeType<'t>,
18706 ) -> Result<()> {
18707 let context = function_name!();
18708 trace!("{}", self.trace_item_stack(context));
18709 let comments = pop_item!(self, comments, Comments, context);
18710 let alias_term = pop_item!(self, alias_term, AliasTerm, context);
18711 let alias_token_built = AliasToken {
18712 alias_term: (&alias_term)
18713 .try_into()
18714 .map_err(parol_runtime::ParolError::UserError)?,
18715 comments: Box::new(comments),
18716 };
18717 self.user_grammar.alias_token(&alias_token_built)?;
18719 self.push(ASTType::AliasToken(alias_token_built), context);
18720 Ok(())
18721 }
18722
18723 #[parol_runtime::function_name::named]
18728 fn always_comb_token(
18729 &mut self,
18730 _always_comb_term: &ParseTreeType<'t>,
18731 _comments: &ParseTreeType<'t>,
18732 ) -> Result<()> {
18733 let context = function_name!();
18734 trace!("{}", self.trace_item_stack(context));
18735 let comments = pop_item!(self, comments, Comments, context);
18736 let always_comb_term = pop_item!(self, always_comb_term, AlwaysCombTerm, context);
18737 let always_comb_token_built = AlwaysCombToken {
18738 always_comb_term: (&always_comb_term)
18739 .try_into()
18740 .map_err(parol_runtime::ParolError::UserError)?,
18741 comments: Box::new(comments),
18742 };
18743 self.user_grammar
18745 .always_comb_token(&always_comb_token_built)?;
18746 self.push(ASTType::AlwaysCombToken(always_comb_token_built), context);
18747 Ok(())
18748 }
18749
18750 #[parol_runtime::function_name::named]
18755 fn always_ff_token(
18756 &mut self,
18757 _always_ff_term: &ParseTreeType<'t>,
18758 _comments: &ParseTreeType<'t>,
18759 ) -> Result<()> {
18760 let context = function_name!();
18761 trace!("{}", self.trace_item_stack(context));
18762 let comments = pop_item!(self, comments, Comments, context);
18763 let always_ff_term = pop_item!(self, always_ff_term, AlwaysFfTerm, context);
18764 let always_ff_token_built = AlwaysFfToken {
18765 always_ff_term: (&always_ff_term)
18766 .try_into()
18767 .map_err(parol_runtime::ParolError::UserError)?,
18768 comments: Box::new(comments),
18769 };
18770 self.user_grammar.always_ff_token(&always_ff_token_built)?;
18772 self.push(ASTType::AlwaysFfToken(always_ff_token_built), context);
18773 Ok(())
18774 }
18775
18776 #[parol_runtime::function_name::named]
18781 fn as_token(
18782 &mut self,
18783 _as_term: &ParseTreeType<'t>,
18784 _comments: &ParseTreeType<'t>,
18785 ) -> Result<()> {
18786 let context = function_name!();
18787 trace!("{}", self.trace_item_stack(context));
18788 let comments = pop_item!(self, comments, Comments, context);
18789 let as_term = pop_item!(self, as_term, AsTerm, context);
18790 let as_token_built = AsToken {
18791 as_term: (&as_term)
18792 .try_into()
18793 .map_err(parol_runtime::ParolError::UserError)?,
18794 comments: Box::new(comments),
18795 };
18796 self.user_grammar.as_token(&as_token_built)?;
18798 self.push(ASTType::AsToken(as_token_built), context);
18799 Ok(())
18800 }
18801
18802 #[parol_runtime::function_name::named]
18807 fn assign_token(
18808 &mut self,
18809 _assign_term: &ParseTreeType<'t>,
18810 _comments: &ParseTreeType<'t>,
18811 ) -> Result<()> {
18812 let context = function_name!();
18813 trace!("{}", self.trace_item_stack(context));
18814 let comments = pop_item!(self, comments, Comments, context);
18815 let assign_term = pop_item!(self, assign_term, AssignTerm, context);
18816 let assign_token_built = AssignToken {
18817 assign_term: (&assign_term)
18818 .try_into()
18819 .map_err(parol_runtime::ParolError::UserError)?,
18820 comments: Box::new(comments),
18821 };
18822 self.user_grammar.assign_token(&assign_token_built)?;
18824 self.push(ASTType::AssignToken(assign_token_built), context);
18825 Ok(())
18826 }
18827
18828 #[parol_runtime::function_name::named]
18833 fn bind_token(
18834 &mut self,
18835 _bind_term: &ParseTreeType<'t>,
18836 _comments: &ParseTreeType<'t>,
18837 ) -> Result<()> {
18838 let context = function_name!();
18839 trace!("{}", self.trace_item_stack(context));
18840 let comments = pop_item!(self, comments, Comments, context);
18841 let bind_term = pop_item!(self, bind_term, BindTerm, context);
18842 let bind_token_built = BindToken {
18843 bind_term: (&bind_term)
18844 .try_into()
18845 .map_err(parol_runtime::ParolError::UserError)?,
18846 comments: Box::new(comments),
18847 };
18848 self.user_grammar.bind_token(&bind_token_built)?;
18850 self.push(ASTType::BindToken(bind_token_built), context);
18851 Ok(())
18852 }
18853
18854 #[parol_runtime::function_name::named]
18859 fn bit_token(
18860 &mut self,
18861 _bit_term: &ParseTreeType<'t>,
18862 _comments: &ParseTreeType<'t>,
18863 ) -> Result<()> {
18864 let context = function_name!();
18865 trace!("{}", self.trace_item_stack(context));
18866 let comments = pop_item!(self, comments, Comments, context);
18867 let bit_term = pop_item!(self, bit_term, BitTerm, context);
18868 let bit_token_built = BitToken {
18869 bit_term: (&bit_term)
18870 .try_into()
18871 .map_err(parol_runtime::ParolError::UserError)?,
18872 comments: Box::new(comments),
18873 };
18874 self.user_grammar.bit_token(&bit_token_built)?;
18876 self.push(ASTType::BitToken(bit_token_built), context);
18877 Ok(())
18878 }
18879
18880 #[parol_runtime::function_name::named]
18885 fn block_token(
18886 &mut self,
18887 _block_term: &ParseTreeType<'t>,
18888 _comments: &ParseTreeType<'t>,
18889 ) -> Result<()> {
18890 let context = function_name!();
18891 trace!("{}", self.trace_item_stack(context));
18892 let comments = pop_item!(self, comments, Comments, context);
18893 let block_term = pop_item!(self, block_term, BlockTerm, context);
18894 let block_token_built = BlockToken {
18895 block_term: (&block_term)
18896 .try_into()
18897 .map_err(parol_runtime::ParolError::UserError)?,
18898 comments: Box::new(comments),
18899 };
18900 self.user_grammar.block_token(&block_token_built)?;
18902 self.push(ASTType::BlockToken(block_token_built), context);
18903 Ok(())
18904 }
18905
18906 #[parol_runtime::function_name::named]
18911 fn b_bool_token(
18912 &mut self,
18913 _b_bool_term: &ParseTreeType<'t>,
18914 _comments: &ParseTreeType<'t>,
18915 ) -> Result<()> {
18916 let context = function_name!();
18917 trace!("{}", self.trace_item_stack(context));
18918 let comments = pop_item!(self, comments, Comments, context);
18919 let b_bool_term = pop_item!(self, b_bool_term, BBoolTerm, context);
18920 let b_bool_token_built = BBoolToken {
18921 b_bool_term: (&b_bool_term)
18922 .try_into()
18923 .map_err(parol_runtime::ParolError::UserError)?,
18924 comments: Box::new(comments),
18925 };
18926 self.user_grammar.b_bool_token(&b_bool_token_built)?;
18928 self.push(ASTType::BBoolToken(b_bool_token_built), context);
18929 Ok(())
18930 }
18931
18932 #[parol_runtime::function_name::named]
18937 fn l_bool_token(
18938 &mut self,
18939 _l_bool_term: &ParseTreeType<'t>,
18940 _comments: &ParseTreeType<'t>,
18941 ) -> Result<()> {
18942 let context = function_name!();
18943 trace!("{}", self.trace_item_stack(context));
18944 let comments = pop_item!(self, comments, Comments, context);
18945 let l_bool_term = pop_item!(self, l_bool_term, LBoolTerm, context);
18946 let l_bool_token_built = LBoolToken {
18947 l_bool_term: (&l_bool_term)
18948 .try_into()
18949 .map_err(parol_runtime::ParolError::UserError)?,
18950 comments: Box::new(comments),
18951 };
18952 self.user_grammar.l_bool_token(&l_bool_token_built)?;
18954 self.push(ASTType::LBoolToken(l_bool_token_built), context);
18955 Ok(())
18956 }
18957
18958 #[parol_runtime::function_name::named]
18963 fn case_token(
18964 &mut self,
18965 _case_term: &ParseTreeType<'t>,
18966 _comments: &ParseTreeType<'t>,
18967 ) -> Result<()> {
18968 let context = function_name!();
18969 trace!("{}", self.trace_item_stack(context));
18970 let comments = pop_item!(self, comments, Comments, context);
18971 let case_term = pop_item!(self, case_term, CaseTerm, context);
18972 let case_token_built = CaseToken {
18973 case_term: (&case_term)
18974 .try_into()
18975 .map_err(parol_runtime::ParolError::UserError)?,
18976 comments: Box::new(comments),
18977 };
18978 self.user_grammar.case_token(&case_token_built)?;
18980 self.push(ASTType::CaseToken(case_token_built), context);
18981 Ok(())
18982 }
18983
18984 #[parol_runtime::function_name::named]
18989 fn clock_token(
18990 &mut self,
18991 _clock_term: &ParseTreeType<'t>,
18992 _comments: &ParseTreeType<'t>,
18993 ) -> Result<()> {
18994 let context = function_name!();
18995 trace!("{}", self.trace_item_stack(context));
18996 let comments = pop_item!(self, comments, Comments, context);
18997 let clock_term = pop_item!(self, clock_term, ClockTerm, context);
18998 let clock_token_built = ClockToken {
18999 clock_term: (&clock_term)
19000 .try_into()
19001 .map_err(parol_runtime::ParolError::UserError)?,
19002 comments: Box::new(comments),
19003 };
19004 self.user_grammar.clock_token(&clock_token_built)?;
19006 self.push(ASTType::ClockToken(clock_token_built), context);
19007 Ok(())
19008 }
19009
19010 #[parol_runtime::function_name::named]
19015 fn clock_posedge_token(
19016 &mut self,
19017 _clock_posedge_term: &ParseTreeType<'t>,
19018 _comments: &ParseTreeType<'t>,
19019 ) -> Result<()> {
19020 let context = function_name!();
19021 trace!("{}", self.trace_item_stack(context));
19022 let comments = pop_item!(self, comments, Comments, context);
19023 let clock_posedge_term = pop_item!(self, clock_posedge_term, ClockPosedgeTerm, context);
19024 let clock_posedge_token_built = ClockPosedgeToken {
19025 clock_posedge_term: (&clock_posedge_term)
19026 .try_into()
19027 .map_err(parol_runtime::ParolError::UserError)?,
19028 comments: Box::new(comments),
19029 };
19030 self.user_grammar
19032 .clock_posedge_token(&clock_posedge_token_built)?;
19033 self.push(
19034 ASTType::ClockPosedgeToken(clock_posedge_token_built),
19035 context,
19036 );
19037 Ok(())
19038 }
19039
19040 #[parol_runtime::function_name::named]
19045 fn clock_negedge_token(
19046 &mut self,
19047 _clock_negedge_term: &ParseTreeType<'t>,
19048 _comments: &ParseTreeType<'t>,
19049 ) -> Result<()> {
19050 let context = function_name!();
19051 trace!("{}", self.trace_item_stack(context));
19052 let comments = pop_item!(self, comments, Comments, context);
19053 let clock_negedge_term = pop_item!(self, clock_negedge_term, ClockNegedgeTerm, context);
19054 let clock_negedge_token_built = ClockNegedgeToken {
19055 clock_negedge_term: (&clock_negedge_term)
19056 .try_into()
19057 .map_err(parol_runtime::ParolError::UserError)?,
19058 comments: Box::new(comments),
19059 };
19060 self.user_grammar
19062 .clock_negedge_token(&clock_negedge_token_built)?;
19063 self.push(
19064 ASTType::ClockNegedgeToken(clock_negedge_token_built),
19065 context,
19066 );
19067 Ok(())
19068 }
19069
19070 #[parol_runtime::function_name::named]
19075 fn connect_token(
19076 &mut self,
19077 _connect_term: &ParseTreeType<'t>,
19078 _comments: &ParseTreeType<'t>,
19079 ) -> Result<()> {
19080 let context = function_name!();
19081 trace!("{}", self.trace_item_stack(context));
19082 let comments = pop_item!(self, comments, Comments, context);
19083 let connect_term = pop_item!(self, connect_term, ConnectTerm, context);
19084 let connect_token_built = ConnectToken {
19085 connect_term: (&connect_term)
19086 .try_into()
19087 .map_err(parol_runtime::ParolError::UserError)?,
19088 comments: Box::new(comments),
19089 };
19090 self.user_grammar.connect_token(&connect_token_built)?;
19092 self.push(ASTType::ConnectToken(connect_token_built), context);
19093 Ok(())
19094 }
19095
19096 #[parol_runtime::function_name::named]
19101 fn const_token(
19102 &mut self,
19103 _const_term: &ParseTreeType<'t>,
19104 _comments: &ParseTreeType<'t>,
19105 ) -> Result<()> {
19106 let context = function_name!();
19107 trace!("{}", self.trace_item_stack(context));
19108 let comments = pop_item!(self, comments, Comments, context);
19109 let const_term = pop_item!(self, const_term, ConstTerm, context);
19110 let const_token_built = ConstToken {
19111 const_term: (&const_term)
19112 .try_into()
19113 .map_err(parol_runtime::ParolError::UserError)?,
19114 comments: Box::new(comments),
19115 };
19116 self.user_grammar.const_token(&const_token_built)?;
19118 self.push(ASTType::ConstToken(const_token_built), context);
19119 Ok(())
19120 }
19121
19122 #[parol_runtime::function_name::named]
19127 fn converse_token(
19128 &mut self,
19129 _converse_term: &ParseTreeType<'t>,
19130 _comments: &ParseTreeType<'t>,
19131 ) -> Result<()> {
19132 let context = function_name!();
19133 trace!("{}", self.trace_item_stack(context));
19134 let comments = pop_item!(self, comments, Comments, context);
19135 let converse_term = pop_item!(self, converse_term, ConverseTerm, context);
19136 let converse_token_built = ConverseToken {
19137 converse_term: (&converse_term)
19138 .try_into()
19139 .map_err(parol_runtime::ParolError::UserError)?,
19140 comments: Box::new(comments),
19141 };
19142 self.user_grammar.converse_token(&converse_token_built)?;
19144 self.push(ASTType::ConverseToken(converse_token_built), context);
19145 Ok(())
19146 }
19147
19148 #[parol_runtime::function_name::named]
19153 fn default_token(
19154 &mut self,
19155 _default_term: &ParseTreeType<'t>,
19156 _comments: &ParseTreeType<'t>,
19157 ) -> Result<()> {
19158 let context = function_name!();
19159 trace!("{}", self.trace_item_stack(context));
19160 let comments = pop_item!(self, comments, Comments, context);
19161 let default_term = pop_item!(self, default_term, DefaultTerm, context);
19162 let default_token_built = DefaultToken {
19163 default_term: (&default_term)
19164 .try_into()
19165 .map_err(parol_runtime::ParolError::UserError)?,
19166 comments: Box::new(comments),
19167 };
19168 self.user_grammar.default_token(&default_token_built)?;
19170 self.push(ASTType::DefaultToken(default_token_built), context);
19171 Ok(())
19172 }
19173
19174 #[parol_runtime::function_name::named]
19179 fn else_token(
19180 &mut self,
19181 _else_term: &ParseTreeType<'t>,
19182 _comments: &ParseTreeType<'t>,
19183 ) -> Result<()> {
19184 let context = function_name!();
19185 trace!("{}", self.trace_item_stack(context));
19186 let comments = pop_item!(self, comments, Comments, context);
19187 let else_term = pop_item!(self, else_term, ElseTerm, context);
19188 let else_token_built = ElseToken {
19189 else_term: (&else_term)
19190 .try_into()
19191 .map_err(parol_runtime::ParolError::UserError)?,
19192 comments: Box::new(comments),
19193 };
19194 self.user_grammar.else_token(&else_token_built)?;
19196 self.push(ASTType::ElseToken(else_token_built), context);
19197 Ok(())
19198 }
19199
19200 #[parol_runtime::function_name::named]
19205 fn embed_token(
19206 &mut self,
19207 _embed_term: &ParseTreeType<'t>,
19208 _comments: &ParseTreeType<'t>,
19209 ) -> Result<()> {
19210 let context = function_name!();
19211 trace!("{}", self.trace_item_stack(context));
19212 let comments = pop_item!(self, comments, Comments, context);
19213 let embed_term = pop_item!(self, embed_term, EmbedTerm, context);
19214 let embed_token_built = EmbedToken {
19215 embed_term: (&embed_term)
19216 .try_into()
19217 .map_err(parol_runtime::ParolError::UserError)?,
19218 comments: Box::new(comments),
19219 };
19220 self.user_grammar.embed_token(&embed_token_built)?;
19222 self.push(ASTType::EmbedToken(embed_token_built), context);
19223 Ok(())
19224 }
19225
19226 #[parol_runtime::function_name::named]
19231 fn enum_token(
19232 &mut self,
19233 _enum_term: &ParseTreeType<'t>,
19234 _comments: &ParseTreeType<'t>,
19235 ) -> Result<()> {
19236 let context = function_name!();
19237 trace!("{}", self.trace_item_stack(context));
19238 let comments = pop_item!(self, comments, Comments, context);
19239 let enum_term = pop_item!(self, enum_term, EnumTerm, context);
19240 let enum_token_built = EnumToken {
19241 enum_term: (&enum_term)
19242 .try_into()
19243 .map_err(parol_runtime::ParolError::UserError)?,
19244 comments: Box::new(comments),
19245 };
19246 self.user_grammar.enum_token(&enum_token_built)?;
19248 self.push(ASTType::EnumToken(enum_token_built), context);
19249 Ok(())
19250 }
19251
19252 #[parol_runtime::function_name::named]
19257 fn f32_token(
19258 &mut self,
19259 _f32_term: &ParseTreeType<'t>,
19260 _comments: &ParseTreeType<'t>,
19261 ) -> Result<()> {
19262 let context = function_name!();
19263 trace!("{}", self.trace_item_stack(context));
19264 let comments = pop_item!(self, comments, Comments, context);
19265 let f32_term = pop_item!(self, f32_term, F32Term, context);
19266 let f32_token_built = F32Token {
19267 f32_term: (&f32_term)
19268 .try_into()
19269 .map_err(parol_runtime::ParolError::UserError)?,
19270 comments: Box::new(comments),
19271 };
19272 self.user_grammar.f32_token(&f32_token_built)?;
19274 self.push(ASTType::F32Token(f32_token_built), context);
19275 Ok(())
19276 }
19277
19278 #[parol_runtime::function_name::named]
19283 fn f64_token(
19284 &mut self,
19285 _f64_term: &ParseTreeType<'t>,
19286 _comments: &ParseTreeType<'t>,
19287 ) -> Result<()> {
19288 let context = function_name!();
19289 trace!("{}", self.trace_item_stack(context));
19290 let comments = pop_item!(self, comments, Comments, context);
19291 let f64_term = pop_item!(self, f64_term, F64Term, context);
19292 let f64_token_built = F64Token {
19293 f64_term: (&f64_term)
19294 .try_into()
19295 .map_err(parol_runtime::ParolError::UserError)?,
19296 comments: Box::new(comments),
19297 };
19298 self.user_grammar.f64_token(&f64_token_built)?;
19300 self.push(ASTType::F64Token(f64_token_built), context);
19301 Ok(())
19302 }
19303
19304 #[parol_runtime::function_name::named]
19309 fn false_token(
19310 &mut self,
19311 _false_term: &ParseTreeType<'t>,
19312 _comments: &ParseTreeType<'t>,
19313 ) -> Result<()> {
19314 let context = function_name!();
19315 trace!("{}", self.trace_item_stack(context));
19316 let comments = pop_item!(self, comments, Comments, context);
19317 let false_term = pop_item!(self, false_term, FalseTerm, context);
19318 let false_token_built = FalseToken {
19319 false_term: (&false_term)
19320 .try_into()
19321 .map_err(parol_runtime::ParolError::UserError)?,
19322 comments: Box::new(comments),
19323 };
19324 self.user_grammar.false_token(&false_token_built)?;
19326 self.push(ASTType::FalseToken(false_token_built), context);
19327 Ok(())
19328 }
19329
19330 #[parol_runtime::function_name::named]
19335 fn final_token(
19336 &mut self,
19337 _final_term: &ParseTreeType<'t>,
19338 _comments: &ParseTreeType<'t>,
19339 ) -> Result<()> {
19340 let context = function_name!();
19341 trace!("{}", self.trace_item_stack(context));
19342 let comments = pop_item!(self, comments, Comments, context);
19343 let final_term = pop_item!(self, final_term, FinalTerm, context);
19344 let final_token_built = FinalToken {
19345 final_term: (&final_term)
19346 .try_into()
19347 .map_err(parol_runtime::ParolError::UserError)?,
19348 comments: Box::new(comments),
19349 };
19350 self.user_grammar.final_token(&final_token_built)?;
19352 self.push(ASTType::FinalToken(final_token_built), context);
19353 Ok(())
19354 }
19355
19356 #[parol_runtime::function_name::named]
19361 fn for_token(
19362 &mut self,
19363 _for_term: &ParseTreeType<'t>,
19364 _comments: &ParseTreeType<'t>,
19365 ) -> Result<()> {
19366 let context = function_name!();
19367 trace!("{}", self.trace_item_stack(context));
19368 let comments = pop_item!(self, comments, Comments, context);
19369 let for_term = pop_item!(self, for_term, ForTerm, context);
19370 let for_token_built = ForToken {
19371 for_term: (&for_term)
19372 .try_into()
19373 .map_err(parol_runtime::ParolError::UserError)?,
19374 comments: Box::new(comments),
19375 };
19376 self.user_grammar.for_token(&for_token_built)?;
19378 self.push(ASTType::ForToken(for_token_built), context);
19379 Ok(())
19380 }
19381
19382 #[parol_runtime::function_name::named]
19387 fn function_token(
19388 &mut self,
19389 _function_term: &ParseTreeType<'t>,
19390 _comments: &ParseTreeType<'t>,
19391 ) -> Result<()> {
19392 let context = function_name!();
19393 trace!("{}", self.trace_item_stack(context));
19394 let comments = pop_item!(self, comments, Comments, context);
19395 let function_term = pop_item!(self, function_term, FunctionTerm, context);
19396 let function_token_built = FunctionToken {
19397 function_term: (&function_term)
19398 .try_into()
19399 .map_err(parol_runtime::ParolError::UserError)?,
19400 comments: Box::new(comments),
19401 };
19402 self.user_grammar.function_token(&function_token_built)?;
19404 self.push(ASTType::FunctionToken(function_token_built), context);
19405 Ok(())
19406 }
19407
19408 #[parol_runtime::function_name::named]
19413 fn i8_token(
19414 &mut self,
19415 _i8_term: &ParseTreeType<'t>,
19416 _comments: &ParseTreeType<'t>,
19417 ) -> Result<()> {
19418 let context = function_name!();
19419 trace!("{}", self.trace_item_stack(context));
19420 let comments = pop_item!(self, comments, Comments, context);
19421 let i8_term = pop_item!(self, i8_term, I8Term, context);
19422 let i8_token_built = I8Token {
19423 i8_term: (&i8_term)
19424 .try_into()
19425 .map_err(parol_runtime::ParolError::UserError)?,
19426 comments: Box::new(comments),
19427 };
19428 self.user_grammar.i8_token(&i8_token_built)?;
19430 self.push(ASTType::I8Token(i8_token_built), context);
19431 Ok(())
19432 }
19433
19434 #[parol_runtime::function_name::named]
19439 fn i16_token(
19440 &mut self,
19441 _i16_term: &ParseTreeType<'t>,
19442 _comments: &ParseTreeType<'t>,
19443 ) -> Result<()> {
19444 let context = function_name!();
19445 trace!("{}", self.trace_item_stack(context));
19446 let comments = pop_item!(self, comments, Comments, context);
19447 let i16_term = pop_item!(self, i16_term, I16Term, context);
19448 let i16_token_built = I16Token {
19449 i16_term: (&i16_term)
19450 .try_into()
19451 .map_err(parol_runtime::ParolError::UserError)?,
19452 comments: Box::new(comments),
19453 };
19454 self.user_grammar.i16_token(&i16_token_built)?;
19456 self.push(ASTType::I16Token(i16_token_built), context);
19457 Ok(())
19458 }
19459
19460 #[parol_runtime::function_name::named]
19465 fn i32_token(
19466 &mut self,
19467 _i32_term: &ParseTreeType<'t>,
19468 _comments: &ParseTreeType<'t>,
19469 ) -> Result<()> {
19470 let context = function_name!();
19471 trace!("{}", self.trace_item_stack(context));
19472 let comments = pop_item!(self, comments, Comments, context);
19473 let i32_term = pop_item!(self, i32_term, I32Term, context);
19474 let i32_token_built = I32Token {
19475 i32_term: (&i32_term)
19476 .try_into()
19477 .map_err(parol_runtime::ParolError::UserError)?,
19478 comments: Box::new(comments),
19479 };
19480 self.user_grammar.i32_token(&i32_token_built)?;
19482 self.push(ASTType::I32Token(i32_token_built), context);
19483 Ok(())
19484 }
19485
19486 #[parol_runtime::function_name::named]
19491 fn i64_token(
19492 &mut self,
19493 _i64_term: &ParseTreeType<'t>,
19494 _comments: &ParseTreeType<'t>,
19495 ) -> Result<()> {
19496 let context = function_name!();
19497 trace!("{}", self.trace_item_stack(context));
19498 let comments = pop_item!(self, comments, Comments, context);
19499 let i64_term = pop_item!(self, i64_term, I64Term, context);
19500 let i64_token_built = I64Token {
19501 i64_term: (&i64_term)
19502 .try_into()
19503 .map_err(parol_runtime::ParolError::UserError)?,
19504 comments: Box::new(comments),
19505 };
19506 self.user_grammar.i64_token(&i64_token_built)?;
19508 self.push(ASTType::I64Token(i64_token_built), context);
19509 Ok(())
19510 }
19511
19512 #[parol_runtime::function_name::named]
19517 fn if_reset_token(
19518 &mut self,
19519 _if_reset_term: &ParseTreeType<'t>,
19520 _comments: &ParseTreeType<'t>,
19521 ) -> Result<()> {
19522 let context = function_name!();
19523 trace!("{}", self.trace_item_stack(context));
19524 let comments = pop_item!(self, comments, Comments, context);
19525 let if_reset_term = pop_item!(self, if_reset_term, IfResetTerm, context);
19526 let if_reset_token_built = IfResetToken {
19527 if_reset_term: (&if_reset_term)
19528 .try_into()
19529 .map_err(parol_runtime::ParolError::UserError)?,
19530 comments: Box::new(comments),
19531 };
19532 self.user_grammar.if_reset_token(&if_reset_token_built)?;
19534 self.push(ASTType::IfResetToken(if_reset_token_built), context);
19535 Ok(())
19536 }
19537
19538 #[parol_runtime::function_name::named]
19543 fn if_token(
19544 &mut self,
19545 _if_term: &ParseTreeType<'t>,
19546 _comments: &ParseTreeType<'t>,
19547 ) -> Result<()> {
19548 let context = function_name!();
19549 trace!("{}", self.trace_item_stack(context));
19550 let comments = pop_item!(self, comments, Comments, context);
19551 let if_term = pop_item!(self, if_term, IfTerm, context);
19552 let if_token_built = IfToken {
19553 if_term: (&if_term)
19554 .try_into()
19555 .map_err(parol_runtime::ParolError::UserError)?,
19556 comments: Box::new(comments),
19557 };
19558 self.user_grammar.if_token(&if_token_built)?;
19560 self.push(ASTType::IfToken(if_token_built), context);
19561 Ok(())
19562 }
19563
19564 #[parol_runtime::function_name::named]
19569 fn import_token(
19570 &mut self,
19571 _import_term: &ParseTreeType<'t>,
19572 _comments: &ParseTreeType<'t>,
19573 ) -> Result<()> {
19574 let context = function_name!();
19575 trace!("{}", self.trace_item_stack(context));
19576 let comments = pop_item!(self, comments, Comments, context);
19577 let import_term = pop_item!(self, import_term, ImportTerm, context);
19578 let import_token_built = ImportToken {
19579 import_term: (&import_term)
19580 .try_into()
19581 .map_err(parol_runtime::ParolError::UserError)?,
19582 comments: Box::new(comments),
19583 };
19584 self.user_grammar.import_token(&import_token_built)?;
19586 self.push(ASTType::ImportToken(import_token_built), context);
19587 Ok(())
19588 }
19589
19590 #[parol_runtime::function_name::named]
19595 fn include_token(
19596 &mut self,
19597 _include_term: &ParseTreeType<'t>,
19598 _comments: &ParseTreeType<'t>,
19599 ) -> Result<()> {
19600 let context = function_name!();
19601 trace!("{}", self.trace_item_stack(context));
19602 let comments = pop_item!(self, comments, Comments, context);
19603 let include_term = pop_item!(self, include_term, IncludeTerm, context);
19604 let include_token_built = IncludeToken {
19605 include_term: (&include_term)
19606 .try_into()
19607 .map_err(parol_runtime::ParolError::UserError)?,
19608 comments: Box::new(comments),
19609 };
19610 self.user_grammar.include_token(&include_token_built)?;
19612 self.push(ASTType::IncludeToken(include_token_built), context);
19613 Ok(())
19614 }
19615
19616 #[parol_runtime::function_name::named]
19621 fn initial_token(
19622 &mut self,
19623 _initial_term: &ParseTreeType<'t>,
19624 _comments: &ParseTreeType<'t>,
19625 ) -> Result<()> {
19626 let context = function_name!();
19627 trace!("{}", self.trace_item_stack(context));
19628 let comments = pop_item!(self, comments, Comments, context);
19629 let initial_term = pop_item!(self, initial_term, InitialTerm, context);
19630 let initial_token_built = InitialToken {
19631 initial_term: (&initial_term)
19632 .try_into()
19633 .map_err(parol_runtime::ParolError::UserError)?,
19634 comments: Box::new(comments),
19635 };
19636 self.user_grammar.initial_token(&initial_token_built)?;
19638 self.push(ASTType::InitialToken(initial_token_built), context);
19639 Ok(())
19640 }
19641
19642 #[parol_runtime::function_name::named]
19647 fn inout_token(
19648 &mut self,
19649 _inout_term: &ParseTreeType<'t>,
19650 _comments: &ParseTreeType<'t>,
19651 ) -> Result<()> {
19652 let context = function_name!();
19653 trace!("{}", self.trace_item_stack(context));
19654 let comments = pop_item!(self, comments, Comments, context);
19655 let inout_term = pop_item!(self, inout_term, InoutTerm, context);
19656 let inout_token_built = InoutToken {
19657 inout_term: (&inout_term)
19658 .try_into()
19659 .map_err(parol_runtime::ParolError::UserError)?,
19660 comments: Box::new(comments),
19661 };
19662 self.user_grammar.inout_token(&inout_token_built)?;
19664 self.push(ASTType::InoutToken(inout_token_built), context);
19665 Ok(())
19666 }
19667
19668 #[parol_runtime::function_name::named]
19673 fn input_token(
19674 &mut self,
19675 _input_term: &ParseTreeType<'t>,
19676 _comments: &ParseTreeType<'t>,
19677 ) -> Result<()> {
19678 let context = function_name!();
19679 trace!("{}", self.trace_item_stack(context));
19680 let comments = pop_item!(self, comments, Comments, context);
19681 let input_term = pop_item!(self, input_term, InputTerm, context);
19682 let input_token_built = InputToken {
19683 input_term: (&input_term)
19684 .try_into()
19685 .map_err(parol_runtime::ParolError::UserError)?,
19686 comments: Box::new(comments),
19687 };
19688 self.user_grammar.input_token(&input_token_built)?;
19690 self.push(ASTType::InputToken(input_token_built), context);
19691 Ok(())
19692 }
19693
19694 #[parol_runtime::function_name::named]
19699 fn inside_token(
19700 &mut self,
19701 _inside_term: &ParseTreeType<'t>,
19702 _comments: &ParseTreeType<'t>,
19703 ) -> Result<()> {
19704 let context = function_name!();
19705 trace!("{}", self.trace_item_stack(context));
19706 let comments = pop_item!(self, comments, Comments, context);
19707 let inside_term = pop_item!(self, inside_term, InsideTerm, context);
19708 let inside_token_built = InsideToken {
19709 inside_term: (&inside_term)
19710 .try_into()
19711 .map_err(parol_runtime::ParolError::UserError)?,
19712 comments: Box::new(comments),
19713 };
19714 self.user_grammar.inside_token(&inside_token_built)?;
19716 self.push(ASTType::InsideToken(inside_token_built), context);
19717 Ok(())
19718 }
19719
19720 #[parol_runtime::function_name::named]
19725 fn inst_token(
19726 &mut self,
19727 _inst_term: &ParseTreeType<'t>,
19728 _comments: &ParseTreeType<'t>,
19729 ) -> Result<()> {
19730 let context = function_name!();
19731 trace!("{}", self.trace_item_stack(context));
19732 let comments = pop_item!(self, comments, Comments, context);
19733 let inst_term = pop_item!(self, inst_term, InstTerm, context);
19734 let inst_token_built = InstToken {
19735 inst_term: (&inst_term)
19736 .try_into()
19737 .map_err(parol_runtime::ParolError::UserError)?,
19738 comments: Box::new(comments),
19739 };
19740 self.user_grammar.inst_token(&inst_token_built)?;
19742 self.push(ASTType::InstToken(inst_token_built), context);
19743 Ok(())
19744 }
19745
19746 #[parol_runtime::function_name::named]
19751 fn interface_token(
19752 &mut self,
19753 _interface_term: &ParseTreeType<'t>,
19754 _comments: &ParseTreeType<'t>,
19755 ) -> Result<()> {
19756 let context = function_name!();
19757 trace!("{}", self.trace_item_stack(context));
19758 let comments = pop_item!(self, comments, Comments, context);
19759 let interface_term = pop_item!(self, interface_term, InterfaceTerm, context);
19760 let interface_token_built = InterfaceToken {
19761 interface_term: (&interface_term)
19762 .try_into()
19763 .map_err(parol_runtime::ParolError::UserError)?,
19764 comments: Box::new(comments),
19765 };
19766 self.user_grammar.interface_token(&interface_token_built)?;
19768 self.push(ASTType::InterfaceToken(interface_token_built), context);
19769 Ok(())
19770 }
19771
19772 #[parol_runtime::function_name::named]
19777 fn in_token(
19778 &mut self,
19779 _in_term: &ParseTreeType<'t>,
19780 _comments: &ParseTreeType<'t>,
19781 ) -> Result<()> {
19782 let context = function_name!();
19783 trace!("{}", self.trace_item_stack(context));
19784 let comments = pop_item!(self, comments, Comments, context);
19785 let in_term = pop_item!(self, in_term, InTerm, context);
19786 let in_token_built = InToken {
19787 in_term: (&in_term)
19788 .try_into()
19789 .map_err(parol_runtime::ParolError::UserError)?,
19790 comments: Box::new(comments),
19791 };
19792 self.user_grammar.in_token(&in_token_built)?;
19794 self.push(ASTType::InToken(in_token_built), context);
19795 Ok(())
19796 }
19797
19798 #[parol_runtime::function_name::named]
19803 fn let_token(
19804 &mut self,
19805 _let_term: &ParseTreeType<'t>,
19806 _comments: &ParseTreeType<'t>,
19807 ) -> Result<()> {
19808 let context = function_name!();
19809 trace!("{}", self.trace_item_stack(context));
19810 let comments = pop_item!(self, comments, Comments, context);
19811 let let_term = pop_item!(self, let_term, LetTerm, context);
19812 let let_token_built = LetToken {
19813 let_term: (&let_term)
19814 .try_into()
19815 .map_err(parol_runtime::ParolError::UserError)?,
19816 comments: Box::new(comments),
19817 };
19818 self.user_grammar.let_token(&let_token_built)?;
19820 self.push(ASTType::LetToken(let_token_built), context);
19821 Ok(())
19822 }
19823
19824 #[parol_runtime::function_name::named]
19829 fn logic_token(
19830 &mut self,
19831 _logic_term: &ParseTreeType<'t>,
19832 _comments: &ParseTreeType<'t>,
19833 ) -> Result<()> {
19834 let context = function_name!();
19835 trace!("{}", self.trace_item_stack(context));
19836 let comments = pop_item!(self, comments, Comments, context);
19837 let logic_term = pop_item!(self, logic_term, LogicTerm, context);
19838 let logic_token_built = LogicToken {
19839 logic_term: (&logic_term)
19840 .try_into()
19841 .map_err(parol_runtime::ParolError::UserError)?,
19842 comments: Box::new(comments),
19843 };
19844 self.user_grammar.logic_token(&logic_token_built)?;
19846 self.push(ASTType::LogicToken(logic_token_built), context);
19847 Ok(())
19848 }
19849
19850 #[parol_runtime::function_name::named]
19855 fn lsb_token(
19856 &mut self,
19857 _lsb_term: &ParseTreeType<'t>,
19858 _comments: &ParseTreeType<'t>,
19859 ) -> Result<()> {
19860 let context = function_name!();
19861 trace!("{}", self.trace_item_stack(context));
19862 let comments = pop_item!(self, comments, Comments, context);
19863 let lsb_term = pop_item!(self, lsb_term, LsbTerm, context);
19864 let lsb_token_built = LsbToken {
19865 lsb_term: (&lsb_term)
19866 .try_into()
19867 .map_err(parol_runtime::ParolError::UserError)?,
19868 comments: Box::new(comments),
19869 };
19870 self.user_grammar.lsb_token(&lsb_token_built)?;
19872 self.push(ASTType::LsbToken(lsb_token_built), context);
19873 Ok(())
19874 }
19875
19876 #[parol_runtime::function_name::named]
19881 fn modport_token(
19882 &mut self,
19883 _modport_term: &ParseTreeType<'t>,
19884 _comments: &ParseTreeType<'t>,
19885 ) -> Result<()> {
19886 let context = function_name!();
19887 trace!("{}", self.trace_item_stack(context));
19888 let comments = pop_item!(self, comments, Comments, context);
19889 let modport_term = pop_item!(self, modport_term, ModportTerm, context);
19890 let modport_token_built = ModportToken {
19891 modport_term: (&modport_term)
19892 .try_into()
19893 .map_err(parol_runtime::ParolError::UserError)?,
19894 comments: Box::new(comments),
19895 };
19896 self.user_grammar.modport_token(&modport_token_built)?;
19898 self.push(ASTType::ModportToken(modport_token_built), context);
19899 Ok(())
19900 }
19901
19902 #[parol_runtime::function_name::named]
19907 fn module_token(
19908 &mut self,
19909 _module_term: &ParseTreeType<'t>,
19910 _comments: &ParseTreeType<'t>,
19911 ) -> Result<()> {
19912 let context = function_name!();
19913 trace!("{}", self.trace_item_stack(context));
19914 let comments = pop_item!(self, comments, Comments, context);
19915 let module_term = pop_item!(self, module_term, ModuleTerm, context);
19916 let module_token_built = ModuleToken {
19917 module_term: (&module_term)
19918 .try_into()
19919 .map_err(parol_runtime::ParolError::UserError)?,
19920 comments: Box::new(comments),
19921 };
19922 self.user_grammar.module_token(&module_token_built)?;
19924 self.push(ASTType::ModuleToken(module_token_built), context);
19925 Ok(())
19926 }
19927
19928 #[parol_runtime::function_name::named]
19933 fn msb_token(
19934 &mut self,
19935 _msb_term: &ParseTreeType<'t>,
19936 _comments: &ParseTreeType<'t>,
19937 ) -> Result<()> {
19938 let context = function_name!();
19939 trace!("{}", self.trace_item_stack(context));
19940 let comments = pop_item!(self, comments, Comments, context);
19941 let msb_term = pop_item!(self, msb_term, MsbTerm, context);
19942 let msb_token_built = MsbToken {
19943 msb_term: (&msb_term)
19944 .try_into()
19945 .map_err(parol_runtime::ParolError::UserError)?,
19946 comments: Box::new(comments),
19947 };
19948 self.user_grammar.msb_token(&msb_token_built)?;
19950 self.push(ASTType::MsbToken(msb_token_built), context);
19951 Ok(())
19952 }
19953
19954 #[parol_runtime::function_name::named]
19959 fn output_token(
19960 &mut self,
19961 _output_term: &ParseTreeType<'t>,
19962 _comments: &ParseTreeType<'t>,
19963 ) -> Result<()> {
19964 let context = function_name!();
19965 trace!("{}", self.trace_item_stack(context));
19966 let comments = pop_item!(self, comments, Comments, context);
19967 let output_term = pop_item!(self, output_term, OutputTerm, context);
19968 let output_token_built = OutputToken {
19969 output_term: (&output_term)
19970 .try_into()
19971 .map_err(parol_runtime::ParolError::UserError)?,
19972 comments: Box::new(comments),
19973 };
19974 self.user_grammar.output_token(&output_token_built)?;
19976 self.push(ASTType::OutputToken(output_token_built), context);
19977 Ok(())
19978 }
19979
19980 #[parol_runtime::function_name::named]
19985 fn outside_token(
19986 &mut self,
19987 _outside_term: &ParseTreeType<'t>,
19988 _comments: &ParseTreeType<'t>,
19989 ) -> Result<()> {
19990 let context = function_name!();
19991 trace!("{}", self.trace_item_stack(context));
19992 let comments = pop_item!(self, comments, Comments, context);
19993 let outside_term = pop_item!(self, outside_term, OutsideTerm, context);
19994 let outside_token_built = OutsideToken {
19995 outside_term: (&outside_term)
19996 .try_into()
19997 .map_err(parol_runtime::ParolError::UserError)?,
19998 comments: Box::new(comments),
19999 };
20000 self.user_grammar.outside_token(&outside_token_built)?;
20002 self.push(ASTType::OutsideToken(outside_token_built), context);
20003 Ok(())
20004 }
20005
20006 #[parol_runtime::function_name::named]
20011 fn package_token(
20012 &mut self,
20013 _package_term: &ParseTreeType<'t>,
20014 _comments: &ParseTreeType<'t>,
20015 ) -> Result<()> {
20016 let context = function_name!();
20017 trace!("{}", self.trace_item_stack(context));
20018 let comments = pop_item!(self, comments, Comments, context);
20019 let package_term = pop_item!(self, package_term, PackageTerm, context);
20020 let package_token_built = PackageToken {
20021 package_term: (&package_term)
20022 .try_into()
20023 .map_err(parol_runtime::ParolError::UserError)?,
20024 comments: Box::new(comments),
20025 };
20026 self.user_grammar.package_token(&package_token_built)?;
20028 self.push(ASTType::PackageToken(package_token_built), context);
20029 Ok(())
20030 }
20031
20032 #[parol_runtime::function_name::named]
20037 fn param_token(
20038 &mut self,
20039 _param_term: &ParseTreeType<'t>,
20040 _comments: &ParseTreeType<'t>,
20041 ) -> Result<()> {
20042 let context = function_name!();
20043 trace!("{}", self.trace_item_stack(context));
20044 let comments = pop_item!(self, comments, Comments, context);
20045 let param_term = pop_item!(self, param_term, ParamTerm, context);
20046 let param_token_built = ParamToken {
20047 param_term: (¶m_term)
20048 .try_into()
20049 .map_err(parol_runtime::ParolError::UserError)?,
20050 comments: Box::new(comments),
20051 };
20052 self.user_grammar.param_token(¶m_token_built)?;
20054 self.push(ASTType::ParamToken(param_token_built), context);
20055 Ok(())
20056 }
20057
20058 #[parol_runtime::function_name::named]
20063 fn proto_token(
20064 &mut self,
20065 _proto_term: &ParseTreeType<'t>,
20066 _comments: &ParseTreeType<'t>,
20067 ) -> Result<()> {
20068 let context = function_name!();
20069 trace!("{}", self.trace_item_stack(context));
20070 let comments = pop_item!(self, comments, Comments, context);
20071 let proto_term = pop_item!(self, proto_term, ProtoTerm, context);
20072 let proto_token_built = ProtoToken {
20073 proto_term: (&proto_term)
20074 .try_into()
20075 .map_err(parol_runtime::ParolError::UserError)?,
20076 comments: Box::new(comments),
20077 };
20078 self.user_grammar.proto_token(&proto_token_built)?;
20080 self.push(ASTType::ProtoToken(proto_token_built), context);
20081 Ok(())
20082 }
20083
20084 #[parol_runtime::function_name::named]
20089 fn pub_token(
20090 &mut self,
20091 _pub_term: &ParseTreeType<'t>,
20092 _comments: &ParseTreeType<'t>,
20093 ) -> Result<()> {
20094 let context = function_name!();
20095 trace!("{}", self.trace_item_stack(context));
20096 let comments = pop_item!(self, comments, Comments, context);
20097 let pub_term = pop_item!(self, pub_term, PubTerm, context);
20098 let pub_token_built = PubToken {
20099 pub_term: (&pub_term)
20100 .try_into()
20101 .map_err(parol_runtime::ParolError::UserError)?,
20102 comments: Box::new(comments),
20103 };
20104 self.user_grammar.pub_token(&pub_token_built)?;
20106 self.push(ASTType::PubToken(pub_token_built), context);
20107 Ok(())
20108 }
20109
20110 #[parol_runtime::function_name::named]
20115 fn repeat_token(
20116 &mut self,
20117 _repeat_term: &ParseTreeType<'t>,
20118 _comments: &ParseTreeType<'t>,
20119 ) -> Result<()> {
20120 let context = function_name!();
20121 trace!("{}", self.trace_item_stack(context));
20122 let comments = pop_item!(self, comments, Comments, context);
20123 let repeat_term = pop_item!(self, repeat_term, RepeatTerm, context);
20124 let repeat_token_built = RepeatToken {
20125 repeat_term: (&repeat_term)
20126 .try_into()
20127 .map_err(parol_runtime::ParolError::UserError)?,
20128 comments: Box::new(comments),
20129 };
20130 self.user_grammar.repeat_token(&repeat_token_built)?;
20132 self.push(ASTType::RepeatToken(repeat_token_built), context);
20133 Ok(())
20134 }
20135
20136 #[parol_runtime::function_name::named]
20141 fn reset_token(
20142 &mut self,
20143 _reset_term: &ParseTreeType<'t>,
20144 _comments: &ParseTreeType<'t>,
20145 ) -> Result<()> {
20146 let context = function_name!();
20147 trace!("{}", self.trace_item_stack(context));
20148 let comments = pop_item!(self, comments, Comments, context);
20149 let reset_term = pop_item!(self, reset_term, ResetTerm, context);
20150 let reset_token_built = ResetToken {
20151 reset_term: (&reset_term)
20152 .try_into()
20153 .map_err(parol_runtime::ParolError::UserError)?,
20154 comments: Box::new(comments),
20155 };
20156 self.user_grammar.reset_token(&reset_token_built)?;
20158 self.push(ASTType::ResetToken(reset_token_built), context);
20159 Ok(())
20160 }
20161
20162 #[parol_runtime::function_name::named]
20167 fn reset_async_high_token(
20168 &mut self,
20169 _reset_async_high_term: &ParseTreeType<'t>,
20170 _comments: &ParseTreeType<'t>,
20171 ) -> Result<()> {
20172 let context = function_name!();
20173 trace!("{}", self.trace_item_stack(context));
20174 let comments = pop_item!(self, comments, Comments, context);
20175 let reset_async_high_term =
20176 pop_item!(self, reset_async_high_term, ResetAsyncHighTerm, context);
20177 let reset_async_high_token_built = ResetAsyncHighToken {
20178 reset_async_high_term: (&reset_async_high_term)
20179 .try_into()
20180 .map_err(parol_runtime::ParolError::UserError)?,
20181 comments: Box::new(comments),
20182 };
20183 self.user_grammar
20185 .reset_async_high_token(&reset_async_high_token_built)?;
20186 self.push(
20187 ASTType::ResetAsyncHighToken(reset_async_high_token_built),
20188 context,
20189 );
20190 Ok(())
20191 }
20192
20193 #[parol_runtime::function_name::named]
20198 fn reset_async_low_token(
20199 &mut self,
20200 _reset_async_low_term: &ParseTreeType<'t>,
20201 _comments: &ParseTreeType<'t>,
20202 ) -> Result<()> {
20203 let context = function_name!();
20204 trace!("{}", self.trace_item_stack(context));
20205 let comments = pop_item!(self, comments, Comments, context);
20206 let reset_async_low_term =
20207 pop_item!(self, reset_async_low_term, ResetAsyncLowTerm, context);
20208 let reset_async_low_token_built = ResetAsyncLowToken {
20209 reset_async_low_term: (&reset_async_low_term)
20210 .try_into()
20211 .map_err(parol_runtime::ParolError::UserError)?,
20212 comments: Box::new(comments),
20213 };
20214 self.user_grammar
20216 .reset_async_low_token(&reset_async_low_token_built)?;
20217 self.push(
20218 ASTType::ResetAsyncLowToken(reset_async_low_token_built),
20219 context,
20220 );
20221 Ok(())
20222 }
20223
20224 #[parol_runtime::function_name::named]
20229 fn reset_sync_high_token(
20230 &mut self,
20231 _reset_sync_high_term: &ParseTreeType<'t>,
20232 _comments: &ParseTreeType<'t>,
20233 ) -> Result<()> {
20234 let context = function_name!();
20235 trace!("{}", self.trace_item_stack(context));
20236 let comments = pop_item!(self, comments, Comments, context);
20237 let reset_sync_high_term =
20238 pop_item!(self, reset_sync_high_term, ResetSyncHighTerm, context);
20239 let reset_sync_high_token_built = ResetSyncHighToken {
20240 reset_sync_high_term: (&reset_sync_high_term)
20241 .try_into()
20242 .map_err(parol_runtime::ParolError::UserError)?,
20243 comments: Box::new(comments),
20244 };
20245 self.user_grammar
20247 .reset_sync_high_token(&reset_sync_high_token_built)?;
20248 self.push(
20249 ASTType::ResetSyncHighToken(reset_sync_high_token_built),
20250 context,
20251 );
20252 Ok(())
20253 }
20254
20255 #[parol_runtime::function_name::named]
20260 fn reset_sync_low_token(
20261 &mut self,
20262 _reset_sync_low_term: &ParseTreeType<'t>,
20263 _comments: &ParseTreeType<'t>,
20264 ) -> Result<()> {
20265 let context = function_name!();
20266 trace!("{}", self.trace_item_stack(context));
20267 let comments = pop_item!(self, comments, Comments, context);
20268 let reset_sync_low_term = pop_item!(self, reset_sync_low_term, ResetSyncLowTerm, context);
20269 let reset_sync_low_token_built = ResetSyncLowToken {
20270 reset_sync_low_term: (&reset_sync_low_term)
20271 .try_into()
20272 .map_err(parol_runtime::ParolError::UserError)?,
20273 comments: Box::new(comments),
20274 };
20275 self.user_grammar
20277 .reset_sync_low_token(&reset_sync_low_token_built)?;
20278 self.push(
20279 ASTType::ResetSyncLowToken(reset_sync_low_token_built),
20280 context,
20281 );
20282 Ok(())
20283 }
20284
20285 #[parol_runtime::function_name::named]
20290 fn return_token(
20291 &mut self,
20292 _return_term: &ParseTreeType<'t>,
20293 _comments: &ParseTreeType<'t>,
20294 ) -> Result<()> {
20295 let context = function_name!();
20296 trace!("{}", self.trace_item_stack(context));
20297 let comments = pop_item!(self, comments, Comments, context);
20298 let return_term = pop_item!(self, return_term, ReturnTerm, context);
20299 let return_token_built = ReturnToken {
20300 return_term: (&return_term)
20301 .try_into()
20302 .map_err(parol_runtime::ParolError::UserError)?,
20303 comments: Box::new(comments),
20304 };
20305 self.user_grammar.return_token(&return_token_built)?;
20307 self.push(ASTType::ReturnToken(return_token_built), context);
20308 Ok(())
20309 }
20310
20311 #[parol_runtime::function_name::named]
20316 fn rev_token(
20317 &mut self,
20318 _rev_term: &ParseTreeType<'t>,
20319 _comments: &ParseTreeType<'t>,
20320 ) -> Result<()> {
20321 let context = function_name!();
20322 trace!("{}", self.trace_item_stack(context));
20323 let comments = pop_item!(self, comments, Comments, context);
20324 let rev_term = pop_item!(self, rev_term, RevTerm, context);
20325 let rev_token_built = RevToken {
20326 rev_term: (&rev_term)
20327 .try_into()
20328 .map_err(parol_runtime::ParolError::UserError)?,
20329 comments: Box::new(comments),
20330 };
20331 self.user_grammar.rev_token(&rev_token_built)?;
20333 self.push(ASTType::RevToken(rev_token_built), context);
20334 Ok(())
20335 }
20336
20337 #[parol_runtime::function_name::named]
20342 fn break_token(
20343 &mut self,
20344 _break_term: &ParseTreeType<'t>,
20345 _comments: &ParseTreeType<'t>,
20346 ) -> Result<()> {
20347 let context = function_name!();
20348 trace!("{}", self.trace_item_stack(context));
20349 let comments = pop_item!(self, comments, Comments, context);
20350 let break_term = pop_item!(self, break_term, BreakTerm, context);
20351 let break_token_built = BreakToken {
20352 break_term: (&break_term)
20353 .try_into()
20354 .map_err(parol_runtime::ParolError::UserError)?,
20355 comments: Box::new(comments),
20356 };
20357 self.user_grammar.break_token(&break_token_built)?;
20359 self.push(ASTType::BreakToken(break_token_built), context);
20360 Ok(())
20361 }
20362
20363 #[parol_runtime::function_name::named]
20368 fn same_token(
20369 &mut self,
20370 _same_term: &ParseTreeType<'t>,
20371 _comments: &ParseTreeType<'t>,
20372 ) -> Result<()> {
20373 let context = function_name!();
20374 trace!("{}", self.trace_item_stack(context));
20375 let comments = pop_item!(self, comments, Comments, context);
20376 let same_term = pop_item!(self, same_term, SameTerm, context);
20377 let same_token_built = SameToken {
20378 same_term: (&same_term)
20379 .try_into()
20380 .map_err(parol_runtime::ParolError::UserError)?,
20381 comments: Box::new(comments),
20382 };
20383 self.user_grammar.same_token(&same_token_built)?;
20385 self.push(ASTType::SameToken(same_token_built), context);
20386 Ok(())
20387 }
20388
20389 #[parol_runtime::function_name::named]
20394 fn signed_token(
20395 &mut self,
20396 _signed_term: &ParseTreeType<'t>,
20397 _comments: &ParseTreeType<'t>,
20398 ) -> Result<()> {
20399 let context = function_name!();
20400 trace!("{}", self.trace_item_stack(context));
20401 let comments = pop_item!(self, comments, Comments, context);
20402 let signed_term = pop_item!(self, signed_term, SignedTerm, context);
20403 let signed_token_built = SignedToken {
20404 signed_term: (&signed_term)
20405 .try_into()
20406 .map_err(parol_runtime::ParolError::UserError)?,
20407 comments: Box::new(comments),
20408 };
20409 self.user_grammar.signed_token(&signed_token_built)?;
20411 self.push(ASTType::SignedToken(signed_token_built), context);
20412 Ok(())
20413 }
20414
20415 #[parol_runtime::function_name::named]
20420 fn step_token(
20421 &mut self,
20422 _step_term: &ParseTreeType<'t>,
20423 _comments: &ParseTreeType<'t>,
20424 ) -> Result<()> {
20425 let context = function_name!();
20426 trace!("{}", self.trace_item_stack(context));
20427 let comments = pop_item!(self, comments, Comments, context);
20428 let step_term = pop_item!(self, step_term, StepTerm, context);
20429 let step_token_built = StepToken {
20430 step_term: (&step_term)
20431 .try_into()
20432 .map_err(parol_runtime::ParolError::UserError)?,
20433 comments: Box::new(comments),
20434 };
20435 self.user_grammar.step_token(&step_token_built)?;
20437 self.push(ASTType::StepToken(step_token_built), context);
20438 Ok(())
20439 }
20440
20441 #[parol_runtime::function_name::named]
20446 fn string_token(
20447 &mut self,
20448 _string_term: &ParseTreeType<'t>,
20449 _comments: &ParseTreeType<'t>,
20450 ) -> Result<()> {
20451 let context = function_name!();
20452 trace!("{}", self.trace_item_stack(context));
20453 let comments = pop_item!(self, comments, Comments, context);
20454 let string_term = pop_item!(self, string_term, StringTerm, context);
20455 let string_token_built = StringToken {
20456 string_term: (&string_term)
20457 .try_into()
20458 .map_err(parol_runtime::ParolError::UserError)?,
20459 comments: Box::new(comments),
20460 };
20461 self.user_grammar.string_token(&string_token_built)?;
20463 self.push(ASTType::StringToken(string_token_built), context);
20464 Ok(())
20465 }
20466
20467 #[parol_runtime::function_name::named]
20472 fn struct_token(
20473 &mut self,
20474 _struct_term: &ParseTreeType<'t>,
20475 _comments: &ParseTreeType<'t>,
20476 ) -> Result<()> {
20477 let context = function_name!();
20478 trace!("{}", self.trace_item_stack(context));
20479 let comments = pop_item!(self, comments, Comments, context);
20480 let struct_term = pop_item!(self, struct_term, StructTerm, context);
20481 let struct_token_built = StructToken {
20482 struct_term: (&struct_term)
20483 .try_into()
20484 .map_err(parol_runtime::ParolError::UserError)?,
20485 comments: Box::new(comments),
20486 };
20487 self.user_grammar.struct_token(&struct_token_built)?;
20489 self.push(ASTType::StructToken(struct_token_built), context);
20490 Ok(())
20491 }
20492
20493 #[parol_runtime::function_name::named]
20498 fn switch_token(
20499 &mut self,
20500 _switch_term: &ParseTreeType<'t>,
20501 _comments: &ParseTreeType<'t>,
20502 ) -> Result<()> {
20503 let context = function_name!();
20504 trace!("{}", self.trace_item_stack(context));
20505 let comments = pop_item!(self, comments, Comments, context);
20506 let switch_term = pop_item!(self, switch_term, SwitchTerm, context);
20507 let switch_token_built = SwitchToken {
20508 switch_term: (&switch_term)
20509 .try_into()
20510 .map_err(parol_runtime::ParolError::UserError)?,
20511 comments: Box::new(comments),
20512 };
20513 self.user_grammar.switch_token(&switch_token_built)?;
20515 self.push(ASTType::SwitchToken(switch_token_built), context);
20516 Ok(())
20517 }
20518
20519 #[parol_runtime::function_name::named]
20524 fn tri_token(
20525 &mut self,
20526 _tri_term: &ParseTreeType<'t>,
20527 _comments: &ParseTreeType<'t>,
20528 ) -> Result<()> {
20529 let context = function_name!();
20530 trace!("{}", self.trace_item_stack(context));
20531 let comments = pop_item!(self, comments, Comments, context);
20532 let tri_term = pop_item!(self, tri_term, TriTerm, context);
20533 let tri_token_built = TriToken {
20534 tri_term: (&tri_term)
20535 .try_into()
20536 .map_err(parol_runtime::ParolError::UserError)?,
20537 comments: Box::new(comments),
20538 };
20539 self.user_grammar.tri_token(&tri_token_built)?;
20541 self.push(ASTType::TriToken(tri_token_built), context);
20542 Ok(())
20543 }
20544
20545 #[parol_runtime::function_name::named]
20550 fn true_token(
20551 &mut self,
20552 _true_term: &ParseTreeType<'t>,
20553 _comments: &ParseTreeType<'t>,
20554 ) -> Result<()> {
20555 let context = function_name!();
20556 trace!("{}", self.trace_item_stack(context));
20557 let comments = pop_item!(self, comments, Comments, context);
20558 let true_term = pop_item!(self, true_term, TrueTerm, context);
20559 let true_token_built = TrueToken {
20560 true_term: (&true_term)
20561 .try_into()
20562 .map_err(parol_runtime::ParolError::UserError)?,
20563 comments: Box::new(comments),
20564 };
20565 self.user_grammar.true_token(&true_token_built)?;
20567 self.push(ASTType::TrueToken(true_token_built), context);
20568 Ok(())
20569 }
20570
20571 #[parol_runtime::function_name::named]
20576 fn type_token(
20577 &mut self,
20578 _type_term: &ParseTreeType<'t>,
20579 _comments: &ParseTreeType<'t>,
20580 ) -> Result<()> {
20581 let context = function_name!();
20582 trace!("{}", self.trace_item_stack(context));
20583 let comments = pop_item!(self, comments, Comments, context);
20584 let type_term = pop_item!(self, type_term, TypeTerm, context);
20585 let type_token_built = TypeToken {
20586 type_term: (&type_term)
20587 .try_into()
20588 .map_err(parol_runtime::ParolError::UserError)?,
20589 comments: Box::new(comments),
20590 };
20591 self.user_grammar.type_token(&type_token_built)?;
20593 self.push(ASTType::TypeToken(type_token_built), context);
20594 Ok(())
20595 }
20596
20597 #[parol_runtime::function_name::named]
20602 fn p8_token(
20603 &mut self,
20604 _p8_term: &ParseTreeType<'t>,
20605 _comments: &ParseTreeType<'t>,
20606 ) -> Result<()> {
20607 let context = function_name!();
20608 trace!("{}", self.trace_item_stack(context));
20609 let comments = pop_item!(self, comments, Comments, context);
20610 let p8_term = pop_item!(self, p8_term, P8Term, context);
20611 let p8_token_built = P8Token {
20612 p8_term: (&p8_term)
20613 .try_into()
20614 .map_err(parol_runtime::ParolError::UserError)?,
20615 comments: Box::new(comments),
20616 };
20617 self.user_grammar.p8_token(&p8_token_built)?;
20619 self.push(ASTType::P8Token(p8_token_built), context);
20620 Ok(())
20621 }
20622
20623 #[parol_runtime::function_name::named]
20628 fn p16_token(
20629 &mut self,
20630 _p16_term: &ParseTreeType<'t>,
20631 _comments: &ParseTreeType<'t>,
20632 ) -> Result<()> {
20633 let context = function_name!();
20634 trace!("{}", self.trace_item_stack(context));
20635 let comments = pop_item!(self, comments, Comments, context);
20636 let p16_term = pop_item!(self, p16_term, P16Term, context);
20637 let p16_token_built = P16Token {
20638 p16_term: (&p16_term)
20639 .try_into()
20640 .map_err(parol_runtime::ParolError::UserError)?,
20641 comments: Box::new(comments),
20642 };
20643 self.user_grammar.p16_token(&p16_token_built)?;
20645 self.push(ASTType::P16Token(p16_token_built), context);
20646 Ok(())
20647 }
20648
20649 #[parol_runtime::function_name::named]
20654 fn p32_token(
20655 &mut self,
20656 _p32_term: &ParseTreeType<'t>,
20657 _comments: &ParseTreeType<'t>,
20658 ) -> Result<()> {
20659 let context = function_name!();
20660 trace!("{}", self.trace_item_stack(context));
20661 let comments = pop_item!(self, comments, Comments, context);
20662 let p32_term = pop_item!(self, p32_term, P32Term, context);
20663 let p32_token_built = P32Token {
20664 p32_term: (&p32_term)
20665 .try_into()
20666 .map_err(parol_runtime::ParolError::UserError)?,
20667 comments: Box::new(comments),
20668 };
20669 self.user_grammar.p32_token(&p32_token_built)?;
20671 self.push(ASTType::P32Token(p32_token_built), context);
20672 Ok(())
20673 }
20674
20675 #[parol_runtime::function_name::named]
20680 fn p64_token(
20681 &mut self,
20682 _p64_term: &ParseTreeType<'t>,
20683 _comments: &ParseTreeType<'t>,
20684 ) -> Result<()> {
20685 let context = function_name!();
20686 trace!("{}", self.trace_item_stack(context));
20687 let comments = pop_item!(self, comments, Comments, context);
20688 let p64_term = pop_item!(self, p64_term, P64Term, context);
20689 let p64_token_built = P64Token {
20690 p64_term: (&p64_term)
20691 .try_into()
20692 .map_err(parol_runtime::ParolError::UserError)?,
20693 comments: Box::new(comments),
20694 };
20695 self.user_grammar.p64_token(&p64_token_built)?;
20697 self.push(ASTType::P64Token(p64_token_built), context);
20698 Ok(())
20699 }
20700
20701 #[parol_runtime::function_name::named]
20706 fn u8_token(
20707 &mut self,
20708 _u8_term: &ParseTreeType<'t>,
20709 _comments: &ParseTreeType<'t>,
20710 ) -> Result<()> {
20711 let context = function_name!();
20712 trace!("{}", self.trace_item_stack(context));
20713 let comments = pop_item!(self, comments, Comments, context);
20714 let u8_term = pop_item!(self, u8_term, U8Term, context);
20715 let u8_token_built = U8Token {
20716 u8_term: (&u8_term)
20717 .try_into()
20718 .map_err(parol_runtime::ParolError::UserError)?,
20719 comments: Box::new(comments),
20720 };
20721 self.user_grammar.u8_token(&u8_token_built)?;
20723 self.push(ASTType::U8Token(u8_token_built), context);
20724 Ok(())
20725 }
20726
20727 #[parol_runtime::function_name::named]
20732 fn u16_token(
20733 &mut self,
20734 _u16_term: &ParseTreeType<'t>,
20735 _comments: &ParseTreeType<'t>,
20736 ) -> Result<()> {
20737 let context = function_name!();
20738 trace!("{}", self.trace_item_stack(context));
20739 let comments = pop_item!(self, comments, Comments, context);
20740 let u16_term = pop_item!(self, u16_term, U16Term, context);
20741 let u16_token_built = U16Token {
20742 u16_term: (&u16_term)
20743 .try_into()
20744 .map_err(parol_runtime::ParolError::UserError)?,
20745 comments: Box::new(comments),
20746 };
20747 self.user_grammar.u16_token(&u16_token_built)?;
20749 self.push(ASTType::U16Token(u16_token_built), context);
20750 Ok(())
20751 }
20752
20753 #[parol_runtime::function_name::named]
20758 fn u32_token(
20759 &mut self,
20760 _u32_term: &ParseTreeType<'t>,
20761 _comments: &ParseTreeType<'t>,
20762 ) -> Result<()> {
20763 let context = function_name!();
20764 trace!("{}", self.trace_item_stack(context));
20765 let comments = pop_item!(self, comments, Comments, context);
20766 let u32_term = pop_item!(self, u32_term, U32Term, context);
20767 let u32_token_built = U32Token {
20768 u32_term: (&u32_term)
20769 .try_into()
20770 .map_err(parol_runtime::ParolError::UserError)?,
20771 comments: Box::new(comments),
20772 };
20773 self.user_grammar.u32_token(&u32_token_built)?;
20775 self.push(ASTType::U32Token(u32_token_built), context);
20776 Ok(())
20777 }
20778
20779 #[parol_runtime::function_name::named]
20784 fn u64_token(
20785 &mut self,
20786 _u64_term: &ParseTreeType<'t>,
20787 _comments: &ParseTreeType<'t>,
20788 ) -> Result<()> {
20789 let context = function_name!();
20790 trace!("{}", self.trace_item_stack(context));
20791 let comments = pop_item!(self, comments, Comments, context);
20792 let u64_term = pop_item!(self, u64_term, U64Term, context);
20793 let u64_token_built = U64Token {
20794 u64_term: (&u64_term)
20795 .try_into()
20796 .map_err(parol_runtime::ParolError::UserError)?,
20797 comments: Box::new(comments),
20798 };
20799 self.user_grammar.u64_token(&u64_token_built)?;
20801 self.push(ASTType::U64Token(u64_token_built), context);
20802 Ok(())
20803 }
20804
20805 #[parol_runtime::function_name::named]
20810 fn union_token(
20811 &mut self,
20812 _union_term: &ParseTreeType<'t>,
20813 _comments: &ParseTreeType<'t>,
20814 ) -> Result<()> {
20815 let context = function_name!();
20816 trace!("{}", self.trace_item_stack(context));
20817 let comments = pop_item!(self, comments, Comments, context);
20818 let union_term = pop_item!(self, union_term, UnionTerm, context);
20819 let union_token_built = UnionToken {
20820 union_term: (&union_term)
20821 .try_into()
20822 .map_err(parol_runtime::ParolError::UserError)?,
20823 comments: Box::new(comments),
20824 };
20825 self.user_grammar.union_token(&union_token_built)?;
20827 self.push(ASTType::UnionToken(union_token_built), context);
20828 Ok(())
20829 }
20830
20831 #[parol_runtime::function_name::named]
20836 fn unsafe_token(
20837 &mut self,
20838 _unsafe_term: &ParseTreeType<'t>,
20839 _comments: &ParseTreeType<'t>,
20840 ) -> Result<()> {
20841 let context = function_name!();
20842 trace!("{}", self.trace_item_stack(context));
20843 let comments = pop_item!(self, comments, Comments, context);
20844 let unsafe_term = pop_item!(self, unsafe_term, UnsafeTerm, context);
20845 let unsafe_token_built = UnsafeToken {
20846 unsafe_term: (&unsafe_term)
20847 .try_into()
20848 .map_err(parol_runtime::ParolError::UserError)?,
20849 comments: Box::new(comments),
20850 };
20851 self.user_grammar.unsafe_token(&unsafe_token_built)?;
20853 self.push(ASTType::UnsafeToken(unsafe_token_built), context);
20854 Ok(())
20855 }
20856
20857 #[parol_runtime::function_name::named]
20862 fn var_token(
20863 &mut self,
20864 _var_term: &ParseTreeType<'t>,
20865 _comments: &ParseTreeType<'t>,
20866 ) -> Result<()> {
20867 let context = function_name!();
20868 trace!("{}", self.trace_item_stack(context));
20869 let comments = pop_item!(self, comments, Comments, context);
20870 let var_term = pop_item!(self, var_term, VarTerm, context);
20871 let var_token_built = VarToken {
20872 var_term: (&var_term)
20873 .try_into()
20874 .map_err(parol_runtime::ParolError::UserError)?,
20875 comments: Box::new(comments),
20876 };
20877 self.user_grammar.var_token(&var_token_built)?;
20879 self.push(ASTType::VarToken(var_token_built), context);
20880 Ok(())
20881 }
20882
20883 #[parol_runtime::function_name::named]
20888 fn dollar_identifier_token(
20889 &mut self,
20890 _dollar_identifier_term: &ParseTreeType<'t>,
20891 _comments: &ParseTreeType<'t>,
20892 ) -> Result<()> {
20893 let context = function_name!();
20894 trace!("{}", self.trace_item_stack(context));
20895 let comments = pop_item!(self, comments, Comments, context);
20896 let dollar_identifier_term =
20897 pop_item!(self, dollar_identifier_term, DollarIdentifierTerm, context);
20898 let dollar_identifier_token_built = DollarIdentifierToken {
20899 dollar_identifier_term: (&dollar_identifier_term)
20900 .try_into()
20901 .map_err(parol_runtime::ParolError::UserError)?,
20902 comments: Box::new(comments),
20903 };
20904 self.user_grammar
20906 .dollar_identifier_token(&dollar_identifier_token_built)?;
20907 self.push(
20908 ASTType::DollarIdentifierToken(dollar_identifier_token_built),
20909 context,
20910 );
20911 Ok(())
20912 }
20913
20914 #[parol_runtime::function_name::named]
20919 fn identifier_token(
20920 &mut self,
20921 _identifier_term: &ParseTreeType<'t>,
20922 _comments: &ParseTreeType<'t>,
20923 ) -> Result<()> {
20924 let context = function_name!();
20925 trace!("{}", self.trace_item_stack(context));
20926 let comments = pop_item!(self, comments, Comments, context);
20927 let identifier_term = pop_item!(self, identifier_term, IdentifierTerm, context);
20928 let identifier_token_built = IdentifierToken {
20929 identifier_term: (&identifier_term)
20930 .try_into()
20931 .map_err(parol_runtime::ParolError::UserError)?,
20932 comments: Box::new(comments),
20933 };
20934 self.user_grammar
20936 .identifier_token(&identifier_token_built)?;
20937 self.push(ASTType::IdentifierToken(identifier_token_built), context);
20938 Ok(())
20939 }
20940
20941 #[parol_runtime::function_name::named]
20946 fn any_token(&mut self, _any_term: &ParseTreeType<'t>) -> Result<()> {
20947 let context = function_name!();
20948 trace!("{}", self.trace_item_stack(context));
20949 let any_term = pop_item!(self, any_term, AnyTerm, context);
20950 let any_token_built = AnyToken {
20951 any_term: (&any_term)
20952 .try_into()
20953 .map_err(parol_runtime::ParolError::UserError)?,
20954 };
20955 self.user_grammar.any_token(&any_token_built)?;
20957 self.push(ASTType::AnyToken(any_token_built), context);
20958 Ok(())
20959 }
20960
20961 #[parol_runtime::function_name::named]
20966 fn start(&mut self, _start_token: &ParseTreeType<'t>) -> Result<()> {
20967 let context = function_name!();
20968 trace!("{}", self.trace_item_stack(context));
20969 let start_token = pop_item!(self, start_token, StartToken, context);
20970 let start_built = Start {
20971 start_token: (&start_token)
20972 .try_into()
20973 .map_err(parol_runtime::ParolError::UserError)?,
20974 };
20975 self.user_grammar.start(&start_built)?;
20977 self.push(ASTType::Start(start_built), context);
20978 Ok(())
20979 }
20980
20981 #[parol_runtime::function_name::named]
20986 fn string_literal(&mut self, _string_literal_token: &ParseTreeType<'t>) -> Result<()> {
20987 let context = function_name!();
20988 trace!("{}", self.trace_item_stack(context));
20989 let string_literal_token =
20990 pop_item!(self, string_literal_token, StringLiteralToken, context);
20991 let string_literal_built = StringLiteral {
20992 string_literal_token: (&string_literal_token)
20993 .try_into()
20994 .map_err(parol_runtime::ParolError::UserError)?,
20995 };
20996 self.user_grammar.string_literal(&string_literal_built)?;
20998 self.push(ASTType::StringLiteral(string_literal_built), context);
20999 Ok(())
21000 }
21001
21002 #[parol_runtime::function_name::named]
21007 fn exponent(&mut self, _exponent_token: &ParseTreeType<'t>) -> Result<()> {
21008 let context = function_name!();
21009 trace!("{}", self.trace_item_stack(context));
21010 let exponent_token = pop_item!(self, exponent_token, ExponentToken, context);
21011 let exponent_built = Exponent {
21012 exponent_token: (&exponent_token)
21013 .try_into()
21014 .map_err(parol_runtime::ParolError::UserError)?,
21015 };
21016 self.user_grammar.exponent(&exponent_built)?;
21018 self.push(ASTType::Exponent(exponent_built), context);
21019 Ok(())
21020 }
21021
21022 #[parol_runtime::function_name::named]
21027 fn fixed_point(&mut self, _fixed_point_token: &ParseTreeType<'t>) -> Result<()> {
21028 let context = function_name!();
21029 trace!("{}", self.trace_item_stack(context));
21030 let fixed_point_token = pop_item!(self, fixed_point_token, FixedPointToken, context);
21031 let fixed_point_built = FixedPoint {
21032 fixed_point_token: (&fixed_point_token)
21033 .try_into()
21034 .map_err(parol_runtime::ParolError::UserError)?,
21035 };
21036 self.user_grammar.fixed_point(&fixed_point_built)?;
21038 self.push(ASTType::FixedPoint(fixed_point_built), context);
21039 Ok(())
21040 }
21041
21042 #[parol_runtime::function_name::named]
21047 fn based(&mut self, _based_token: &ParseTreeType<'t>) -> Result<()> {
21048 let context = function_name!();
21049 trace!("{}", self.trace_item_stack(context));
21050 let based_token = pop_item!(self, based_token, BasedToken, context);
21051 let based_built = Based {
21052 based_token: (&based_token)
21053 .try_into()
21054 .map_err(parol_runtime::ParolError::UserError)?,
21055 };
21056 self.user_grammar.based(&based_built)?;
21058 self.push(ASTType::Based(based_built), context);
21059 Ok(())
21060 }
21061
21062 #[parol_runtime::function_name::named]
21067 fn base_less(&mut self, _base_less_token: &ParseTreeType<'t>) -> Result<()> {
21068 let context = function_name!();
21069 trace!("{}", self.trace_item_stack(context));
21070 let base_less_token = pop_item!(self, base_less_token, BaseLessToken, context);
21071 let base_less_built = BaseLess {
21072 base_less_token: (&base_less_token)
21073 .try_into()
21074 .map_err(parol_runtime::ParolError::UserError)?,
21075 };
21076 self.user_grammar.base_less(&base_less_built)?;
21078 self.push(ASTType::BaseLess(base_less_built), context);
21079 Ok(())
21080 }
21081
21082 #[parol_runtime::function_name::named]
21087 fn all_bit(&mut self, _all_bit_token: &ParseTreeType<'t>) -> Result<()> {
21088 let context = function_name!();
21089 trace!("{}", self.trace_item_stack(context));
21090 let all_bit_token = pop_item!(self, all_bit_token, AllBitToken, context);
21091 let all_bit_built = AllBit {
21092 all_bit_token: (&all_bit_token)
21093 .try_into()
21094 .map_err(parol_runtime::ParolError::UserError)?,
21095 };
21096 self.user_grammar.all_bit(&all_bit_built)?;
21098 self.push(ASTType::AllBit(all_bit_built), context);
21099 Ok(())
21100 }
21101
21102 #[parol_runtime::function_name::named]
21107 fn assignment_operator(
21108 &mut self,
21109 _assignment_operator_token: &ParseTreeType<'t>,
21110 ) -> Result<()> {
21111 let context = function_name!();
21112 trace!("{}", self.trace_item_stack(context));
21113 let assignment_operator_token = pop_item!(
21114 self,
21115 assignment_operator_token,
21116 AssignmentOperatorToken,
21117 context
21118 );
21119 let assignment_operator_built = AssignmentOperator {
21120 assignment_operator_token: (&assignment_operator_token)
21121 .try_into()
21122 .map_err(parol_runtime::ParolError::UserError)?,
21123 };
21124 self.user_grammar
21126 .assignment_operator(&assignment_operator_built)?;
21127 self.push(
21128 ASTType::AssignmentOperator(assignment_operator_built),
21129 context,
21130 );
21131 Ok(())
21132 }
21133
21134 #[parol_runtime::function_name::named]
21139 fn diamond_operator(&mut self, _diamond_operator_token: &ParseTreeType<'t>) -> Result<()> {
21140 let context = function_name!();
21141 trace!("{}", self.trace_item_stack(context));
21142 let diamond_operator_token =
21143 pop_item!(self, diamond_operator_token, DiamondOperatorToken, context);
21144 let diamond_operator_built = DiamondOperator {
21145 diamond_operator_token: (&diamond_operator_token)
21146 .try_into()
21147 .map_err(parol_runtime::ParolError::UserError)?,
21148 };
21149 self.user_grammar
21151 .diamond_operator(&diamond_operator_built)?;
21152 self.push(ASTType::DiamondOperator(diamond_operator_built), context);
21153 Ok(())
21154 }
21155
21156 #[parol_runtime::function_name::named]
21161 fn operator01(&mut self, _operator01_token: &ParseTreeType<'t>) -> Result<()> {
21162 let context = function_name!();
21163 trace!("{}", self.trace_item_stack(context));
21164 let operator01_token = pop_item!(self, operator01_token, Operator01Token, context);
21165 let operator01_built = Operator01 {
21166 operator01_token: (&operator01_token)
21167 .try_into()
21168 .map_err(parol_runtime::ParolError::UserError)?,
21169 };
21170 self.user_grammar.operator01(&operator01_built)?;
21172 self.push(ASTType::Operator01(operator01_built), context);
21173 Ok(())
21174 }
21175
21176 #[parol_runtime::function_name::named]
21181 fn operator02(&mut self, _operator02_token: &ParseTreeType<'t>) -> Result<()> {
21182 let context = function_name!();
21183 trace!("{}", self.trace_item_stack(context));
21184 let operator02_token = pop_item!(self, operator02_token, Operator02Token, context);
21185 let operator02_built = Operator02 {
21186 operator02_token: (&operator02_token)
21187 .try_into()
21188 .map_err(parol_runtime::ParolError::UserError)?,
21189 };
21190 self.user_grammar.operator02(&operator02_built)?;
21192 self.push(ASTType::Operator02(operator02_built), context);
21193 Ok(())
21194 }
21195
21196 #[parol_runtime::function_name::named]
21201 fn operator03(&mut self, _operator03_token: &ParseTreeType<'t>) -> Result<()> {
21202 let context = function_name!();
21203 trace!("{}", self.trace_item_stack(context));
21204 let operator03_token = pop_item!(self, operator03_token, Operator03Token, context);
21205 let operator03_built = Operator03 {
21206 operator03_token: (&operator03_token)
21207 .try_into()
21208 .map_err(parol_runtime::ParolError::UserError)?,
21209 };
21210 self.user_grammar.operator03(&operator03_built)?;
21212 self.push(ASTType::Operator03(operator03_built), context);
21213 Ok(())
21214 }
21215
21216 #[parol_runtime::function_name::named]
21221 fn operator04(&mut self, _operator04_token: &ParseTreeType<'t>) -> Result<()> {
21222 let context = function_name!();
21223 trace!("{}", self.trace_item_stack(context));
21224 let operator04_token = pop_item!(self, operator04_token, Operator04Token, context);
21225 let operator04_built = Operator04 {
21226 operator04_token: (&operator04_token)
21227 .try_into()
21228 .map_err(parol_runtime::ParolError::UserError)?,
21229 };
21230 self.user_grammar.operator04(&operator04_built)?;
21232 self.push(ASTType::Operator04(operator04_built), context);
21233 Ok(())
21234 }
21235
21236 #[parol_runtime::function_name::named]
21241 fn operator05(&mut self, _operator05_token: &ParseTreeType<'t>) -> Result<()> {
21242 let context = function_name!();
21243 trace!("{}", self.trace_item_stack(context));
21244 let operator05_token = pop_item!(self, operator05_token, Operator05Token, context);
21245 let operator05_built = Operator05 {
21246 operator05_token: (&operator05_token)
21247 .try_into()
21248 .map_err(parol_runtime::ParolError::UserError)?,
21249 };
21250 self.user_grammar.operator05(&operator05_built)?;
21252 self.push(ASTType::Operator05(operator05_built), context);
21253 Ok(())
21254 }
21255
21256 #[parol_runtime::function_name::named]
21261 fn operator06(&mut self, _operator06_token: &ParseTreeType<'t>) -> Result<()> {
21262 let context = function_name!();
21263 trace!("{}", self.trace_item_stack(context));
21264 let operator06_token = pop_item!(self, operator06_token, Operator06Token, context);
21265 let operator06_built = Operator06 {
21266 operator06_token: (&operator06_token)
21267 .try_into()
21268 .map_err(parol_runtime::ParolError::UserError)?,
21269 };
21270 self.user_grammar.operator06(&operator06_built)?;
21272 self.push(ASTType::Operator06(operator06_built), context);
21273 Ok(())
21274 }
21275
21276 #[parol_runtime::function_name::named]
21281 fn operator07(&mut self, _operator07_token: &ParseTreeType<'t>) -> Result<()> {
21282 let context = function_name!();
21283 trace!("{}", self.trace_item_stack(context));
21284 let operator07_token = pop_item!(self, operator07_token, Operator07Token, context);
21285 let operator07_built = Operator07 {
21286 operator07_token: (&operator07_token)
21287 .try_into()
21288 .map_err(parol_runtime::ParolError::UserError)?,
21289 };
21290 self.user_grammar.operator07(&operator07_built)?;
21292 self.push(ASTType::Operator07(operator07_built), context);
21293 Ok(())
21294 }
21295
21296 #[parol_runtime::function_name::named]
21301 fn operator08(&mut self, _operator08_token: &ParseTreeType<'t>) -> Result<()> {
21302 let context = function_name!();
21303 trace!("{}", self.trace_item_stack(context));
21304 let operator08_token = pop_item!(self, operator08_token, Operator08Token, context);
21305 let operator08_built = Operator08 {
21306 operator08_token: (&operator08_token)
21307 .try_into()
21308 .map_err(parol_runtime::ParolError::UserError)?,
21309 };
21310 self.user_grammar.operator08(&operator08_built)?;
21312 self.push(ASTType::Operator08(operator08_built), context);
21313 Ok(())
21314 }
21315
21316 #[parol_runtime::function_name::named]
21321 fn unary_operator(&mut self, _unary_operator_token: &ParseTreeType<'t>) -> Result<()> {
21322 let context = function_name!();
21323 trace!("{}", self.trace_item_stack(context));
21324 let unary_operator_token =
21325 pop_item!(self, unary_operator_token, UnaryOperatorToken, context);
21326 let unary_operator_built = UnaryOperator {
21327 unary_operator_token: (&unary_operator_token)
21328 .try_into()
21329 .map_err(parol_runtime::ParolError::UserError)?,
21330 };
21331 self.user_grammar.unary_operator(&unary_operator_built)?;
21333 self.push(ASTType::UnaryOperator(unary_operator_built), context);
21334 Ok(())
21335 }
21336
21337 #[parol_runtime::function_name::named]
21342 fn colon(&mut self, _colon_token: &ParseTreeType<'t>) -> Result<()> {
21343 let context = function_name!();
21344 trace!("{}", self.trace_item_stack(context));
21345 let colon_token = pop_item!(self, colon_token, ColonToken, context);
21346 let colon_built = Colon {
21347 colon_token: (&colon_token)
21348 .try_into()
21349 .map_err(parol_runtime::ParolError::UserError)?,
21350 };
21351 self.user_grammar.colon(&colon_built)?;
21353 self.push(ASTType::Colon(colon_built), context);
21354 Ok(())
21355 }
21356
21357 #[parol_runtime::function_name::named]
21362 fn colon_colon_l_angle(
21363 &mut self,
21364 _colon_colon_l_angle_token: &ParseTreeType<'t>,
21365 ) -> Result<()> {
21366 let context = function_name!();
21367 trace!("{}", self.trace_item_stack(context));
21368 let colon_colon_l_angle_token = pop_item!(
21369 self,
21370 colon_colon_l_angle_token,
21371 ColonColonLAngleToken,
21372 context
21373 );
21374 let colon_colon_l_angle_built = ColonColonLAngle {
21375 colon_colon_l_angle_token: (&colon_colon_l_angle_token)
21376 .try_into()
21377 .map_err(parol_runtime::ParolError::UserError)?,
21378 };
21379 self.user_grammar
21381 .colon_colon_l_angle(&colon_colon_l_angle_built)?;
21382 self.push(
21383 ASTType::ColonColonLAngle(colon_colon_l_angle_built),
21384 context,
21385 );
21386 Ok(())
21387 }
21388
21389 #[parol_runtime::function_name::named]
21394 fn colon_colon(&mut self, _colon_colon_token: &ParseTreeType<'t>) -> Result<()> {
21395 let context = function_name!();
21396 trace!("{}", self.trace_item_stack(context));
21397 let colon_colon_token = pop_item!(self, colon_colon_token, ColonColonToken, context);
21398 let colon_colon_built = ColonColon {
21399 colon_colon_token: (&colon_colon_token)
21400 .try_into()
21401 .map_err(parol_runtime::ParolError::UserError)?,
21402 };
21403 self.user_grammar.colon_colon(&colon_colon_built)?;
21405 self.push(ASTType::ColonColon(colon_colon_built), context);
21406 Ok(())
21407 }
21408
21409 #[parol_runtime::function_name::named]
21414 fn comma(&mut self, _comma_token: &ParseTreeType<'t>) -> Result<()> {
21415 let context = function_name!();
21416 trace!("{}", self.trace_item_stack(context));
21417 let comma_token = pop_item!(self, comma_token, CommaToken, context);
21418 let comma_built = Comma {
21419 comma_token: (&comma_token)
21420 .try_into()
21421 .map_err(parol_runtime::ParolError::UserError)?,
21422 };
21423 self.user_grammar.comma(&comma_built)?;
21425 self.push(ASTType::Comma(comma_built), context);
21426 Ok(())
21427 }
21428
21429 #[parol_runtime::function_name::named]
21434 fn dot_dot(&mut self, _dot_dot_token: &ParseTreeType<'t>) -> Result<()> {
21435 let context = function_name!();
21436 trace!("{}", self.trace_item_stack(context));
21437 let dot_dot_token = pop_item!(self, dot_dot_token, DotDotToken, context);
21438 let dot_dot_built = DotDot {
21439 dot_dot_token: (&dot_dot_token)
21440 .try_into()
21441 .map_err(parol_runtime::ParolError::UserError)?,
21442 };
21443 self.user_grammar.dot_dot(&dot_dot_built)?;
21445 self.push(ASTType::DotDot(dot_dot_built), context);
21446 Ok(())
21447 }
21448
21449 #[parol_runtime::function_name::named]
21454 fn dot_dot_equ(&mut self, _dot_dot_equ_token: &ParseTreeType<'t>) -> Result<()> {
21455 let context = function_name!();
21456 trace!("{}", self.trace_item_stack(context));
21457 let dot_dot_equ_token = pop_item!(self, dot_dot_equ_token, DotDotEquToken, context);
21458 let dot_dot_equ_built = DotDotEqu {
21459 dot_dot_equ_token: (&dot_dot_equ_token)
21460 .try_into()
21461 .map_err(parol_runtime::ParolError::UserError)?,
21462 };
21463 self.user_grammar.dot_dot_equ(&dot_dot_equ_built)?;
21465 self.push(ASTType::DotDotEqu(dot_dot_equ_built), context);
21466 Ok(())
21467 }
21468
21469 #[parol_runtime::function_name::named]
21474 fn dot(&mut self, _dot_token: &ParseTreeType<'t>) -> Result<()> {
21475 let context = function_name!();
21476 trace!("{}", self.trace_item_stack(context));
21477 let dot_token = pop_item!(self, dot_token, DotToken, context);
21478 let dot_built = Dot {
21479 dot_token: (&dot_token)
21480 .try_into()
21481 .map_err(parol_runtime::ParolError::UserError)?,
21482 };
21483 self.user_grammar.dot(&dot_built)?;
21485 self.push(ASTType::Dot(dot_built), context);
21486 Ok(())
21487 }
21488
21489 #[parol_runtime::function_name::named]
21494 fn equ(&mut self, _equ_token: &ParseTreeType<'t>) -> Result<()> {
21495 let context = function_name!();
21496 trace!("{}", self.trace_item_stack(context));
21497 let equ_token = pop_item!(self, equ_token, EquToken, context);
21498 let equ_built = Equ {
21499 equ_token: (&equ_token)
21500 .try_into()
21501 .map_err(parol_runtime::ParolError::UserError)?,
21502 };
21503 self.user_grammar.equ(&equ_built)?;
21505 self.push(ASTType::Equ(equ_built), context);
21506 Ok(())
21507 }
21508
21509 #[parol_runtime::function_name::named]
21514 fn hash_l_bracket(&mut self, _hash_l_bracket_token: &ParseTreeType<'t>) -> Result<()> {
21515 let context = function_name!();
21516 trace!("{}", self.trace_item_stack(context));
21517 let hash_l_bracket_token =
21518 pop_item!(self, hash_l_bracket_token, HashLBracketToken, context);
21519 let hash_l_bracket_built = HashLBracket {
21520 hash_l_bracket_token: (&hash_l_bracket_token)
21521 .try_into()
21522 .map_err(parol_runtime::ParolError::UserError)?,
21523 };
21524 self.user_grammar.hash_l_bracket(&hash_l_bracket_built)?;
21526 self.push(ASTType::HashLBracket(hash_l_bracket_built), context);
21527 Ok(())
21528 }
21529
21530 #[parol_runtime::function_name::named]
21535 fn hash(&mut self, _hash_token: &ParseTreeType<'t>) -> Result<()> {
21536 let context = function_name!();
21537 trace!("{}", self.trace_item_stack(context));
21538 let hash_token = pop_item!(self, hash_token, HashToken, context);
21539 let hash_built = Hash {
21540 hash_token: (&hash_token)
21541 .try_into()
21542 .map_err(parol_runtime::ParolError::UserError)?,
21543 };
21544 self.user_grammar.hash(&hash_built)?;
21546 self.push(ASTType::Hash(hash_built), context);
21547 Ok(())
21548 }
21549
21550 #[parol_runtime::function_name::named]
21555 fn question(&mut self, _question_token: &ParseTreeType<'t>) -> Result<()> {
21556 let context = function_name!();
21557 trace!("{}", self.trace_item_stack(context));
21558 let question_token = pop_item!(self, question_token, QuestionToken, context);
21559 let question_built = Question {
21560 question_token: (&question_token)
21561 .try_into()
21562 .map_err(parol_runtime::ParolError::UserError)?,
21563 };
21564 self.user_grammar.question(&question_built)?;
21566 self.push(ASTType::Question(question_built), context);
21567 Ok(())
21568 }
21569
21570 #[parol_runtime::function_name::named]
21575 fn quote_l_brace(&mut self, _quote_l_brace_token: &ParseTreeType<'t>) -> Result<()> {
21576 let context = function_name!();
21577 trace!("{}", self.trace_item_stack(context));
21578 let quote_l_brace_token = pop_item!(self, quote_l_brace_token, QuoteLBraceToken, context);
21579 let quote_l_brace_built = QuoteLBrace {
21580 quote_l_brace_token: ("e_l_brace_token)
21581 .try_into()
21582 .map_err(parol_runtime::ParolError::UserError)?,
21583 };
21584 self.user_grammar.quote_l_brace("e_l_brace_built)?;
21586 self.push(ASTType::QuoteLBrace(quote_l_brace_built), context);
21587 Ok(())
21588 }
21589
21590 #[parol_runtime::function_name::named]
21595 fn quote(&mut self, _quote_token: &ParseTreeType<'t>) -> Result<()> {
21596 let context = function_name!();
21597 trace!("{}", self.trace_item_stack(context));
21598 let quote_token = pop_item!(self, quote_token, QuoteToken, context);
21599 let quote_built = Quote {
21600 quote_token: ("e_token)
21601 .try_into()
21602 .map_err(parol_runtime::ParolError::UserError)?,
21603 };
21604 self.user_grammar.quote("e_built)?;
21606 self.push(ASTType::Quote(quote_built), context);
21607 Ok(())
21608 }
21609
21610 #[parol_runtime::function_name::named]
21615 fn l_angle(&mut self, _l_angle_token: &ParseTreeType<'t>) -> Result<()> {
21616 let context = function_name!();
21617 trace!("{}", self.trace_item_stack(context));
21618 let l_angle_token = pop_item!(self, l_angle_token, LAngleToken, context);
21619 let l_angle_built = LAngle {
21620 l_angle_token: (&l_angle_token)
21621 .try_into()
21622 .map_err(parol_runtime::ParolError::UserError)?,
21623 };
21624 self.user_grammar.l_angle(&l_angle_built)?;
21626 self.push(ASTType::LAngle(l_angle_built), context);
21627 Ok(())
21628 }
21629
21630 #[parol_runtime::function_name::named]
21635 fn embed_l_brace(&mut self, _embed_l_brace_token: &ParseTreeType<'t>) -> Result<()> {
21636 let context = function_name!();
21637 trace!("{}", self.trace_item_stack(context));
21638 let embed_l_brace_token = pop_item!(self, embed_l_brace_token, EmbedLBraceToken, context);
21639 let embed_l_brace_built = EmbedLBrace {
21640 embed_l_brace_token: (&embed_l_brace_token)
21641 .try_into()
21642 .map_err(parol_runtime::ParolError::UserError)?,
21643 };
21644 self.user_grammar.embed_l_brace(&embed_l_brace_built)?;
21646 self.push(ASTType::EmbedLBrace(embed_l_brace_built), context);
21647 Ok(())
21648 }
21649
21650 #[parol_runtime::function_name::named]
21655 fn escaped_l_brace(&mut self, _escaped_l_brace_token: &ParseTreeType<'t>) -> Result<()> {
21656 let context = function_name!();
21657 trace!("{}", self.trace_item_stack(context));
21658 let escaped_l_brace_token =
21659 pop_item!(self, escaped_l_brace_token, EscapedLBraceToken, context);
21660 let escaped_l_brace_built = EscapedLBrace {
21661 escaped_l_brace_token: (&escaped_l_brace_token)
21662 .try_into()
21663 .map_err(parol_runtime::ParolError::UserError)?,
21664 };
21665 self.user_grammar.escaped_l_brace(&escaped_l_brace_built)?;
21667 self.push(ASTType::EscapedLBrace(escaped_l_brace_built), context);
21668 Ok(())
21669 }
21670
21671 #[parol_runtime::function_name::named]
21676 fn triple_l_brace(&mut self, _triple_l_brace_token: &ParseTreeType<'t>) -> Result<()> {
21677 let context = function_name!();
21678 trace!("{}", self.trace_item_stack(context));
21679 let triple_l_brace_token =
21680 pop_item!(self, triple_l_brace_token, TripleLBraceToken, context);
21681 let triple_l_brace_built = TripleLBrace {
21682 triple_l_brace_token: (&triple_l_brace_token)
21683 .try_into()
21684 .map_err(parol_runtime::ParolError::UserError)?,
21685 };
21686 self.user_grammar.triple_l_brace(&triple_l_brace_built)?;
21688 self.push(ASTType::TripleLBrace(triple_l_brace_built), context);
21689 Ok(())
21690 }
21691
21692 #[parol_runtime::function_name::named]
21697 fn l_brace(&mut self, _l_brace_token: &ParseTreeType<'t>) -> Result<()> {
21698 let context = function_name!();
21699 trace!("{}", self.trace_item_stack(context));
21700 let l_brace_token = pop_item!(self, l_brace_token, LBraceToken, context);
21701 let l_brace_built = LBrace {
21702 l_brace_token: (&l_brace_token)
21703 .try_into()
21704 .map_err(parol_runtime::ParolError::UserError)?,
21705 };
21706 self.user_grammar.l_brace(&l_brace_built)?;
21708 self.push(ASTType::LBrace(l_brace_built), context);
21709 Ok(())
21710 }
21711
21712 #[parol_runtime::function_name::named]
21717 fn l_bracket(&mut self, _l_bracket_token: &ParseTreeType<'t>) -> Result<()> {
21718 let context = function_name!();
21719 trace!("{}", self.trace_item_stack(context));
21720 let l_bracket_token = pop_item!(self, l_bracket_token, LBracketToken, context);
21721 let l_bracket_built = LBracket {
21722 l_bracket_token: (&l_bracket_token)
21723 .try_into()
21724 .map_err(parol_runtime::ParolError::UserError)?,
21725 };
21726 self.user_grammar.l_bracket(&l_bracket_built)?;
21728 self.push(ASTType::LBracket(l_bracket_built), context);
21729 Ok(())
21730 }
21731
21732 #[parol_runtime::function_name::named]
21737 fn l_paren(&mut self, _l_paren_token: &ParseTreeType<'t>) -> Result<()> {
21738 let context = function_name!();
21739 trace!("{}", self.trace_item_stack(context));
21740 let l_paren_token = pop_item!(self, l_paren_token, LParenToken, context);
21741 let l_paren_built = LParen {
21742 l_paren_token: (&l_paren_token)
21743 .try_into()
21744 .map_err(parol_runtime::ParolError::UserError)?,
21745 };
21746 self.user_grammar.l_paren(&l_paren_built)?;
21748 self.push(ASTType::LParen(l_paren_built), context);
21749 Ok(())
21750 }
21751
21752 #[parol_runtime::function_name::named]
21757 fn l_t_minus(&mut self, _l_t_minus_token: &ParseTreeType<'t>) -> Result<()> {
21758 let context = function_name!();
21759 trace!("{}", self.trace_item_stack(context));
21760 let l_t_minus_token = pop_item!(self, l_t_minus_token, LTMinusToken, context);
21761 let l_t_minus_built = LTMinus {
21762 l_t_minus_token: (&l_t_minus_token)
21763 .try_into()
21764 .map_err(parol_runtime::ParolError::UserError)?,
21765 };
21766 self.user_grammar.l_t_minus(&l_t_minus_built)?;
21768 self.push(ASTType::LTMinus(l_t_minus_built), context);
21769 Ok(())
21770 }
21771
21772 #[parol_runtime::function_name::named]
21777 fn minus_colon(&mut self, _minus_colon_token: &ParseTreeType<'t>) -> Result<()> {
21778 let context = function_name!();
21779 trace!("{}", self.trace_item_stack(context));
21780 let minus_colon_token = pop_item!(self, minus_colon_token, MinusColonToken, context);
21781 let minus_colon_built = MinusColon {
21782 minus_colon_token: (&minus_colon_token)
21783 .try_into()
21784 .map_err(parol_runtime::ParolError::UserError)?,
21785 };
21786 self.user_grammar.minus_colon(&minus_colon_built)?;
21788 self.push(ASTType::MinusColon(minus_colon_built), context);
21789 Ok(())
21790 }
21791
21792 #[parol_runtime::function_name::named]
21797 fn minus_g_t(&mut self, _minus_g_t_token: &ParseTreeType<'t>) -> Result<()> {
21798 let context = function_name!();
21799 trace!("{}", self.trace_item_stack(context));
21800 let minus_g_t_token = pop_item!(self, minus_g_t_token, MinusGTToken, context);
21801 let minus_g_t_built = MinusGT {
21802 minus_g_t_token: (&minus_g_t_token)
21803 .try_into()
21804 .map_err(parol_runtime::ParolError::UserError)?,
21805 };
21806 self.user_grammar.minus_g_t(&minus_g_t_built)?;
21808 self.push(ASTType::MinusGT(minus_g_t_built), context);
21809 Ok(())
21810 }
21811
21812 #[parol_runtime::function_name::named]
21817 fn plus_colon(&mut self, _plus_colon_token: &ParseTreeType<'t>) -> Result<()> {
21818 let context = function_name!();
21819 trace!("{}", self.trace_item_stack(context));
21820 let plus_colon_token = pop_item!(self, plus_colon_token, PlusColonToken, context);
21821 let plus_colon_built = PlusColon {
21822 plus_colon_token: (&plus_colon_token)
21823 .try_into()
21824 .map_err(parol_runtime::ParolError::UserError)?,
21825 };
21826 self.user_grammar.plus_colon(&plus_colon_built)?;
21828 self.push(ASTType::PlusColon(plus_colon_built), context);
21829 Ok(())
21830 }
21831
21832 #[parol_runtime::function_name::named]
21837 fn r_angle(&mut self, _r_angle_token: &ParseTreeType<'t>) -> Result<()> {
21838 let context = function_name!();
21839 trace!("{}", self.trace_item_stack(context));
21840 let r_angle_token = pop_item!(self, r_angle_token, RAngleToken, context);
21841 let r_angle_built = RAngle {
21842 r_angle_token: (&r_angle_token)
21843 .try_into()
21844 .map_err(parol_runtime::ParolError::UserError)?,
21845 };
21846 self.user_grammar.r_angle(&r_angle_built)?;
21848 self.push(ASTType::RAngle(r_angle_built), context);
21849 Ok(())
21850 }
21851
21852 #[parol_runtime::function_name::named]
21857 fn embed_r_brace(&mut self, _embed_r_brace_token: &ParseTreeType<'t>) -> Result<()> {
21858 let context = function_name!();
21859 trace!("{}", self.trace_item_stack(context));
21860 let embed_r_brace_token = pop_item!(self, embed_r_brace_token, EmbedRBraceToken, context);
21861 let embed_r_brace_built = EmbedRBrace {
21862 embed_r_brace_token: (&embed_r_brace_token)
21863 .try_into()
21864 .map_err(parol_runtime::ParolError::UserError)?,
21865 };
21866 self.user_grammar.embed_r_brace(&embed_r_brace_built)?;
21868 self.push(ASTType::EmbedRBrace(embed_r_brace_built), context);
21869 Ok(())
21870 }
21871
21872 #[parol_runtime::function_name::named]
21877 fn escaped_r_brace(&mut self, _escaped_r_brace_token: &ParseTreeType<'t>) -> Result<()> {
21878 let context = function_name!();
21879 trace!("{}", self.trace_item_stack(context));
21880 let escaped_r_brace_token =
21881 pop_item!(self, escaped_r_brace_token, EscapedRBraceToken, context);
21882 let escaped_r_brace_built = EscapedRBrace {
21883 escaped_r_brace_token: (&escaped_r_brace_token)
21884 .try_into()
21885 .map_err(parol_runtime::ParolError::UserError)?,
21886 };
21887 self.user_grammar.escaped_r_brace(&escaped_r_brace_built)?;
21889 self.push(ASTType::EscapedRBrace(escaped_r_brace_built), context);
21890 Ok(())
21891 }
21892
21893 #[parol_runtime::function_name::named]
21898 fn triple_r_brace(&mut self, _triple_r_brace_token: &ParseTreeType<'t>) -> Result<()> {
21899 let context = function_name!();
21900 trace!("{}", self.trace_item_stack(context));
21901 let triple_r_brace_token =
21902 pop_item!(self, triple_r_brace_token, TripleRBraceToken, context);
21903 let triple_r_brace_built = TripleRBrace {
21904 triple_r_brace_token: (&triple_r_brace_token)
21905 .try_into()
21906 .map_err(parol_runtime::ParolError::UserError)?,
21907 };
21908 self.user_grammar.triple_r_brace(&triple_r_brace_built)?;
21910 self.push(ASTType::TripleRBrace(triple_r_brace_built), context);
21911 Ok(())
21912 }
21913
21914 #[parol_runtime::function_name::named]
21919 fn r_brace(&mut self, _r_brace_token: &ParseTreeType<'t>) -> Result<()> {
21920 let context = function_name!();
21921 trace!("{}", self.trace_item_stack(context));
21922 let r_brace_token = pop_item!(self, r_brace_token, RBraceToken, context);
21923 let r_brace_built = RBrace {
21924 r_brace_token: (&r_brace_token)
21925 .try_into()
21926 .map_err(parol_runtime::ParolError::UserError)?,
21927 };
21928 self.user_grammar.r_brace(&r_brace_built)?;
21930 self.push(ASTType::RBrace(r_brace_built), context);
21931 Ok(())
21932 }
21933
21934 #[parol_runtime::function_name::named]
21939 fn r_bracket(&mut self, _r_bracket_token: &ParseTreeType<'t>) -> Result<()> {
21940 let context = function_name!();
21941 trace!("{}", self.trace_item_stack(context));
21942 let r_bracket_token = pop_item!(self, r_bracket_token, RBracketToken, context);
21943 let r_bracket_built = RBracket {
21944 r_bracket_token: (&r_bracket_token)
21945 .try_into()
21946 .map_err(parol_runtime::ParolError::UserError)?,
21947 };
21948 self.user_grammar.r_bracket(&r_bracket_built)?;
21950 self.push(ASTType::RBracket(r_bracket_built), context);
21951 Ok(())
21952 }
21953
21954 #[parol_runtime::function_name::named]
21959 fn r_paren(&mut self, _r_paren_token: &ParseTreeType<'t>) -> Result<()> {
21960 let context = function_name!();
21961 trace!("{}", self.trace_item_stack(context));
21962 let r_paren_token = pop_item!(self, r_paren_token, RParenToken, context);
21963 let r_paren_built = RParen {
21964 r_paren_token: (&r_paren_token)
21965 .try_into()
21966 .map_err(parol_runtime::ParolError::UserError)?,
21967 };
21968 self.user_grammar.r_paren(&r_paren_built)?;
21970 self.push(ASTType::RParen(r_paren_built), context);
21971 Ok(())
21972 }
21973
21974 #[parol_runtime::function_name::named]
21979 fn semicolon(&mut self, _semicolon_token: &ParseTreeType<'t>) -> Result<()> {
21980 let context = function_name!();
21981 trace!("{}", self.trace_item_stack(context));
21982 let semicolon_token = pop_item!(self, semicolon_token, SemicolonToken, context);
21983 let semicolon_built = Semicolon {
21984 semicolon_token: (&semicolon_token)
21985 .try_into()
21986 .map_err(parol_runtime::ParolError::UserError)?,
21987 };
21988 self.user_grammar.semicolon(&semicolon_built)?;
21990 self.push(ASTType::Semicolon(semicolon_built), context);
21991 Ok(())
21992 }
21993
21994 #[parol_runtime::function_name::named]
21999 fn star(&mut self, _star_token: &ParseTreeType<'t>) -> Result<()> {
22000 let context = function_name!();
22001 trace!("{}", self.trace_item_stack(context));
22002 let star_token = pop_item!(self, star_token, StarToken, context);
22003 let star_built = Star {
22004 star_token: (&star_token)
22005 .try_into()
22006 .map_err(parol_runtime::ParolError::UserError)?,
22007 };
22008 self.user_grammar.star(&star_built)?;
22010 self.push(ASTType::Star(star_built), context);
22011 Ok(())
22012 }
22013
22014 #[parol_runtime::function_name::named]
22019 fn alias(&mut self, _alias_token: &ParseTreeType<'t>) -> Result<()> {
22020 let context = function_name!();
22021 trace!("{}", self.trace_item_stack(context));
22022 let alias_token = pop_item!(self, alias_token, AliasToken, context);
22023 let alias_built = Alias {
22024 alias_token: (&alias_token)
22025 .try_into()
22026 .map_err(parol_runtime::ParolError::UserError)?,
22027 };
22028 self.user_grammar.alias(&alias_built)?;
22030 self.push(ASTType::Alias(alias_built), context);
22031 Ok(())
22032 }
22033
22034 #[parol_runtime::function_name::named]
22039 fn always_comb(&mut self, _always_comb_token: &ParseTreeType<'t>) -> Result<()> {
22040 let context = function_name!();
22041 trace!("{}", self.trace_item_stack(context));
22042 let always_comb_token = pop_item!(self, always_comb_token, AlwaysCombToken, context);
22043 let always_comb_built = AlwaysComb {
22044 always_comb_token: (&always_comb_token)
22045 .try_into()
22046 .map_err(parol_runtime::ParolError::UserError)?,
22047 };
22048 self.user_grammar.always_comb(&always_comb_built)?;
22050 self.push(ASTType::AlwaysComb(always_comb_built), context);
22051 Ok(())
22052 }
22053
22054 #[parol_runtime::function_name::named]
22059 fn always_ff(&mut self, _always_ff_token: &ParseTreeType<'t>) -> Result<()> {
22060 let context = function_name!();
22061 trace!("{}", self.trace_item_stack(context));
22062 let always_ff_token = pop_item!(self, always_ff_token, AlwaysFfToken, context);
22063 let always_ff_built = AlwaysFf {
22064 always_ff_token: (&always_ff_token)
22065 .try_into()
22066 .map_err(parol_runtime::ParolError::UserError)?,
22067 };
22068 self.user_grammar.always_ff(&always_ff_built)?;
22070 self.push(ASTType::AlwaysFf(always_ff_built), context);
22071 Ok(())
22072 }
22073
22074 #[parol_runtime::function_name::named]
22079 fn r#as(&mut self, _as_token: &ParseTreeType<'t>) -> Result<()> {
22080 let context = function_name!();
22081 trace!("{}", self.trace_item_stack(context));
22082 let as_token = pop_item!(self, as_token, AsToken, context);
22083 let r#as_built = As {
22084 as_token: (&as_token)
22085 .try_into()
22086 .map_err(parol_runtime::ParolError::UserError)?,
22087 };
22088 self.user_grammar.r#as(&r#as_built)?;
22090 self.push(ASTType::As(r#as_built), context);
22091 Ok(())
22092 }
22093
22094 #[parol_runtime::function_name::named]
22099 fn assign(&mut self, _assign_token: &ParseTreeType<'t>) -> Result<()> {
22100 let context = function_name!();
22101 trace!("{}", self.trace_item_stack(context));
22102 let assign_token = pop_item!(self, assign_token, AssignToken, context);
22103 let assign_built = Assign {
22104 assign_token: (&assign_token)
22105 .try_into()
22106 .map_err(parol_runtime::ParolError::UserError)?,
22107 };
22108 self.user_grammar.assign(&assign_built)?;
22110 self.push(ASTType::Assign(assign_built), context);
22111 Ok(())
22112 }
22113
22114 #[parol_runtime::function_name::named]
22119 fn bind(&mut self, _bind_token: &ParseTreeType<'t>) -> Result<()> {
22120 let context = function_name!();
22121 trace!("{}", self.trace_item_stack(context));
22122 let bind_token = pop_item!(self, bind_token, BindToken, context);
22123 let bind_built = Bind {
22124 bind_token: (&bind_token)
22125 .try_into()
22126 .map_err(parol_runtime::ParolError::UserError)?,
22127 };
22128 self.user_grammar.bind(&bind_built)?;
22130 self.push(ASTType::Bind(bind_built), context);
22131 Ok(())
22132 }
22133
22134 #[parol_runtime::function_name::named]
22139 fn bit(&mut self, _bit_token: &ParseTreeType<'t>) -> Result<()> {
22140 let context = function_name!();
22141 trace!("{}", self.trace_item_stack(context));
22142 let bit_token = pop_item!(self, bit_token, BitToken, context);
22143 let bit_built = Bit {
22144 bit_token: (&bit_token)
22145 .try_into()
22146 .map_err(parol_runtime::ParolError::UserError)?,
22147 };
22148 self.user_grammar.bit(&bit_built)?;
22150 self.push(ASTType::Bit(bit_built), context);
22151 Ok(())
22152 }
22153
22154 #[parol_runtime::function_name::named]
22159 fn block(&mut self, _block_token: &ParseTreeType<'t>) -> Result<()> {
22160 let context = function_name!();
22161 trace!("{}", self.trace_item_stack(context));
22162 let block_token = pop_item!(self, block_token, BlockToken, context);
22163 let block_built = Block {
22164 block_token: (&block_token)
22165 .try_into()
22166 .map_err(parol_runtime::ParolError::UserError)?,
22167 };
22168 self.user_grammar.block(&block_built)?;
22170 self.push(ASTType::Block(block_built), context);
22171 Ok(())
22172 }
22173
22174 #[parol_runtime::function_name::named]
22179 fn b_bool(&mut self, _b_bool_token: &ParseTreeType<'t>) -> Result<()> {
22180 let context = function_name!();
22181 trace!("{}", self.trace_item_stack(context));
22182 let b_bool_token = pop_item!(self, b_bool_token, BBoolToken, context);
22183 let b_bool_built = BBool {
22184 b_bool_token: (&b_bool_token)
22185 .try_into()
22186 .map_err(parol_runtime::ParolError::UserError)?,
22187 };
22188 self.user_grammar.b_bool(&b_bool_built)?;
22190 self.push(ASTType::BBool(b_bool_built), context);
22191 Ok(())
22192 }
22193
22194 #[parol_runtime::function_name::named]
22199 fn l_bool(&mut self, _l_bool_token: &ParseTreeType<'t>) -> Result<()> {
22200 let context = function_name!();
22201 trace!("{}", self.trace_item_stack(context));
22202 let l_bool_token = pop_item!(self, l_bool_token, LBoolToken, context);
22203 let l_bool_built = LBool {
22204 l_bool_token: (&l_bool_token)
22205 .try_into()
22206 .map_err(parol_runtime::ParolError::UserError)?,
22207 };
22208 self.user_grammar.l_bool(&l_bool_built)?;
22210 self.push(ASTType::LBool(l_bool_built), context);
22211 Ok(())
22212 }
22213
22214 #[parol_runtime::function_name::named]
22219 fn r#break(&mut self, _break_token: &ParseTreeType<'t>) -> Result<()> {
22220 let context = function_name!();
22221 trace!("{}", self.trace_item_stack(context));
22222 let break_token = pop_item!(self, break_token, BreakToken, context);
22223 let r#break_built = Break {
22224 break_token: (&break_token)
22225 .try_into()
22226 .map_err(parol_runtime::ParolError::UserError)?,
22227 };
22228 self.user_grammar.r#break(&r#break_built)?;
22230 self.push(ASTType::Break(r#break_built), context);
22231 Ok(())
22232 }
22233
22234 #[parol_runtime::function_name::named]
22239 fn case(&mut self, _case_token: &ParseTreeType<'t>) -> Result<()> {
22240 let context = function_name!();
22241 trace!("{}", self.trace_item_stack(context));
22242 let case_token = pop_item!(self, case_token, CaseToken, context);
22243 let case_built = Case {
22244 case_token: (&case_token)
22245 .try_into()
22246 .map_err(parol_runtime::ParolError::UserError)?,
22247 };
22248 self.user_grammar.case(&case_built)?;
22250 self.push(ASTType::Case(case_built), context);
22251 Ok(())
22252 }
22253
22254 #[parol_runtime::function_name::named]
22259 fn clock(&mut self, _clock_token: &ParseTreeType<'t>) -> Result<()> {
22260 let context = function_name!();
22261 trace!("{}", self.trace_item_stack(context));
22262 let clock_token = pop_item!(self, clock_token, ClockToken, context);
22263 let clock_built = Clock {
22264 clock_token: (&clock_token)
22265 .try_into()
22266 .map_err(parol_runtime::ParolError::UserError)?,
22267 };
22268 self.user_grammar.clock(&clock_built)?;
22270 self.push(ASTType::Clock(clock_built), context);
22271 Ok(())
22272 }
22273
22274 #[parol_runtime::function_name::named]
22279 fn clock_posedge(&mut self, _clock_posedge_token: &ParseTreeType<'t>) -> Result<()> {
22280 let context = function_name!();
22281 trace!("{}", self.trace_item_stack(context));
22282 let clock_posedge_token = pop_item!(self, clock_posedge_token, ClockPosedgeToken, context);
22283 let clock_posedge_built = ClockPosedge {
22284 clock_posedge_token: (&clock_posedge_token)
22285 .try_into()
22286 .map_err(parol_runtime::ParolError::UserError)?,
22287 };
22288 self.user_grammar.clock_posedge(&clock_posedge_built)?;
22290 self.push(ASTType::ClockPosedge(clock_posedge_built), context);
22291 Ok(())
22292 }
22293
22294 #[parol_runtime::function_name::named]
22299 fn clock_negedge(&mut self, _clock_negedge_token: &ParseTreeType<'t>) -> Result<()> {
22300 let context = function_name!();
22301 trace!("{}", self.trace_item_stack(context));
22302 let clock_negedge_token = pop_item!(self, clock_negedge_token, ClockNegedgeToken, context);
22303 let clock_negedge_built = ClockNegedge {
22304 clock_negedge_token: (&clock_negedge_token)
22305 .try_into()
22306 .map_err(parol_runtime::ParolError::UserError)?,
22307 };
22308 self.user_grammar.clock_negedge(&clock_negedge_built)?;
22310 self.push(ASTType::ClockNegedge(clock_negedge_built), context);
22311 Ok(())
22312 }
22313
22314 #[parol_runtime::function_name::named]
22319 fn connect(&mut self, _connect_token: &ParseTreeType<'t>) -> Result<()> {
22320 let context = function_name!();
22321 trace!("{}", self.trace_item_stack(context));
22322 let connect_token = pop_item!(self, connect_token, ConnectToken, context);
22323 let connect_built = Connect {
22324 connect_token: (&connect_token)
22325 .try_into()
22326 .map_err(parol_runtime::ParolError::UserError)?,
22327 };
22328 self.user_grammar.connect(&connect_built)?;
22330 self.push(ASTType::Connect(connect_built), context);
22331 Ok(())
22332 }
22333
22334 #[parol_runtime::function_name::named]
22339 fn r#const(&mut self, _const_token: &ParseTreeType<'t>) -> Result<()> {
22340 let context = function_name!();
22341 trace!("{}", self.trace_item_stack(context));
22342 let const_token = pop_item!(self, const_token, ConstToken, context);
22343 let r#const_built = Const {
22344 const_token: (&const_token)
22345 .try_into()
22346 .map_err(parol_runtime::ParolError::UserError)?,
22347 };
22348 self.user_grammar.r#const(&r#const_built)?;
22350 self.push(ASTType::Const(r#const_built), context);
22351 Ok(())
22352 }
22353
22354 #[parol_runtime::function_name::named]
22359 fn converse(&mut self, _converse_token: &ParseTreeType<'t>) -> Result<()> {
22360 let context = function_name!();
22361 trace!("{}", self.trace_item_stack(context));
22362 let converse_token = pop_item!(self, converse_token, ConverseToken, context);
22363 let converse_built = Converse {
22364 converse_token: (&converse_token)
22365 .try_into()
22366 .map_err(parol_runtime::ParolError::UserError)?,
22367 };
22368 self.user_grammar.converse(&converse_built)?;
22370 self.push(ASTType::Converse(converse_built), context);
22371 Ok(())
22372 }
22373
22374 #[parol_runtime::function_name::named]
22379 fn defaul(&mut self, _default_token: &ParseTreeType<'t>) -> Result<()> {
22380 let context = function_name!();
22381 trace!("{}", self.trace_item_stack(context));
22382 let default_token = pop_item!(self, default_token, DefaultToken, context);
22383 let defaul_built = Defaul {
22384 default_token: (&default_token)
22385 .try_into()
22386 .map_err(parol_runtime::ParolError::UserError)?,
22387 };
22388 self.user_grammar.defaul(&defaul_built)?;
22390 self.push(ASTType::Defaul(defaul_built), context);
22391 Ok(())
22392 }
22393
22394 #[parol_runtime::function_name::named]
22399 fn r#else(&mut self, _else_token: &ParseTreeType<'t>) -> Result<()> {
22400 let context = function_name!();
22401 trace!("{}", self.trace_item_stack(context));
22402 let else_token = pop_item!(self, else_token, ElseToken, context);
22403 let r#else_built = Else {
22404 else_token: (&else_token)
22405 .try_into()
22406 .map_err(parol_runtime::ParolError::UserError)?,
22407 };
22408 self.user_grammar.r#else(&r#else_built)?;
22410 self.push(ASTType::Else(r#else_built), context);
22411 Ok(())
22412 }
22413
22414 #[parol_runtime::function_name::named]
22419 fn embed(&mut self, _embed_token: &ParseTreeType<'t>) -> Result<()> {
22420 let context = function_name!();
22421 trace!("{}", self.trace_item_stack(context));
22422 let embed_token = pop_item!(self, embed_token, EmbedToken, context);
22423 let embed_built = Embed {
22424 embed_token: (&embed_token)
22425 .try_into()
22426 .map_err(parol_runtime::ParolError::UserError)?,
22427 };
22428 self.user_grammar.embed(&embed_built)?;
22430 self.push(ASTType::Embed(embed_built), context);
22431 Ok(())
22432 }
22433
22434 #[parol_runtime::function_name::named]
22439 fn r#enum(&mut self, _enum_token: &ParseTreeType<'t>) -> Result<()> {
22440 let context = function_name!();
22441 trace!("{}", self.trace_item_stack(context));
22442 let enum_token = pop_item!(self, enum_token, EnumToken, context);
22443 let r#enum_built = Enum {
22444 enum_token: (&enum_token)
22445 .try_into()
22446 .map_err(parol_runtime::ParolError::UserError)?,
22447 };
22448 self.user_grammar.r#enum(&r#enum_built)?;
22450 self.push(ASTType::Enum(r#enum_built), context);
22451 Ok(())
22452 }
22453
22454 #[parol_runtime::function_name::named]
22459 fn f32(&mut self, _f32_token: &ParseTreeType<'t>) -> Result<()> {
22460 let context = function_name!();
22461 trace!("{}", self.trace_item_stack(context));
22462 let f32_token = pop_item!(self, f32_token, F32Token, context);
22463 let f32_built = F32 {
22464 f32_token: (&f32_token)
22465 .try_into()
22466 .map_err(parol_runtime::ParolError::UserError)?,
22467 };
22468 self.user_grammar.f32(&f32_built)?;
22470 self.push(ASTType::F32(f32_built), context);
22471 Ok(())
22472 }
22473
22474 #[parol_runtime::function_name::named]
22479 fn f64(&mut self, _f64_token: &ParseTreeType<'t>) -> Result<()> {
22480 let context = function_name!();
22481 trace!("{}", self.trace_item_stack(context));
22482 let f64_token = pop_item!(self, f64_token, F64Token, context);
22483 let f64_built = F64 {
22484 f64_token: (&f64_token)
22485 .try_into()
22486 .map_err(parol_runtime::ParolError::UserError)?,
22487 };
22488 self.user_grammar.f64(&f64_built)?;
22490 self.push(ASTType::F64(f64_built), context);
22491 Ok(())
22492 }
22493
22494 #[parol_runtime::function_name::named]
22499 fn r#false(&mut self, _false_token: &ParseTreeType<'t>) -> Result<()> {
22500 let context = function_name!();
22501 trace!("{}", self.trace_item_stack(context));
22502 let false_token = pop_item!(self, false_token, FalseToken, context);
22503 let r#false_built = False {
22504 false_token: (&false_token)
22505 .try_into()
22506 .map_err(parol_runtime::ParolError::UserError)?,
22507 };
22508 self.user_grammar.r#false(&r#false_built)?;
22510 self.push(ASTType::False(r#false_built), context);
22511 Ok(())
22512 }
22513
22514 #[parol_runtime::function_name::named]
22519 fn r#final(&mut self, _final_token: &ParseTreeType<'t>) -> Result<()> {
22520 let context = function_name!();
22521 trace!("{}", self.trace_item_stack(context));
22522 let final_token = pop_item!(self, final_token, FinalToken, context);
22523 let r#final_built = Final {
22524 final_token: (&final_token)
22525 .try_into()
22526 .map_err(parol_runtime::ParolError::UserError)?,
22527 };
22528 self.user_grammar.r#final(&r#final_built)?;
22530 self.push(ASTType::Final(r#final_built), context);
22531 Ok(())
22532 }
22533
22534 #[parol_runtime::function_name::named]
22539 fn r#for(&mut self, _for_token: &ParseTreeType<'t>) -> Result<()> {
22540 let context = function_name!();
22541 trace!("{}", self.trace_item_stack(context));
22542 let for_token = pop_item!(self, for_token, ForToken, context);
22543 let r#for_built = For {
22544 for_token: (&for_token)
22545 .try_into()
22546 .map_err(parol_runtime::ParolError::UserError)?,
22547 };
22548 self.user_grammar.r#for(&r#for_built)?;
22550 self.push(ASTType::For(r#for_built), context);
22551 Ok(())
22552 }
22553
22554 #[parol_runtime::function_name::named]
22559 fn function(&mut self, _function_token: &ParseTreeType<'t>) -> Result<()> {
22560 let context = function_name!();
22561 trace!("{}", self.trace_item_stack(context));
22562 let function_token = pop_item!(self, function_token, FunctionToken, context);
22563 let function_built = Function {
22564 function_token: (&function_token)
22565 .try_into()
22566 .map_err(parol_runtime::ParolError::UserError)?,
22567 };
22568 self.user_grammar.function(&function_built)?;
22570 self.push(ASTType::Function(function_built), context);
22571 Ok(())
22572 }
22573
22574 #[parol_runtime::function_name::named]
22579 fn i8(&mut self, _i8_token: &ParseTreeType<'t>) -> Result<()> {
22580 let context = function_name!();
22581 trace!("{}", self.trace_item_stack(context));
22582 let i8_token = pop_item!(self, i8_token, I8Token, context);
22583 let i8_built = I8 {
22584 i8_token: (&i8_token)
22585 .try_into()
22586 .map_err(parol_runtime::ParolError::UserError)?,
22587 };
22588 self.user_grammar.i8(&i8_built)?;
22590 self.push(ASTType::I8(i8_built), context);
22591 Ok(())
22592 }
22593
22594 #[parol_runtime::function_name::named]
22599 fn i16(&mut self, _i16_token: &ParseTreeType<'t>) -> Result<()> {
22600 let context = function_name!();
22601 trace!("{}", self.trace_item_stack(context));
22602 let i16_token = pop_item!(self, i16_token, I16Token, context);
22603 let i16_built = I16 {
22604 i16_token: (&i16_token)
22605 .try_into()
22606 .map_err(parol_runtime::ParolError::UserError)?,
22607 };
22608 self.user_grammar.i16(&i16_built)?;
22610 self.push(ASTType::I16(i16_built), context);
22611 Ok(())
22612 }
22613
22614 #[parol_runtime::function_name::named]
22619 fn i32(&mut self, _i32_token: &ParseTreeType<'t>) -> Result<()> {
22620 let context = function_name!();
22621 trace!("{}", self.trace_item_stack(context));
22622 let i32_token = pop_item!(self, i32_token, I32Token, context);
22623 let i32_built = I32 {
22624 i32_token: (&i32_token)
22625 .try_into()
22626 .map_err(parol_runtime::ParolError::UserError)?,
22627 };
22628 self.user_grammar.i32(&i32_built)?;
22630 self.push(ASTType::I32(i32_built), context);
22631 Ok(())
22632 }
22633
22634 #[parol_runtime::function_name::named]
22639 fn i64(&mut self, _i64_token: &ParseTreeType<'t>) -> Result<()> {
22640 let context = function_name!();
22641 trace!("{}", self.trace_item_stack(context));
22642 let i64_token = pop_item!(self, i64_token, I64Token, context);
22643 let i64_built = I64 {
22644 i64_token: (&i64_token)
22645 .try_into()
22646 .map_err(parol_runtime::ParolError::UserError)?,
22647 };
22648 self.user_grammar.i64(&i64_built)?;
22650 self.push(ASTType::I64(i64_built), context);
22651 Ok(())
22652 }
22653
22654 #[parol_runtime::function_name::named]
22659 fn r#if(&mut self, _if_token: &ParseTreeType<'t>) -> Result<()> {
22660 let context = function_name!();
22661 trace!("{}", self.trace_item_stack(context));
22662 let if_token = pop_item!(self, if_token, IfToken, context);
22663 let r#if_built = If {
22664 if_token: (&if_token)
22665 .try_into()
22666 .map_err(parol_runtime::ParolError::UserError)?,
22667 };
22668 self.user_grammar.r#if(&r#if_built)?;
22670 self.push(ASTType::If(r#if_built), context);
22671 Ok(())
22672 }
22673
22674 #[parol_runtime::function_name::named]
22679 fn if_reset(&mut self, _if_reset_token: &ParseTreeType<'t>) -> Result<()> {
22680 let context = function_name!();
22681 trace!("{}", self.trace_item_stack(context));
22682 let if_reset_token = pop_item!(self, if_reset_token, IfResetToken, context);
22683 let if_reset_built = IfReset {
22684 if_reset_token: (&if_reset_token)
22685 .try_into()
22686 .map_err(parol_runtime::ParolError::UserError)?,
22687 };
22688 self.user_grammar.if_reset(&if_reset_built)?;
22690 self.push(ASTType::IfReset(if_reset_built), context);
22691 Ok(())
22692 }
22693
22694 #[parol_runtime::function_name::named]
22699 fn import(&mut self, _import_token: &ParseTreeType<'t>) -> Result<()> {
22700 let context = function_name!();
22701 trace!("{}", self.trace_item_stack(context));
22702 let import_token = pop_item!(self, import_token, ImportToken, context);
22703 let import_built = Import {
22704 import_token: (&import_token)
22705 .try_into()
22706 .map_err(parol_runtime::ParolError::UserError)?,
22707 };
22708 self.user_grammar.import(&import_built)?;
22710 self.push(ASTType::Import(import_built), context);
22711 Ok(())
22712 }
22713
22714 #[parol_runtime::function_name::named]
22719 fn r#in(&mut self, _in_token: &ParseTreeType<'t>) -> Result<()> {
22720 let context = function_name!();
22721 trace!("{}", self.trace_item_stack(context));
22722 let in_token = pop_item!(self, in_token, InToken, context);
22723 let r#in_built = In {
22724 in_token: (&in_token)
22725 .try_into()
22726 .map_err(parol_runtime::ParolError::UserError)?,
22727 };
22728 self.user_grammar.r#in(&r#in_built)?;
22730 self.push(ASTType::In(r#in_built), context);
22731 Ok(())
22732 }
22733
22734 #[parol_runtime::function_name::named]
22739 fn include(&mut self, _include_token: &ParseTreeType<'t>) -> Result<()> {
22740 let context = function_name!();
22741 trace!("{}", self.trace_item_stack(context));
22742 let include_token = pop_item!(self, include_token, IncludeToken, context);
22743 let include_built = Include {
22744 include_token: (&include_token)
22745 .try_into()
22746 .map_err(parol_runtime::ParolError::UserError)?,
22747 };
22748 self.user_grammar.include(&include_built)?;
22750 self.push(ASTType::Include(include_built), context);
22751 Ok(())
22752 }
22753
22754 #[parol_runtime::function_name::named]
22759 fn initial(&mut self, _initial_token: &ParseTreeType<'t>) -> Result<()> {
22760 let context = function_name!();
22761 trace!("{}", self.trace_item_stack(context));
22762 let initial_token = pop_item!(self, initial_token, InitialToken, context);
22763 let initial_built = Initial {
22764 initial_token: (&initial_token)
22765 .try_into()
22766 .map_err(parol_runtime::ParolError::UserError)?,
22767 };
22768 self.user_grammar.initial(&initial_built)?;
22770 self.push(ASTType::Initial(initial_built), context);
22771 Ok(())
22772 }
22773
22774 #[parol_runtime::function_name::named]
22779 fn inout(&mut self, _inout_token: &ParseTreeType<'t>) -> Result<()> {
22780 let context = function_name!();
22781 trace!("{}", self.trace_item_stack(context));
22782 let inout_token = pop_item!(self, inout_token, InoutToken, context);
22783 let inout_built = Inout {
22784 inout_token: (&inout_token)
22785 .try_into()
22786 .map_err(parol_runtime::ParolError::UserError)?,
22787 };
22788 self.user_grammar.inout(&inout_built)?;
22790 self.push(ASTType::Inout(inout_built), context);
22791 Ok(())
22792 }
22793
22794 #[parol_runtime::function_name::named]
22799 fn input(&mut self, _input_token: &ParseTreeType<'t>) -> Result<()> {
22800 let context = function_name!();
22801 trace!("{}", self.trace_item_stack(context));
22802 let input_token = pop_item!(self, input_token, InputToken, context);
22803 let input_built = Input {
22804 input_token: (&input_token)
22805 .try_into()
22806 .map_err(parol_runtime::ParolError::UserError)?,
22807 };
22808 self.user_grammar.input(&input_built)?;
22810 self.push(ASTType::Input(input_built), context);
22811 Ok(())
22812 }
22813
22814 #[parol_runtime::function_name::named]
22819 fn inside(&mut self, _inside_token: &ParseTreeType<'t>) -> Result<()> {
22820 let context = function_name!();
22821 trace!("{}", self.trace_item_stack(context));
22822 let inside_token = pop_item!(self, inside_token, InsideToken, context);
22823 let inside_built = Inside {
22824 inside_token: (&inside_token)
22825 .try_into()
22826 .map_err(parol_runtime::ParolError::UserError)?,
22827 };
22828 self.user_grammar.inside(&inside_built)?;
22830 self.push(ASTType::Inside(inside_built), context);
22831 Ok(())
22832 }
22833
22834 #[parol_runtime::function_name::named]
22839 fn inst(&mut self, _inst_token: &ParseTreeType<'t>) -> Result<()> {
22840 let context = function_name!();
22841 trace!("{}", self.trace_item_stack(context));
22842 let inst_token = pop_item!(self, inst_token, InstToken, context);
22843 let inst_built = Inst {
22844 inst_token: (&inst_token)
22845 .try_into()
22846 .map_err(parol_runtime::ParolError::UserError)?,
22847 };
22848 self.user_grammar.inst(&inst_built)?;
22850 self.push(ASTType::Inst(inst_built), context);
22851 Ok(())
22852 }
22853
22854 #[parol_runtime::function_name::named]
22859 fn interface(&mut self, _interface_token: &ParseTreeType<'t>) -> Result<()> {
22860 let context = function_name!();
22861 trace!("{}", self.trace_item_stack(context));
22862 let interface_token = pop_item!(self, interface_token, InterfaceToken, context);
22863 let interface_built = Interface {
22864 interface_token: (&interface_token)
22865 .try_into()
22866 .map_err(parol_runtime::ParolError::UserError)?,
22867 };
22868 self.user_grammar.interface(&interface_built)?;
22870 self.push(ASTType::Interface(interface_built), context);
22871 Ok(())
22872 }
22873
22874 #[parol_runtime::function_name::named]
22879 fn r#let(&mut self, _let_token: &ParseTreeType<'t>) -> Result<()> {
22880 let context = function_name!();
22881 trace!("{}", self.trace_item_stack(context));
22882 let let_token = pop_item!(self, let_token, LetToken, context);
22883 let r#let_built = Let {
22884 let_token: (&let_token)
22885 .try_into()
22886 .map_err(parol_runtime::ParolError::UserError)?,
22887 };
22888 self.user_grammar.r#let(&r#let_built)?;
22890 self.push(ASTType::Let(r#let_built), context);
22891 Ok(())
22892 }
22893
22894 #[parol_runtime::function_name::named]
22899 fn logic(&mut self, _logic_token: &ParseTreeType<'t>) -> Result<()> {
22900 let context = function_name!();
22901 trace!("{}", self.trace_item_stack(context));
22902 let logic_token = pop_item!(self, logic_token, LogicToken, context);
22903 let logic_built = Logic {
22904 logic_token: (&logic_token)
22905 .try_into()
22906 .map_err(parol_runtime::ParolError::UserError)?,
22907 };
22908 self.user_grammar.logic(&logic_built)?;
22910 self.push(ASTType::Logic(logic_built), context);
22911 Ok(())
22912 }
22913
22914 #[parol_runtime::function_name::named]
22919 fn lsb(&mut self, _lsb_token: &ParseTreeType<'t>) -> Result<()> {
22920 let context = function_name!();
22921 trace!("{}", self.trace_item_stack(context));
22922 let lsb_token = pop_item!(self, lsb_token, LsbToken, context);
22923 let lsb_built = Lsb {
22924 lsb_token: (&lsb_token)
22925 .try_into()
22926 .map_err(parol_runtime::ParolError::UserError)?,
22927 };
22928 self.user_grammar.lsb(&lsb_built)?;
22930 self.push(ASTType::Lsb(lsb_built), context);
22931 Ok(())
22932 }
22933
22934 #[parol_runtime::function_name::named]
22939 fn modport(&mut self, _modport_token: &ParseTreeType<'t>) -> Result<()> {
22940 let context = function_name!();
22941 trace!("{}", self.trace_item_stack(context));
22942 let modport_token = pop_item!(self, modport_token, ModportToken, context);
22943 let modport_built = Modport {
22944 modport_token: (&modport_token)
22945 .try_into()
22946 .map_err(parol_runtime::ParolError::UserError)?,
22947 };
22948 self.user_grammar.modport(&modport_built)?;
22950 self.push(ASTType::Modport(modport_built), context);
22951 Ok(())
22952 }
22953
22954 #[parol_runtime::function_name::named]
22959 fn module(&mut self, _module_token: &ParseTreeType<'t>) -> Result<()> {
22960 let context = function_name!();
22961 trace!("{}", self.trace_item_stack(context));
22962 let module_token = pop_item!(self, module_token, ModuleToken, context);
22963 let module_built = Module {
22964 module_token: (&module_token)
22965 .try_into()
22966 .map_err(parol_runtime::ParolError::UserError)?,
22967 };
22968 self.user_grammar.module(&module_built)?;
22970 self.push(ASTType::Module(module_built), context);
22971 Ok(())
22972 }
22973
22974 #[parol_runtime::function_name::named]
22979 fn msb(&mut self, _msb_token: &ParseTreeType<'t>) -> Result<()> {
22980 let context = function_name!();
22981 trace!("{}", self.trace_item_stack(context));
22982 let msb_token = pop_item!(self, msb_token, MsbToken, context);
22983 let msb_built = Msb {
22984 msb_token: (&msb_token)
22985 .try_into()
22986 .map_err(parol_runtime::ParolError::UserError)?,
22987 };
22988 self.user_grammar.msb(&msb_built)?;
22990 self.push(ASTType::Msb(msb_built), context);
22991 Ok(())
22992 }
22993
22994 #[parol_runtime::function_name::named]
22999 fn output(&mut self, _output_token: &ParseTreeType<'t>) -> Result<()> {
23000 let context = function_name!();
23001 trace!("{}", self.trace_item_stack(context));
23002 let output_token = pop_item!(self, output_token, OutputToken, context);
23003 let output_built = Output {
23004 output_token: (&output_token)
23005 .try_into()
23006 .map_err(parol_runtime::ParolError::UserError)?,
23007 };
23008 self.user_grammar.output(&output_built)?;
23010 self.push(ASTType::Output(output_built), context);
23011 Ok(())
23012 }
23013
23014 #[parol_runtime::function_name::named]
23019 fn outside(&mut self, _outside_token: &ParseTreeType<'t>) -> Result<()> {
23020 let context = function_name!();
23021 trace!("{}", self.trace_item_stack(context));
23022 let outside_token = pop_item!(self, outside_token, OutsideToken, context);
23023 let outside_built = Outside {
23024 outside_token: (&outside_token)
23025 .try_into()
23026 .map_err(parol_runtime::ParolError::UserError)?,
23027 };
23028 self.user_grammar.outside(&outside_built)?;
23030 self.push(ASTType::Outside(outside_built), context);
23031 Ok(())
23032 }
23033
23034 #[parol_runtime::function_name::named]
23039 fn package(&mut self, _package_token: &ParseTreeType<'t>) -> Result<()> {
23040 let context = function_name!();
23041 trace!("{}", self.trace_item_stack(context));
23042 let package_token = pop_item!(self, package_token, PackageToken, context);
23043 let package_built = Package {
23044 package_token: (&package_token)
23045 .try_into()
23046 .map_err(parol_runtime::ParolError::UserError)?,
23047 };
23048 self.user_grammar.package(&package_built)?;
23050 self.push(ASTType::Package(package_built), context);
23051 Ok(())
23052 }
23053
23054 #[parol_runtime::function_name::named]
23059 fn param(&mut self, _param_token: &ParseTreeType<'t>) -> Result<()> {
23060 let context = function_name!();
23061 trace!("{}", self.trace_item_stack(context));
23062 let param_token = pop_item!(self, param_token, ParamToken, context);
23063 let param_built = Param {
23064 param_token: (¶m_token)
23065 .try_into()
23066 .map_err(parol_runtime::ParolError::UserError)?,
23067 };
23068 self.user_grammar.param(¶m_built)?;
23070 self.push(ASTType::Param(param_built), context);
23071 Ok(())
23072 }
23073
23074 #[parol_runtime::function_name::named]
23079 fn proto(&mut self, _proto_token: &ParseTreeType<'t>) -> Result<()> {
23080 let context = function_name!();
23081 trace!("{}", self.trace_item_stack(context));
23082 let proto_token = pop_item!(self, proto_token, ProtoToken, context);
23083 let proto_built = Proto {
23084 proto_token: (&proto_token)
23085 .try_into()
23086 .map_err(parol_runtime::ParolError::UserError)?,
23087 };
23088 self.user_grammar.proto(&proto_built)?;
23090 self.push(ASTType::Proto(proto_built), context);
23091 Ok(())
23092 }
23093
23094 #[parol_runtime::function_name::named]
23099 fn r#pub(&mut self, _pub_token: &ParseTreeType<'t>) -> Result<()> {
23100 let context = function_name!();
23101 trace!("{}", self.trace_item_stack(context));
23102 let pub_token = pop_item!(self, pub_token, PubToken, context);
23103 let r#pub_built = Pub {
23104 pub_token: (&pub_token)
23105 .try_into()
23106 .map_err(parol_runtime::ParolError::UserError)?,
23107 };
23108 self.user_grammar.r#pub(&r#pub_built)?;
23110 self.push(ASTType::Pub(r#pub_built), context);
23111 Ok(())
23112 }
23113
23114 #[parol_runtime::function_name::named]
23119 fn repeat(&mut self, _repeat_token: &ParseTreeType<'t>) -> Result<()> {
23120 let context = function_name!();
23121 trace!("{}", self.trace_item_stack(context));
23122 let repeat_token = pop_item!(self, repeat_token, RepeatToken, context);
23123 let repeat_built = Repeat {
23124 repeat_token: (&repeat_token)
23125 .try_into()
23126 .map_err(parol_runtime::ParolError::UserError)?,
23127 };
23128 self.user_grammar.repeat(&repeat_built)?;
23130 self.push(ASTType::Repeat(repeat_built), context);
23131 Ok(())
23132 }
23133
23134 #[parol_runtime::function_name::named]
23139 fn reset(&mut self, _reset_token: &ParseTreeType<'t>) -> Result<()> {
23140 let context = function_name!();
23141 trace!("{}", self.trace_item_stack(context));
23142 let reset_token = pop_item!(self, reset_token, ResetToken, context);
23143 let reset_built = Reset {
23144 reset_token: (&reset_token)
23145 .try_into()
23146 .map_err(parol_runtime::ParolError::UserError)?,
23147 };
23148 self.user_grammar.reset(&reset_built)?;
23150 self.push(ASTType::Reset(reset_built), context);
23151 Ok(())
23152 }
23153
23154 #[parol_runtime::function_name::named]
23159 fn reset_async_high(&mut self, _reset_async_high_token: &ParseTreeType<'t>) -> Result<()> {
23160 let context = function_name!();
23161 trace!("{}", self.trace_item_stack(context));
23162 let reset_async_high_token =
23163 pop_item!(self, reset_async_high_token, ResetAsyncHighToken, context);
23164 let reset_async_high_built = ResetAsyncHigh {
23165 reset_async_high_token: (&reset_async_high_token)
23166 .try_into()
23167 .map_err(parol_runtime::ParolError::UserError)?,
23168 };
23169 self.user_grammar
23171 .reset_async_high(&reset_async_high_built)?;
23172 self.push(ASTType::ResetAsyncHigh(reset_async_high_built), context);
23173 Ok(())
23174 }
23175
23176 #[parol_runtime::function_name::named]
23181 fn reset_async_low(&mut self, _reset_async_low_token: &ParseTreeType<'t>) -> Result<()> {
23182 let context = function_name!();
23183 trace!("{}", self.trace_item_stack(context));
23184 let reset_async_low_token =
23185 pop_item!(self, reset_async_low_token, ResetAsyncLowToken, context);
23186 let reset_async_low_built = ResetAsyncLow {
23187 reset_async_low_token: (&reset_async_low_token)
23188 .try_into()
23189 .map_err(parol_runtime::ParolError::UserError)?,
23190 };
23191 self.user_grammar.reset_async_low(&reset_async_low_built)?;
23193 self.push(ASTType::ResetAsyncLow(reset_async_low_built), context);
23194 Ok(())
23195 }
23196
23197 #[parol_runtime::function_name::named]
23202 fn reset_sync_high(&mut self, _reset_sync_high_token: &ParseTreeType<'t>) -> Result<()> {
23203 let context = function_name!();
23204 trace!("{}", self.trace_item_stack(context));
23205 let reset_sync_high_token =
23206 pop_item!(self, reset_sync_high_token, ResetSyncHighToken, context);
23207 let reset_sync_high_built = ResetSyncHigh {
23208 reset_sync_high_token: (&reset_sync_high_token)
23209 .try_into()
23210 .map_err(parol_runtime::ParolError::UserError)?,
23211 };
23212 self.user_grammar.reset_sync_high(&reset_sync_high_built)?;
23214 self.push(ASTType::ResetSyncHigh(reset_sync_high_built), context);
23215 Ok(())
23216 }
23217
23218 #[parol_runtime::function_name::named]
23223 fn reset_sync_low(&mut self, _reset_sync_low_token: &ParseTreeType<'t>) -> Result<()> {
23224 let context = function_name!();
23225 trace!("{}", self.trace_item_stack(context));
23226 let reset_sync_low_token =
23227 pop_item!(self, reset_sync_low_token, ResetSyncLowToken, context);
23228 let reset_sync_low_built = ResetSyncLow {
23229 reset_sync_low_token: (&reset_sync_low_token)
23230 .try_into()
23231 .map_err(parol_runtime::ParolError::UserError)?,
23232 };
23233 self.user_grammar.reset_sync_low(&reset_sync_low_built)?;
23235 self.push(ASTType::ResetSyncLow(reset_sync_low_built), context);
23236 Ok(())
23237 }
23238
23239 #[parol_runtime::function_name::named]
23244 fn r#return(&mut self, _return_token: &ParseTreeType<'t>) -> Result<()> {
23245 let context = function_name!();
23246 trace!("{}", self.trace_item_stack(context));
23247 let return_token = pop_item!(self, return_token, ReturnToken, context);
23248 let r#return_built = Return {
23249 return_token: (&return_token)
23250 .try_into()
23251 .map_err(parol_runtime::ParolError::UserError)?,
23252 };
23253 self.user_grammar.r#return(&r#return_built)?;
23255 self.push(ASTType::Return(r#return_built), context);
23256 Ok(())
23257 }
23258
23259 #[parol_runtime::function_name::named]
23264 fn rev(&mut self, _rev_token: &ParseTreeType<'t>) -> Result<()> {
23265 let context = function_name!();
23266 trace!("{}", self.trace_item_stack(context));
23267 let rev_token = pop_item!(self, rev_token, RevToken, context);
23268 let rev_built = Rev {
23269 rev_token: (&rev_token)
23270 .try_into()
23271 .map_err(parol_runtime::ParolError::UserError)?,
23272 };
23273 self.user_grammar.rev(&rev_built)?;
23275 self.push(ASTType::Rev(rev_built), context);
23276 Ok(())
23277 }
23278
23279 #[parol_runtime::function_name::named]
23284 fn same(&mut self, _same_token: &ParseTreeType<'t>) -> Result<()> {
23285 let context = function_name!();
23286 trace!("{}", self.trace_item_stack(context));
23287 let same_token = pop_item!(self, same_token, SameToken, context);
23288 let same_built = Same {
23289 same_token: (&same_token)
23290 .try_into()
23291 .map_err(parol_runtime::ParolError::UserError)?,
23292 };
23293 self.user_grammar.same(&same_built)?;
23295 self.push(ASTType::Same(same_built), context);
23296 Ok(())
23297 }
23298
23299 #[parol_runtime::function_name::named]
23304 fn signed(&mut self, _signed_token: &ParseTreeType<'t>) -> Result<()> {
23305 let context = function_name!();
23306 trace!("{}", self.trace_item_stack(context));
23307 let signed_token = pop_item!(self, signed_token, SignedToken, context);
23308 let signed_built = Signed {
23309 signed_token: (&signed_token)
23310 .try_into()
23311 .map_err(parol_runtime::ParolError::UserError)?,
23312 };
23313 self.user_grammar.signed(&signed_built)?;
23315 self.push(ASTType::Signed(signed_built), context);
23316 Ok(())
23317 }
23318
23319 #[parol_runtime::function_name::named]
23324 fn step(&mut self, _step_token: &ParseTreeType<'t>) -> Result<()> {
23325 let context = function_name!();
23326 trace!("{}", self.trace_item_stack(context));
23327 let step_token = pop_item!(self, step_token, StepToken, context);
23328 let step_built = Step {
23329 step_token: (&step_token)
23330 .try_into()
23331 .map_err(parol_runtime::ParolError::UserError)?,
23332 };
23333 self.user_grammar.step(&step_built)?;
23335 self.push(ASTType::Step(step_built), context);
23336 Ok(())
23337 }
23338
23339 #[parol_runtime::function_name::named]
23344 fn strin(&mut self, _string_token: &ParseTreeType<'t>) -> Result<()> {
23345 let context = function_name!();
23346 trace!("{}", self.trace_item_stack(context));
23347 let string_token = pop_item!(self, string_token, StringToken, context);
23348 let strin_built = Strin {
23349 string_token: (&string_token)
23350 .try_into()
23351 .map_err(parol_runtime::ParolError::UserError)?,
23352 };
23353 self.user_grammar.strin(&strin_built)?;
23355 self.push(ASTType::Strin(strin_built), context);
23356 Ok(())
23357 }
23358
23359 #[parol_runtime::function_name::named]
23364 fn r#struct(&mut self, _struct_token: &ParseTreeType<'t>) -> Result<()> {
23365 let context = function_name!();
23366 trace!("{}", self.trace_item_stack(context));
23367 let struct_token = pop_item!(self, struct_token, StructToken, context);
23368 let r#struct_built = Struct {
23369 struct_token: (&struct_token)
23370 .try_into()
23371 .map_err(parol_runtime::ParolError::UserError)?,
23372 };
23373 self.user_grammar.r#struct(&r#struct_built)?;
23375 self.push(ASTType::Struct(r#struct_built), context);
23376 Ok(())
23377 }
23378
23379 #[parol_runtime::function_name::named]
23384 fn switch(&mut self, _switch_token: &ParseTreeType<'t>) -> Result<()> {
23385 let context = function_name!();
23386 trace!("{}", self.trace_item_stack(context));
23387 let switch_token = pop_item!(self, switch_token, SwitchToken, context);
23388 let switch_built = Switch {
23389 switch_token: (&switch_token)
23390 .try_into()
23391 .map_err(parol_runtime::ParolError::UserError)?,
23392 };
23393 self.user_grammar.switch(&switch_built)?;
23395 self.push(ASTType::Switch(switch_built), context);
23396 Ok(())
23397 }
23398
23399 #[parol_runtime::function_name::named]
23404 fn tri(&mut self, _tri_token: &ParseTreeType<'t>) -> Result<()> {
23405 let context = function_name!();
23406 trace!("{}", self.trace_item_stack(context));
23407 let tri_token = pop_item!(self, tri_token, TriToken, context);
23408 let tri_built = Tri {
23409 tri_token: (&tri_token)
23410 .try_into()
23411 .map_err(parol_runtime::ParolError::UserError)?,
23412 };
23413 self.user_grammar.tri(&tri_built)?;
23415 self.push(ASTType::Tri(tri_built), context);
23416 Ok(())
23417 }
23418
23419 #[parol_runtime::function_name::named]
23424 fn r#true(&mut self, _true_token: &ParseTreeType<'t>) -> Result<()> {
23425 let context = function_name!();
23426 trace!("{}", self.trace_item_stack(context));
23427 let true_token = pop_item!(self, true_token, TrueToken, context);
23428 let r#true_built = True {
23429 true_token: (&true_token)
23430 .try_into()
23431 .map_err(parol_runtime::ParolError::UserError)?,
23432 };
23433 self.user_grammar.r#true(&r#true_built)?;
23435 self.push(ASTType::True(r#true_built), context);
23436 Ok(())
23437 }
23438
23439 #[parol_runtime::function_name::named]
23444 fn r#type(&mut self, _type_token: &ParseTreeType<'t>) -> Result<()> {
23445 let context = function_name!();
23446 trace!("{}", self.trace_item_stack(context));
23447 let type_token = pop_item!(self, type_token, TypeToken, context);
23448 let r#type_built = Type {
23449 type_token: (&type_token)
23450 .try_into()
23451 .map_err(parol_runtime::ParolError::UserError)?,
23452 };
23453 self.user_grammar.r#type(&r#type_built)?;
23455 self.push(ASTType::Type(r#type_built), context);
23456 Ok(())
23457 }
23458
23459 #[parol_runtime::function_name::named]
23464 fn p8(&mut self, _p8_token: &ParseTreeType<'t>) -> Result<()> {
23465 let context = function_name!();
23466 trace!("{}", self.trace_item_stack(context));
23467 let p8_token = pop_item!(self, p8_token, P8Token, context);
23468 let p8_built = P8 {
23469 p8_token: (&p8_token)
23470 .try_into()
23471 .map_err(parol_runtime::ParolError::UserError)?,
23472 };
23473 self.user_grammar.p8(&p8_built)?;
23475 self.push(ASTType::P8(p8_built), context);
23476 Ok(())
23477 }
23478
23479 #[parol_runtime::function_name::named]
23484 fn p16(&mut self, _p16_token: &ParseTreeType<'t>) -> Result<()> {
23485 let context = function_name!();
23486 trace!("{}", self.trace_item_stack(context));
23487 let p16_token = pop_item!(self, p16_token, P16Token, context);
23488 let p16_built = P16 {
23489 p16_token: (&p16_token)
23490 .try_into()
23491 .map_err(parol_runtime::ParolError::UserError)?,
23492 };
23493 self.user_grammar.p16(&p16_built)?;
23495 self.push(ASTType::P16(p16_built), context);
23496 Ok(())
23497 }
23498
23499 #[parol_runtime::function_name::named]
23504 fn p32(&mut self, _p32_token: &ParseTreeType<'t>) -> Result<()> {
23505 let context = function_name!();
23506 trace!("{}", self.trace_item_stack(context));
23507 let p32_token = pop_item!(self, p32_token, P32Token, context);
23508 let p32_built = P32 {
23509 p32_token: (&p32_token)
23510 .try_into()
23511 .map_err(parol_runtime::ParolError::UserError)?,
23512 };
23513 self.user_grammar.p32(&p32_built)?;
23515 self.push(ASTType::P32(p32_built), context);
23516 Ok(())
23517 }
23518
23519 #[parol_runtime::function_name::named]
23524 fn p64(&mut self, _p64_token: &ParseTreeType<'t>) -> Result<()> {
23525 let context = function_name!();
23526 trace!("{}", self.trace_item_stack(context));
23527 let p64_token = pop_item!(self, p64_token, P64Token, context);
23528 let p64_built = P64 {
23529 p64_token: (&p64_token)
23530 .try_into()
23531 .map_err(parol_runtime::ParolError::UserError)?,
23532 };
23533 self.user_grammar.p64(&p64_built)?;
23535 self.push(ASTType::P64(p64_built), context);
23536 Ok(())
23537 }
23538
23539 #[parol_runtime::function_name::named]
23544 fn u8(&mut self, _u8_token: &ParseTreeType<'t>) -> Result<()> {
23545 let context = function_name!();
23546 trace!("{}", self.trace_item_stack(context));
23547 let u8_token = pop_item!(self, u8_token, U8Token, context);
23548 let u8_built = U8 {
23549 u8_token: (&u8_token)
23550 .try_into()
23551 .map_err(parol_runtime::ParolError::UserError)?,
23552 };
23553 self.user_grammar.u8(&u8_built)?;
23555 self.push(ASTType::U8(u8_built), context);
23556 Ok(())
23557 }
23558
23559 #[parol_runtime::function_name::named]
23564 fn u16(&mut self, _u16_token: &ParseTreeType<'t>) -> Result<()> {
23565 let context = function_name!();
23566 trace!("{}", self.trace_item_stack(context));
23567 let u16_token = pop_item!(self, u16_token, U16Token, context);
23568 let u16_built = U16 {
23569 u16_token: (&u16_token)
23570 .try_into()
23571 .map_err(parol_runtime::ParolError::UserError)?,
23572 };
23573 self.user_grammar.u16(&u16_built)?;
23575 self.push(ASTType::U16(u16_built), context);
23576 Ok(())
23577 }
23578
23579 #[parol_runtime::function_name::named]
23584 fn u32(&mut self, _u32_token: &ParseTreeType<'t>) -> Result<()> {
23585 let context = function_name!();
23586 trace!("{}", self.trace_item_stack(context));
23587 let u32_token = pop_item!(self, u32_token, U32Token, context);
23588 let u32_built = U32 {
23589 u32_token: (&u32_token)
23590 .try_into()
23591 .map_err(parol_runtime::ParolError::UserError)?,
23592 };
23593 self.user_grammar.u32(&u32_built)?;
23595 self.push(ASTType::U32(u32_built), context);
23596 Ok(())
23597 }
23598
23599 #[parol_runtime::function_name::named]
23604 fn u64(&mut self, _u64_token: &ParseTreeType<'t>) -> Result<()> {
23605 let context = function_name!();
23606 trace!("{}", self.trace_item_stack(context));
23607 let u64_token = pop_item!(self, u64_token, U64Token, context);
23608 let u64_built = U64 {
23609 u64_token: (&u64_token)
23610 .try_into()
23611 .map_err(parol_runtime::ParolError::UserError)?,
23612 };
23613 self.user_grammar.u64(&u64_built)?;
23615 self.push(ASTType::U64(u64_built), context);
23616 Ok(())
23617 }
23618
23619 #[parol_runtime::function_name::named]
23624 fn r#union(&mut self, _union_token: &ParseTreeType<'t>) -> Result<()> {
23625 let context = function_name!();
23626 trace!("{}", self.trace_item_stack(context));
23627 let union_token = pop_item!(self, union_token, UnionToken, context);
23628 let r#union_built = Union {
23629 union_token: (&union_token)
23630 .try_into()
23631 .map_err(parol_runtime::ParolError::UserError)?,
23632 };
23633 self.user_grammar.r#union(&r#union_built)?;
23635 self.push(ASTType::Union(r#union_built), context);
23636 Ok(())
23637 }
23638
23639 #[parol_runtime::function_name::named]
23644 fn r#unsafe(&mut self, _unsafe_token: &ParseTreeType<'t>) -> Result<()> {
23645 let context = function_name!();
23646 trace!("{}", self.trace_item_stack(context));
23647 let unsafe_token = pop_item!(self, unsafe_token, UnsafeToken, context);
23648 let r#unsafe_built = Unsafe {
23649 unsafe_token: (&unsafe_token)
23650 .try_into()
23651 .map_err(parol_runtime::ParolError::UserError)?,
23652 };
23653 self.user_grammar.r#unsafe(&r#unsafe_built)?;
23655 self.push(ASTType::Unsafe(r#unsafe_built), context);
23656 Ok(())
23657 }
23658
23659 #[parol_runtime::function_name::named]
23664 fn var(&mut self, _var_token: &ParseTreeType<'t>) -> Result<()> {
23665 let context = function_name!();
23666 trace!("{}", self.trace_item_stack(context));
23667 let var_token = pop_item!(self, var_token, VarToken, context);
23668 let var_built = Var {
23669 var_token: (&var_token)
23670 .try_into()
23671 .map_err(parol_runtime::ParolError::UserError)?,
23672 };
23673 self.user_grammar.var(&var_built)?;
23675 self.push(ASTType::Var(var_built), context);
23676 Ok(())
23677 }
23678
23679 #[parol_runtime::function_name::named]
23684 fn dollar_identifier(&mut self, _dollar_identifier_token: &ParseTreeType<'t>) -> Result<()> {
23685 let context = function_name!();
23686 trace!("{}", self.trace_item_stack(context));
23687 let dollar_identifier_token = pop_item!(
23688 self,
23689 dollar_identifier_token,
23690 DollarIdentifierToken,
23691 context
23692 );
23693 let dollar_identifier_built = DollarIdentifier {
23694 dollar_identifier_token: (&dollar_identifier_token)
23695 .try_into()
23696 .map_err(parol_runtime::ParolError::UserError)?,
23697 };
23698 self.user_grammar
23700 .dollar_identifier(&dollar_identifier_built)?;
23701 self.push(ASTType::DollarIdentifier(dollar_identifier_built), context);
23702 Ok(())
23703 }
23704
23705 #[parol_runtime::function_name::named]
23710 fn identifier(&mut self, _identifier_token: &ParseTreeType<'t>) -> Result<()> {
23711 let context = function_name!();
23712 trace!("{}", self.trace_item_stack(context));
23713 let identifier_token = pop_item!(self, identifier_token, IdentifierToken, context);
23714 let identifier_built = Identifier {
23715 identifier_token: (&identifier_token)
23716 .try_into()
23717 .map_err(parol_runtime::ParolError::UserError)?,
23718 };
23719 self.user_grammar.identifier(&identifier_built)?;
23721 self.push(ASTType::Identifier(identifier_built), context);
23722 Ok(())
23723 }
23724
23725 #[parol_runtime::function_name::named]
23730 fn any(&mut self, _any_token: &ParseTreeType<'t>) -> Result<()> {
23731 let context = function_name!();
23732 trace!("{}", self.trace_item_stack(context));
23733 let any_token = pop_item!(self, any_token, AnyToken, context);
23734 let any_built = Any {
23735 any_token: (&any_token)
23736 .try_into()
23737 .map_err(parol_runtime::ParolError::UserError)?,
23738 };
23739 self.user_grammar.any(&any_built)?;
23741 self.push(ASTType::Any(any_built), context);
23742 Ok(())
23743 }
23744
23745 #[parol_runtime::function_name::named]
23750 fn number_0(&mut self, _integral_number: &ParseTreeType<'t>) -> Result<()> {
23751 let context = function_name!();
23752 trace!("{}", self.trace_item_stack(context));
23753 let integral_number = pop_item!(self, integral_number, IntegralNumber, context);
23754 let number_0_built = NumberIntegralNumber {
23755 integral_number: Box::new(integral_number),
23756 };
23757 let number_0_built = Number::IntegralNumber(number_0_built);
23758 self.user_grammar.number(&number_0_built)?;
23760 self.push(ASTType::Number(number_0_built), context);
23761 Ok(())
23762 }
23763
23764 #[parol_runtime::function_name::named]
23769 fn number_1(&mut self, _real_number: &ParseTreeType<'t>) -> Result<()> {
23770 let context = function_name!();
23771 trace!("{}", self.trace_item_stack(context));
23772 let real_number = pop_item!(self, real_number, RealNumber, context);
23773 let number_1_built = NumberRealNumber {
23774 real_number: Box::new(real_number),
23775 };
23776 let number_1_built = Number::RealNumber(number_1_built);
23777 self.user_grammar.number(&number_1_built)?;
23779 self.push(ASTType::Number(number_1_built), context);
23780 Ok(())
23781 }
23782
23783 #[parol_runtime::function_name::named]
23788 fn integral_number_0(&mut self, _based: &ParseTreeType<'t>) -> Result<()> {
23789 let context = function_name!();
23790 trace!("{}", self.trace_item_stack(context));
23791 let based = pop_item!(self, based, Based, context);
23792 let integral_number_0_built = IntegralNumberBased {
23793 based: Box::new(based),
23794 };
23795 let integral_number_0_built = IntegralNumber::Based(integral_number_0_built);
23796 self.user_grammar
23798 .integral_number(&integral_number_0_built)?;
23799 self.push(ASTType::IntegralNumber(integral_number_0_built), context);
23800 Ok(())
23801 }
23802
23803 #[parol_runtime::function_name::named]
23808 fn integral_number_1(&mut self, _base_less: &ParseTreeType<'t>) -> Result<()> {
23809 let context = function_name!();
23810 trace!("{}", self.trace_item_stack(context));
23811 let base_less = pop_item!(self, base_less, BaseLess, context);
23812 let integral_number_1_built = IntegralNumberBaseLess {
23813 base_less: Box::new(base_less),
23814 };
23815 let integral_number_1_built = IntegralNumber::BaseLess(integral_number_1_built);
23816 self.user_grammar
23818 .integral_number(&integral_number_1_built)?;
23819 self.push(ASTType::IntegralNumber(integral_number_1_built), context);
23820 Ok(())
23821 }
23822
23823 #[parol_runtime::function_name::named]
23828 fn integral_number_2(&mut self, _all_bit: &ParseTreeType<'t>) -> Result<()> {
23829 let context = function_name!();
23830 trace!("{}", self.trace_item_stack(context));
23831 let all_bit = pop_item!(self, all_bit, AllBit, context);
23832 let integral_number_2_built = IntegralNumberAllBit {
23833 all_bit: Box::new(all_bit),
23834 };
23835 let integral_number_2_built = IntegralNumber::AllBit(integral_number_2_built);
23836 self.user_grammar
23838 .integral_number(&integral_number_2_built)?;
23839 self.push(ASTType::IntegralNumber(integral_number_2_built), context);
23840 Ok(())
23841 }
23842
23843 #[parol_runtime::function_name::named]
23848 fn real_number_0(&mut self, _fixed_point: &ParseTreeType<'t>) -> Result<()> {
23849 let context = function_name!();
23850 trace!("{}", self.trace_item_stack(context));
23851 let fixed_point = pop_item!(self, fixed_point, FixedPoint, context);
23852 let real_number_0_built = RealNumberFixedPoint {
23853 fixed_point: Box::new(fixed_point),
23854 };
23855 let real_number_0_built = RealNumber::FixedPoint(real_number_0_built);
23856 self.user_grammar.real_number(&real_number_0_built)?;
23858 self.push(ASTType::RealNumber(real_number_0_built), context);
23859 Ok(())
23860 }
23861
23862 #[parol_runtime::function_name::named]
23867 fn real_number_1(&mut self, _exponent: &ParseTreeType<'t>) -> Result<()> {
23868 let context = function_name!();
23869 trace!("{}", self.trace_item_stack(context));
23870 let exponent = pop_item!(self, exponent, Exponent, context);
23871 let real_number_1_built = RealNumberExponent {
23872 exponent: Box::new(exponent),
23873 };
23874 let real_number_1_built = RealNumber::Exponent(real_number_1_built);
23875 self.user_grammar.real_number(&real_number_1_built)?;
23877 self.push(ASTType::RealNumber(real_number_1_built), context);
23878 Ok(())
23879 }
23880
23881 #[parol_runtime::function_name::named]
23886 fn hierarchical_identifier(
23887 &mut self,
23888 _identifier: &ParseTreeType<'t>,
23889 _hierarchical_identifier_list: &ParseTreeType<'t>,
23890 _hierarchical_identifier_list0: &ParseTreeType<'t>,
23891 ) -> Result<()> {
23892 let context = function_name!();
23893 trace!("{}", self.trace_item_stack(context));
23894 let hierarchical_identifier_list0 = pop_and_reverse_item!(
23895 self,
23896 hierarchical_identifier_list0,
23897 HierarchicalIdentifierList0,
23898 context
23899 );
23900 let hierarchical_identifier_list = pop_and_reverse_item!(
23901 self,
23902 hierarchical_identifier_list,
23903 HierarchicalIdentifierList,
23904 context
23905 );
23906 let identifier = pop_item!(self, identifier, Identifier, context);
23907 let hierarchical_identifier_built = HierarchicalIdentifier {
23908 identifier: Box::new(identifier),
23909 hierarchical_identifier_list,
23910 hierarchical_identifier_list0,
23911 };
23912 self.user_grammar
23914 .hierarchical_identifier(&hierarchical_identifier_built)?;
23915 self.push(
23916 ASTType::HierarchicalIdentifier(hierarchical_identifier_built),
23917 context,
23918 );
23919 Ok(())
23920 }
23921
23922 #[parol_runtime::function_name::named]
23927 fn hierarchical_identifier_list0_0(
23928 &mut self,
23929 _dot: &ParseTreeType<'t>,
23930 _identifier: &ParseTreeType<'t>,
23931 _hierarchical_identifier_list0_list: &ParseTreeType<'t>,
23932 _hierarchical_identifier_list0: &ParseTreeType<'t>,
23933 ) -> Result<()> {
23934 let context = function_name!();
23935 trace!("{}", self.trace_item_stack(context));
23936 let mut hierarchical_identifier_list0 = pop_item!(
23937 self,
23938 hierarchical_identifier_list0,
23939 HierarchicalIdentifierList0,
23940 context
23941 );
23942 let hierarchical_identifier_list0_list = pop_and_reverse_item!(
23943 self,
23944 hierarchical_identifier_list0_list,
23945 HierarchicalIdentifierList0List,
23946 context
23947 );
23948 let identifier = pop_item!(self, identifier, Identifier, context);
23949 let dot = pop_item!(self, dot, Dot, context);
23950 let hierarchical_identifier_list0_0_built = HierarchicalIdentifierList0 {
23951 hierarchical_identifier_list0_list,
23952 identifier: Box::new(identifier),
23953 dot: Box::new(dot),
23954 };
23955 hierarchical_identifier_list0.push(hierarchical_identifier_list0_0_built);
23957 self.push(
23958 ASTType::HierarchicalIdentifierList0(hierarchical_identifier_list0),
23959 context,
23960 );
23961 Ok(())
23962 }
23963
23964 #[parol_runtime::function_name::named]
23969 fn hierarchical_identifier_list0_list_0(
23970 &mut self,
23971 _select: &ParseTreeType<'t>,
23972 _hierarchical_identifier_list0_list: &ParseTreeType<'t>,
23973 ) -> Result<()> {
23974 let context = function_name!();
23975 trace!("{}", self.trace_item_stack(context));
23976 let mut hierarchical_identifier_list0_list = pop_item!(
23977 self,
23978 hierarchical_identifier_list0_list,
23979 HierarchicalIdentifierList0List,
23980 context
23981 );
23982 let select = pop_item!(self, select, Select, context);
23983 let hierarchical_identifier_list0_list_0_built = HierarchicalIdentifierList0List {
23984 select: Box::new(select),
23985 };
23986 hierarchical_identifier_list0_list.push(hierarchical_identifier_list0_list_0_built);
23988 self.push(
23989 ASTType::HierarchicalIdentifierList0List(hierarchical_identifier_list0_list),
23990 context,
23991 );
23992 Ok(())
23993 }
23994
23995 #[parol_runtime::function_name::named]
24000 fn hierarchical_identifier_list0_list_1(&mut self) -> Result<()> {
24001 let context = function_name!();
24002 trace!("{}", self.trace_item_stack(context));
24003 let hierarchical_identifier_list0_list_1_built = Vec::new();
24004 self.push(
24005 ASTType::HierarchicalIdentifierList0List(hierarchical_identifier_list0_list_1_built),
24006 context,
24007 );
24008 Ok(())
24009 }
24010
24011 #[parol_runtime::function_name::named]
24016 fn hierarchical_identifier_list0_1(&mut self) -> Result<()> {
24017 let context = function_name!();
24018 trace!("{}", self.trace_item_stack(context));
24019 let hierarchical_identifier_list0_1_built = Vec::new();
24020 self.push(
24021 ASTType::HierarchicalIdentifierList0(hierarchical_identifier_list0_1_built),
24022 context,
24023 );
24024 Ok(())
24025 }
24026
24027 #[parol_runtime::function_name::named]
24032 fn hierarchical_identifier_list_0(
24033 &mut self,
24034 _select: &ParseTreeType<'t>,
24035 _hierarchical_identifier_list: &ParseTreeType<'t>,
24036 ) -> Result<()> {
24037 let context = function_name!();
24038 trace!("{}", self.trace_item_stack(context));
24039 let mut hierarchical_identifier_list = pop_item!(
24040 self,
24041 hierarchical_identifier_list,
24042 HierarchicalIdentifierList,
24043 context
24044 );
24045 let select = pop_item!(self, select, Select, context);
24046 let hierarchical_identifier_list_0_built = HierarchicalIdentifierList {
24047 select: Box::new(select),
24048 };
24049 hierarchical_identifier_list.push(hierarchical_identifier_list_0_built);
24051 self.push(
24052 ASTType::HierarchicalIdentifierList(hierarchical_identifier_list),
24053 context,
24054 );
24055 Ok(())
24056 }
24057
24058 #[parol_runtime::function_name::named]
24063 fn hierarchical_identifier_list_1(&mut self) -> Result<()> {
24064 let context = function_name!();
24065 trace!("{}", self.trace_item_stack(context));
24066 let hierarchical_identifier_list_1_built = Vec::new();
24067 self.push(
24068 ASTType::HierarchicalIdentifierList(hierarchical_identifier_list_1_built),
24069 context,
24070 );
24071 Ok(())
24072 }
24073
24074 #[parol_runtime::function_name::named]
24079 fn scoped_identifier(
24080 &mut self,
24081 _scoped_identifier_group: &ParseTreeType<'t>,
24082 _scoped_identifier_list: &ParseTreeType<'t>,
24083 ) -> Result<()> {
24084 let context = function_name!();
24085 trace!("{}", self.trace_item_stack(context));
24086 let scoped_identifier_list =
24087 pop_and_reverse_item!(self, scoped_identifier_list, ScopedIdentifierList, context);
24088 let scoped_identifier_group = pop_item!(
24089 self,
24090 scoped_identifier_group,
24091 ScopedIdentifierGroup,
24092 context
24093 );
24094 let scoped_identifier_built = ScopedIdentifier {
24095 scoped_identifier_group: Box::new(scoped_identifier_group),
24096 scoped_identifier_list,
24097 };
24098 self.user_grammar
24100 .scoped_identifier(&scoped_identifier_built)?;
24101 self.push(ASTType::ScopedIdentifier(scoped_identifier_built), context);
24102 Ok(())
24103 }
24104
24105 #[parol_runtime::function_name::named]
24110 fn scoped_identifier_group_0(&mut self, _dollar_identifier: &ParseTreeType<'t>) -> Result<()> {
24111 let context = function_name!();
24112 trace!("{}", self.trace_item_stack(context));
24113 let dollar_identifier = pop_item!(self, dollar_identifier, DollarIdentifier, context);
24114 let scoped_identifier_group_0_built = ScopedIdentifierGroupDollarIdentifier {
24115 dollar_identifier: Box::new(dollar_identifier),
24116 };
24117 let scoped_identifier_group_0_built =
24118 ScopedIdentifierGroup::DollarIdentifier(scoped_identifier_group_0_built);
24119 self.push(
24120 ASTType::ScopedIdentifierGroup(scoped_identifier_group_0_built),
24121 context,
24122 );
24123 Ok(())
24124 }
24125
24126 #[parol_runtime::function_name::named]
24131 fn scoped_identifier_group_1(
24132 &mut self,
24133 _identifier: &ParseTreeType<'t>,
24134 _scoped_identifier_opt: &ParseTreeType<'t>,
24135 ) -> Result<()> {
24136 let context = function_name!();
24137 trace!("{}", self.trace_item_stack(context));
24138 let scoped_identifier_opt =
24139 pop_item!(self, scoped_identifier_opt, ScopedIdentifierOpt, context);
24140 let identifier = pop_item!(self, identifier, Identifier, context);
24141 let scoped_identifier_group_1_built = ScopedIdentifierGroupIdentifierScopedIdentifierOpt {
24142 identifier: Box::new(identifier),
24143 scoped_identifier_opt,
24144 };
24145 let scoped_identifier_group_1_built =
24146 ScopedIdentifierGroup::IdentifierScopedIdentifierOpt(scoped_identifier_group_1_built);
24147 self.push(
24148 ASTType::ScopedIdentifierGroup(scoped_identifier_group_1_built),
24149 context,
24150 );
24151 Ok(())
24152 }
24153
24154 #[parol_runtime::function_name::named]
24159 fn scoped_identifier_list_0(
24160 &mut self,
24161 _colon_colon: &ParseTreeType<'t>,
24162 _identifier: &ParseTreeType<'t>,
24163 _scoped_identifier_opt0: &ParseTreeType<'t>,
24164 _scoped_identifier_list: &ParseTreeType<'t>,
24165 ) -> Result<()> {
24166 let context = function_name!();
24167 trace!("{}", self.trace_item_stack(context));
24168 let mut scoped_identifier_list =
24169 pop_item!(self, scoped_identifier_list, ScopedIdentifierList, context);
24170 let scoped_identifier_opt0 =
24171 pop_item!(self, scoped_identifier_opt0, ScopedIdentifierOpt0, context);
24172 let identifier = pop_item!(self, identifier, Identifier, context);
24173 let colon_colon = pop_item!(self, colon_colon, ColonColon, context);
24174 let scoped_identifier_list_0_built = ScopedIdentifierList {
24175 scoped_identifier_opt0,
24176 identifier: Box::new(identifier),
24177 colon_colon: Box::new(colon_colon),
24178 };
24179 scoped_identifier_list.push(scoped_identifier_list_0_built);
24181 self.push(
24182 ASTType::ScopedIdentifierList(scoped_identifier_list),
24183 context,
24184 );
24185 Ok(())
24186 }
24187
24188 #[parol_runtime::function_name::named]
24193 fn scoped_identifier_list_1(&mut self) -> Result<()> {
24194 let context = function_name!();
24195 trace!("{}", self.trace_item_stack(context));
24196 let scoped_identifier_list_1_built = Vec::new();
24197 self.push(
24198 ASTType::ScopedIdentifierList(scoped_identifier_list_1_built),
24199 context,
24200 );
24201 Ok(())
24202 }
24203
24204 #[parol_runtime::function_name::named]
24209 fn scoped_identifier_opt0_0(
24210 &mut self,
24211 _with_generic_argument: &ParseTreeType<'t>,
24212 ) -> Result<()> {
24213 let context = function_name!();
24214 trace!("{}", self.trace_item_stack(context));
24215 let with_generic_argument =
24216 pop_item!(self, with_generic_argument, WithGenericArgument, context);
24217 let scoped_identifier_opt0_0_built = ScopedIdentifierOpt0 {
24218 with_generic_argument: Box::new(with_generic_argument),
24219 };
24220 self.push(
24221 ASTType::ScopedIdentifierOpt0(Some(scoped_identifier_opt0_0_built)),
24222 context,
24223 );
24224 Ok(())
24225 }
24226
24227 #[parol_runtime::function_name::named]
24232 fn scoped_identifier_opt0_1(&mut self) -> Result<()> {
24233 let context = function_name!();
24234 trace!("{}", self.trace_item_stack(context));
24235 self.push(ASTType::ScopedIdentifierOpt0(None), context);
24236 Ok(())
24237 }
24238
24239 #[parol_runtime::function_name::named]
24244 fn scoped_identifier_opt_0(
24245 &mut self,
24246 _with_generic_argument: &ParseTreeType<'t>,
24247 ) -> Result<()> {
24248 let context = function_name!();
24249 trace!("{}", self.trace_item_stack(context));
24250 let with_generic_argument =
24251 pop_item!(self, with_generic_argument, WithGenericArgument, context);
24252 let scoped_identifier_opt_0_built = ScopedIdentifierOpt {
24253 with_generic_argument: Box::new(with_generic_argument),
24254 };
24255 self.push(
24256 ASTType::ScopedIdentifierOpt(Some(scoped_identifier_opt_0_built)),
24257 context,
24258 );
24259 Ok(())
24260 }
24261
24262 #[parol_runtime::function_name::named]
24267 fn scoped_identifier_opt_1(&mut self) -> Result<()> {
24268 let context = function_name!();
24269 trace!("{}", self.trace_item_stack(context));
24270 self.push(ASTType::ScopedIdentifierOpt(None), context);
24271 Ok(())
24272 }
24273
24274 #[parol_runtime::function_name::named]
24279 fn expression_identifier(
24280 &mut self,
24281 _scoped_identifier: &ParseTreeType<'t>,
24282 _expression_identifier_opt: &ParseTreeType<'t>,
24283 _expression_identifier_list: &ParseTreeType<'t>,
24284 _expression_identifier_list0: &ParseTreeType<'t>,
24285 ) -> Result<()> {
24286 let context = function_name!();
24287 trace!("{}", self.trace_item_stack(context));
24288 let expression_identifier_list0 = pop_and_reverse_item!(
24289 self,
24290 expression_identifier_list0,
24291 ExpressionIdentifierList0,
24292 context
24293 );
24294 let expression_identifier_list = pop_and_reverse_item!(
24295 self,
24296 expression_identifier_list,
24297 ExpressionIdentifierList,
24298 context
24299 );
24300 let expression_identifier_opt = pop_item!(
24301 self,
24302 expression_identifier_opt,
24303 ExpressionIdentifierOpt,
24304 context
24305 );
24306 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
24307 let expression_identifier_built = ExpressionIdentifier {
24308 scoped_identifier: Box::new(scoped_identifier),
24309 expression_identifier_opt,
24310 expression_identifier_list,
24311 expression_identifier_list0,
24312 };
24313 self.user_grammar
24315 .expression_identifier(&expression_identifier_built)?;
24316 self.push(
24317 ASTType::ExpressionIdentifier(expression_identifier_built),
24318 context,
24319 );
24320 Ok(())
24321 }
24322
24323 #[parol_runtime::function_name::named]
24328 fn expression_identifier_list0_0(
24329 &mut self,
24330 _dot: &ParseTreeType<'t>,
24331 _identifier: &ParseTreeType<'t>,
24332 _expression_identifier_list0_list: &ParseTreeType<'t>,
24333 _expression_identifier_list0: &ParseTreeType<'t>,
24334 ) -> Result<()> {
24335 let context = function_name!();
24336 trace!("{}", self.trace_item_stack(context));
24337 let mut expression_identifier_list0 = pop_item!(
24338 self,
24339 expression_identifier_list0,
24340 ExpressionIdentifierList0,
24341 context
24342 );
24343 let expression_identifier_list0_list = pop_and_reverse_item!(
24344 self,
24345 expression_identifier_list0_list,
24346 ExpressionIdentifierList0List,
24347 context
24348 );
24349 let identifier = pop_item!(self, identifier, Identifier, context);
24350 let dot = pop_item!(self, dot, Dot, context);
24351 let expression_identifier_list0_0_built = ExpressionIdentifierList0 {
24352 expression_identifier_list0_list,
24353 identifier: Box::new(identifier),
24354 dot: Box::new(dot),
24355 };
24356 expression_identifier_list0.push(expression_identifier_list0_0_built);
24358 self.push(
24359 ASTType::ExpressionIdentifierList0(expression_identifier_list0),
24360 context,
24361 );
24362 Ok(())
24363 }
24364
24365 #[parol_runtime::function_name::named]
24370 fn expression_identifier_list0_list_0(
24371 &mut self,
24372 _select: &ParseTreeType<'t>,
24373 _expression_identifier_list0_list: &ParseTreeType<'t>,
24374 ) -> Result<()> {
24375 let context = function_name!();
24376 trace!("{}", self.trace_item_stack(context));
24377 let mut expression_identifier_list0_list = pop_item!(
24378 self,
24379 expression_identifier_list0_list,
24380 ExpressionIdentifierList0List,
24381 context
24382 );
24383 let select = pop_item!(self, select, Select, context);
24384 let expression_identifier_list0_list_0_built = ExpressionIdentifierList0List {
24385 select: Box::new(select),
24386 };
24387 expression_identifier_list0_list.push(expression_identifier_list0_list_0_built);
24389 self.push(
24390 ASTType::ExpressionIdentifierList0List(expression_identifier_list0_list),
24391 context,
24392 );
24393 Ok(())
24394 }
24395
24396 #[parol_runtime::function_name::named]
24401 fn expression_identifier_list0_list_1(&mut self) -> Result<()> {
24402 let context = function_name!();
24403 trace!("{}", self.trace_item_stack(context));
24404 let expression_identifier_list0_list_1_built = Vec::new();
24405 self.push(
24406 ASTType::ExpressionIdentifierList0List(expression_identifier_list0_list_1_built),
24407 context,
24408 );
24409 Ok(())
24410 }
24411
24412 #[parol_runtime::function_name::named]
24417 fn expression_identifier_list0_1(&mut self) -> Result<()> {
24418 let context = function_name!();
24419 trace!("{}", self.trace_item_stack(context));
24420 let expression_identifier_list0_1_built = Vec::new();
24421 self.push(
24422 ASTType::ExpressionIdentifierList0(expression_identifier_list0_1_built),
24423 context,
24424 );
24425 Ok(())
24426 }
24427
24428 #[parol_runtime::function_name::named]
24433 fn expression_identifier_list_0(
24434 &mut self,
24435 _select: &ParseTreeType<'t>,
24436 _expression_identifier_list: &ParseTreeType<'t>,
24437 ) -> Result<()> {
24438 let context = function_name!();
24439 trace!("{}", self.trace_item_stack(context));
24440 let mut expression_identifier_list = pop_item!(
24441 self,
24442 expression_identifier_list,
24443 ExpressionIdentifierList,
24444 context
24445 );
24446 let select = pop_item!(self, select, Select, context);
24447 let expression_identifier_list_0_built = ExpressionIdentifierList {
24448 select: Box::new(select),
24449 };
24450 expression_identifier_list.push(expression_identifier_list_0_built);
24452 self.push(
24453 ASTType::ExpressionIdentifierList(expression_identifier_list),
24454 context,
24455 );
24456 Ok(())
24457 }
24458
24459 #[parol_runtime::function_name::named]
24464 fn expression_identifier_list_1(&mut self) -> Result<()> {
24465 let context = function_name!();
24466 trace!("{}", self.trace_item_stack(context));
24467 let expression_identifier_list_1_built = Vec::new();
24468 self.push(
24469 ASTType::ExpressionIdentifierList(expression_identifier_list_1_built),
24470 context,
24471 );
24472 Ok(())
24473 }
24474
24475 #[parol_runtime::function_name::named]
24480 fn expression_identifier_opt_0(&mut self, _width: &ParseTreeType<'t>) -> Result<()> {
24481 let context = function_name!();
24482 trace!("{}", self.trace_item_stack(context));
24483 let width = pop_item!(self, width, Width, context);
24484 let expression_identifier_opt_0_built = ExpressionIdentifierOpt {
24485 width: Box::new(width),
24486 };
24487 self.push(
24488 ASTType::ExpressionIdentifierOpt(Some(expression_identifier_opt_0_built)),
24489 context,
24490 );
24491 Ok(())
24492 }
24493
24494 #[parol_runtime::function_name::named]
24499 fn expression_identifier_opt_1(&mut self) -> Result<()> {
24500 let context = function_name!();
24501 trace!("{}", self.trace_item_stack(context));
24502 self.push(ASTType::ExpressionIdentifierOpt(None), context);
24503 Ok(())
24504 }
24505
24506 #[parol_runtime::function_name::named]
24511 fn generic_arg_identifier(
24512 &mut self,
24513 _scoped_identifier: &ParseTreeType<'t>,
24514 _generic_arg_identifier_list: &ParseTreeType<'t>,
24515 ) -> Result<()> {
24516 let context = function_name!();
24517 trace!("{}", self.trace_item_stack(context));
24518 let generic_arg_identifier_list = pop_and_reverse_item!(
24519 self,
24520 generic_arg_identifier_list,
24521 GenericArgIdentifierList,
24522 context
24523 );
24524 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
24525 let generic_arg_identifier_built = GenericArgIdentifier {
24526 scoped_identifier: Box::new(scoped_identifier),
24527 generic_arg_identifier_list,
24528 };
24529 self.user_grammar
24531 .generic_arg_identifier(&generic_arg_identifier_built)?;
24532 self.push(
24533 ASTType::GenericArgIdentifier(generic_arg_identifier_built),
24534 context,
24535 );
24536 Ok(())
24537 }
24538
24539 #[parol_runtime::function_name::named]
24544 fn generic_arg_identifier_list_0(
24545 &mut self,
24546 _dot: &ParseTreeType<'t>,
24547 _identifier: &ParseTreeType<'t>,
24548 _generic_arg_identifier_list: &ParseTreeType<'t>,
24549 ) -> Result<()> {
24550 let context = function_name!();
24551 trace!("{}", self.trace_item_stack(context));
24552 let mut generic_arg_identifier_list = pop_item!(
24553 self,
24554 generic_arg_identifier_list,
24555 GenericArgIdentifierList,
24556 context
24557 );
24558 let identifier = pop_item!(self, identifier, Identifier, context);
24559 let dot = pop_item!(self, dot, Dot, context);
24560 let generic_arg_identifier_list_0_built = GenericArgIdentifierList {
24561 identifier: Box::new(identifier),
24562 dot: Box::new(dot),
24563 };
24564 generic_arg_identifier_list.push(generic_arg_identifier_list_0_built);
24566 self.push(
24567 ASTType::GenericArgIdentifierList(generic_arg_identifier_list),
24568 context,
24569 );
24570 Ok(())
24571 }
24572
24573 #[parol_runtime::function_name::named]
24578 fn generic_arg_identifier_list_1(&mut self) -> Result<()> {
24579 let context = function_name!();
24580 trace!("{}", self.trace_item_stack(context));
24581 let generic_arg_identifier_list_1_built = Vec::new();
24582 self.push(
24583 ASTType::GenericArgIdentifierList(generic_arg_identifier_list_1_built),
24584 context,
24585 );
24586 Ok(())
24587 }
24588
24589 #[parol_runtime::function_name::named]
24594 fn expression(&mut self, _if_expression: &ParseTreeType<'t>) -> Result<()> {
24595 let context = function_name!();
24596 trace!("{}", self.trace_item_stack(context));
24597 let if_expression = pop_item!(self, if_expression, IfExpression, context);
24598 let expression_built = Expression {
24599 if_expression: Box::new(if_expression),
24600 };
24601 self.user_grammar.expression(&expression_built)?;
24603 self.push(ASTType::Expression(expression_built), context);
24604 Ok(())
24605 }
24606
24607 #[parol_runtime::function_name::named]
24612 fn if_expression(
24613 &mut self,
24614 _if_expression_list: &ParseTreeType<'t>,
24615 _expression01: &ParseTreeType<'t>,
24616 ) -> Result<()> {
24617 let context = function_name!();
24618 trace!("{}", self.trace_item_stack(context));
24619 let expression01 = pop_item!(self, expression01, Expression01, context);
24620 let if_expression_list =
24621 pop_and_reverse_item!(self, if_expression_list, IfExpressionList, context);
24622 let if_expression_built = IfExpression {
24623 if_expression_list,
24624 expression01: Box::new(expression01),
24625 };
24626 self.user_grammar.if_expression(&if_expression_built)?;
24628 self.push(ASTType::IfExpression(if_expression_built), context);
24629 Ok(())
24630 }
24631
24632 #[parol_runtime::function_name::named]
24637 fn if_expression_list_0(
24638 &mut self,
24639 _if: &ParseTreeType<'t>,
24640 _expression: &ParseTreeType<'t>,
24641 _question: &ParseTreeType<'t>,
24642 _expression0: &ParseTreeType<'t>,
24643 _colon: &ParseTreeType<'t>,
24644 _if_expression_list: &ParseTreeType<'t>,
24645 ) -> Result<()> {
24646 let context = function_name!();
24647 trace!("{}", self.trace_item_stack(context));
24648 let mut if_expression_list = pop_item!(self, if_expression_list, IfExpressionList, context);
24649 let colon = pop_item!(self, colon, Colon, context);
24650 let expression0 = pop_item!(self, expression0, Expression, context);
24651 let question = pop_item!(self, question, Question, context);
24652 let expression = pop_item!(self, expression, Expression, context);
24653 let r#if = pop_item!(self, r#if, If, context);
24654 let if_expression_list_0_built = IfExpressionList {
24655 colon: Box::new(colon),
24656 expression0: Box::new(expression0),
24657 question: Box::new(question),
24658 expression: Box::new(expression),
24659 r#if: Box::new(r#if),
24660 };
24661 if_expression_list.push(if_expression_list_0_built);
24663 self.push(ASTType::IfExpressionList(if_expression_list), context);
24664 Ok(())
24665 }
24666
24667 #[parol_runtime::function_name::named]
24672 fn if_expression_list_1(&mut self) -> Result<()> {
24673 let context = function_name!();
24674 trace!("{}", self.trace_item_stack(context));
24675 let if_expression_list_1_built = Vec::new();
24676 self.push(
24677 ASTType::IfExpressionList(if_expression_list_1_built),
24678 context,
24679 );
24680 Ok(())
24681 }
24682
24683 #[parol_runtime::function_name::named]
24688 fn expression01(
24689 &mut self,
24690 _expression02: &ParseTreeType<'t>,
24691 _expression01_list: &ParseTreeType<'t>,
24692 ) -> Result<()> {
24693 let context = function_name!();
24694 trace!("{}", self.trace_item_stack(context));
24695 let expression01_list =
24696 pop_and_reverse_item!(self, expression01_list, Expression01List, context);
24697 let expression02 = pop_item!(self, expression02, Expression02, context);
24698 let expression01_built = Expression01 {
24699 expression02: Box::new(expression02),
24700 expression01_list,
24701 };
24702 self.user_grammar.expression01(&expression01_built)?;
24704 self.push(ASTType::Expression01(expression01_built), context);
24705 Ok(())
24706 }
24707
24708 #[parol_runtime::function_name::named]
24713 fn expression01_list_0(
24714 &mut self,
24715 _expression01_op: &ParseTreeType<'t>,
24716 _expression02: &ParseTreeType<'t>,
24717 _expression01_list: &ParseTreeType<'t>,
24718 ) -> Result<()> {
24719 let context = function_name!();
24720 trace!("{}", self.trace_item_stack(context));
24721 let mut expression01_list = pop_item!(self, expression01_list, Expression01List, context);
24722 let expression02 = pop_item!(self, expression02, Expression02, context);
24723 let expression01_op = pop_item!(self, expression01_op, Expression01Op, context);
24724 let expression01_list_0_built = Expression01List {
24725 expression02: Box::new(expression02),
24726 expression01_op: Box::new(expression01_op),
24727 };
24728 expression01_list.push(expression01_list_0_built);
24730 self.push(ASTType::Expression01List(expression01_list), context);
24731 Ok(())
24732 }
24733
24734 #[parol_runtime::function_name::named]
24739 fn expression01_list_1(&mut self) -> Result<()> {
24740 let context = function_name!();
24741 trace!("{}", self.trace_item_stack(context));
24742 let expression01_list_1_built = Vec::new();
24743 self.push(
24744 ASTType::Expression01List(expression01_list_1_built),
24745 context,
24746 );
24747 Ok(())
24748 }
24749
24750 #[parol_runtime::function_name::named]
24755 fn expression02(
24756 &mut self,
24757 _expression02_list: &ParseTreeType<'t>,
24758 _factor: &ParseTreeType<'t>,
24759 _expression02_opt: &ParseTreeType<'t>,
24760 ) -> Result<()> {
24761 let context = function_name!();
24762 trace!("{}", self.trace_item_stack(context));
24763 let expression02_opt = pop_item!(self, expression02_opt, Expression02Opt, context);
24764 let factor = pop_item!(self, factor, Factor, context);
24765 let expression02_list =
24766 pop_and_reverse_item!(self, expression02_list, Expression02List, context);
24767 let expression02_built = Expression02 {
24768 expression02_list,
24769 factor: Box::new(factor),
24770 expression02_opt,
24771 };
24772 self.user_grammar.expression02(&expression02_built)?;
24774 self.push(ASTType::Expression02(expression02_built), context);
24775 Ok(())
24776 }
24777
24778 #[parol_runtime::function_name::named]
24783 fn expression02_list_0(
24784 &mut self,
24785 _expression02_op: &ParseTreeType<'t>,
24786 _expression02_list: &ParseTreeType<'t>,
24787 ) -> Result<()> {
24788 let context = function_name!();
24789 trace!("{}", self.trace_item_stack(context));
24790 let mut expression02_list = pop_item!(self, expression02_list, Expression02List, context);
24791 let expression02_op = pop_item!(self, expression02_op, Expression02Op, context);
24792 let expression02_list_0_built = Expression02List {
24793 expression02_op: Box::new(expression02_op),
24794 };
24795 expression02_list.push(expression02_list_0_built);
24797 self.push(ASTType::Expression02List(expression02_list), context);
24798 Ok(())
24799 }
24800
24801 #[parol_runtime::function_name::named]
24806 fn expression02_list_1(&mut self) -> Result<()> {
24807 let context = function_name!();
24808 trace!("{}", self.trace_item_stack(context));
24809 let expression02_list_1_built = Vec::new();
24810 self.push(
24811 ASTType::Expression02List(expression02_list_1_built),
24812 context,
24813 );
24814 Ok(())
24815 }
24816
24817 #[parol_runtime::function_name::named]
24822 fn expression02_opt_0(
24823 &mut self,
24824 _as: &ParseTreeType<'t>,
24825 _casting_type: &ParseTreeType<'t>,
24826 ) -> Result<()> {
24827 let context = function_name!();
24828 trace!("{}", self.trace_item_stack(context));
24829 let casting_type = pop_item!(self, casting_type, CastingType, context);
24830 let r#as = pop_item!(self, r#as, As, context);
24831 let expression02_opt_0_built = Expression02Opt {
24832 r#as: Box::new(r#as),
24833 casting_type: Box::new(casting_type),
24834 };
24835 self.push(
24836 ASTType::Expression02Opt(Some(expression02_opt_0_built)),
24837 context,
24838 );
24839 Ok(())
24840 }
24841
24842 #[parol_runtime::function_name::named]
24847 fn expression02_opt_1(&mut self) -> Result<()> {
24848 let context = function_name!();
24849 trace!("{}", self.trace_item_stack(context));
24850 self.push(ASTType::Expression02Opt(None), context);
24851 Ok(())
24852 }
24853
24854 #[parol_runtime::function_name::named]
24859 fn expression01_op_0(&mut self, _operator01: &ParseTreeType<'t>) -> Result<()> {
24860 let context = function_name!();
24861 trace!("{}", self.trace_item_stack(context));
24862 let operator01 = pop_item!(self, operator01, Operator01, context);
24863 let expression01_op_0_built = Expression01OpOperator01 {
24864 operator01: Box::new(operator01),
24865 };
24866 let expression01_op_0_built = Expression01Op::Operator01(expression01_op_0_built);
24867 self.user_grammar
24869 .expression01_op(&expression01_op_0_built)?;
24870 self.push(ASTType::Expression01Op(expression01_op_0_built), context);
24871 Ok(())
24872 }
24873
24874 #[parol_runtime::function_name::named]
24879 fn expression01_op_1(&mut self, _operator02: &ParseTreeType<'t>) -> Result<()> {
24880 let context = function_name!();
24881 trace!("{}", self.trace_item_stack(context));
24882 let operator02 = pop_item!(self, operator02, Operator02, context);
24883 let expression01_op_1_built = Expression01OpOperator02 {
24884 operator02: Box::new(operator02),
24885 };
24886 let expression01_op_1_built = Expression01Op::Operator02(expression01_op_1_built);
24887 self.user_grammar
24889 .expression01_op(&expression01_op_1_built)?;
24890 self.push(ASTType::Expression01Op(expression01_op_1_built), context);
24891 Ok(())
24892 }
24893
24894 #[parol_runtime::function_name::named]
24899 fn expression01_op_2(&mut self, _operator03: &ParseTreeType<'t>) -> Result<()> {
24900 let context = function_name!();
24901 trace!("{}", self.trace_item_stack(context));
24902 let operator03 = pop_item!(self, operator03, Operator03, context);
24903 let expression01_op_2_built = Expression01OpOperator03 {
24904 operator03: Box::new(operator03),
24905 };
24906 let expression01_op_2_built = Expression01Op::Operator03(expression01_op_2_built);
24907 self.user_grammar
24909 .expression01_op(&expression01_op_2_built)?;
24910 self.push(ASTType::Expression01Op(expression01_op_2_built), context);
24911 Ok(())
24912 }
24913
24914 #[parol_runtime::function_name::named]
24919 fn expression01_op_3(&mut self, _operator04: &ParseTreeType<'t>) -> Result<()> {
24920 let context = function_name!();
24921 trace!("{}", self.trace_item_stack(context));
24922 let operator04 = pop_item!(self, operator04, Operator04, context);
24923 let expression01_op_3_built = Expression01OpOperator04 {
24924 operator04: Box::new(operator04),
24925 };
24926 let expression01_op_3_built = Expression01Op::Operator04(expression01_op_3_built);
24927 self.user_grammar
24929 .expression01_op(&expression01_op_3_built)?;
24930 self.push(ASTType::Expression01Op(expression01_op_3_built), context);
24931 Ok(())
24932 }
24933
24934 #[parol_runtime::function_name::named]
24939 fn expression01_op_4(&mut self, _operator05: &ParseTreeType<'t>) -> Result<()> {
24940 let context = function_name!();
24941 trace!("{}", self.trace_item_stack(context));
24942 let operator05 = pop_item!(self, operator05, Operator05, context);
24943 let expression01_op_4_built = Expression01OpOperator05 {
24944 operator05: Box::new(operator05),
24945 };
24946 let expression01_op_4_built = Expression01Op::Operator05(expression01_op_4_built);
24947 self.user_grammar
24949 .expression01_op(&expression01_op_4_built)?;
24950 self.push(ASTType::Expression01Op(expression01_op_4_built), context);
24951 Ok(())
24952 }
24953
24954 #[parol_runtime::function_name::named]
24959 fn expression01_op_5(&mut self, _operator06: &ParseTreeType<'t>) -> Result<()> {
24960 let context = function_name!();
24961 trace!("{}", self.trace_item_stack(context));
24962 let operator06 = pop_item!(self, operator06, Operator06, context);
24963 let expression01_op_5_built = Expression01OpOperator06 {
24964 operator06: Box::new(operator06),
24965 };
24966 let expression01_op_5_built = Expression01Op::Operator06(expression01_op_5_built);
24967 self.user_grammar
24969 .expression01_op(&expression01_op_5_built)?;
24970 self.push(ASTType::Expression01Op(expression01_op_5_built), context);
24971 Ok(())
24972 }
24973
24974 #[parol_runtime::function_name::named]
24979 fn expression01_op_6(&mut self, _operator07: &ParseTreeType<'t>) -> Result<()> {
24980 let context = function_name!();
24981 trace!("{}", self.trace_item_stack(context));
24982 let operator07 = pop_item!(self, operator07, Operator07, context);
24983 let expression01_op_6_built = Expression01OpOperator07 {
24984 operator07: Box::new(operator07),
24985 };
24986 let expression01_op_6_built = Expression01Op::Operator07(expression01_op_6_built);
24987 self.user_grammar
24989 .expression01_op(&expression01_op_6_built)?;
24990 self.push(ASTType::Expression01Op(expression01_op_6_built), context);
24991 Ok(())
24992 }
24993
24994 #[parol_runtime::function_name::named]
24999 fn expression01_op_7(&mut self, _star: &ParseTreeType<'t>) -> Result<()> {
25000 let context = function_name!();
25001 trace!("{}", self.trace_item_stack(context));
25002 let star = pop_item!(self, star, Star, context);
25003 let expression01_op_7_built = Expression01OpStar {
25004 star: Box::new(star),
25005 };
25006 let expression01_op_7_built = Expression01Op::Star(expression01_op_7_built);
25007 self.user_grammar
25009 .expression01_op(&expression01_op_7_built)?;
25010 self.push(ASTType::Expression01Op(expression01_op_7_built), context);
25011 Ok(())
25012 }
25013
25014 #[parol_runtime::function_name::named]
25019 fn expression01_op_8(&mut self, _operator08: &ParseTreeType<'t>) -> Result<()> {
25020 let context = function_name!();
25021 trace!("{}", self.trace_item_stack(context));
25022 let operator08 = pop_item!(self, operator08, Operator08, context);
25023 let expression01_op_8_built = Expression01OpOperator08 {
25024 operator08: Box::new(operator08),
25025 };
25026 let expression01_op_8_built = Expression01Op::Operator08(expression01_op_8_built);
25027 self.user_grammar
25029 .expression01_op(&expression01_op_8_built)?;
25030 self.push(ASTType::Expression01Op(expression01_op_8_built), context);
25031 Ok(())
25032 }
25033
25034 #[parol_runtime::function_name::named]
25039 fn expression02_op_0(&mut self, _unary_operator: &ParseTreeType<'t>) -> Result<()> {
25040 let context = function_name!();
25041 trace!("{}", self.trace_item_stack(context));
25042 let unary_operator = pop_item!(self, unary_operator, UnaryOperator, context);
25043 let expression02_op_0_built = Expression02OpUnaryOperator {
25044 unary_operator: Box::new(unary_operator),
25045 };
25046 let expression02_op_0_built = Expression02Op::UnaryOperator(expression02_op_0_built);
25047 self.user_grammar
25049 .expression02_op(&expression02_op_0_built)?;
25050 self.push(ASTType::Expression02Op(expression02_op_0_built), context);
25051 Ok(())
25052 }
25053
25054 #[parol_runtime::function_name::named]
25059 fn expression02_op_1(&mut self, _operator06: &ParseTreeType<'t>) -> Result<()> {
25060 let context = function_name!();
25061 trace!("{}", self.trace_item_stack(context));
25062 let operator06 = pop_item!(self, operator06, Operator06, context);
25063 let expression02_op_1_built = Expression02OpOperator06 {
25064 operator06: Box::new(operator06),
25065 };
25066 let expression02_op_1_built = Expression02Op::Operator06(expression02_op_1_built);
25067 self.user_grammar
25069 .expression02_op(&expression02_op_1_built)?;
25070 self.push(ASTType::Expression02Op(expression02_op_1_built), context);
25071 Ok(())
25072 }
25073
25074 #[parol_runtime::function_name::named]
25079 fn expression02_op_2(&mut self, _operator05: &ParseTreeType<'t>) -> Result<()> {
25080 let context = function_name!();
25081 trace!("{}", self.trace_item_stack(context));
25082 let operator05 = pop_item!(self, operator05, Operator05, context);
25083 let expression02_op_2_built = Expression02OpOperator05 {
25084 operator05: Box::new(operator05),
25085 };
25086 let expression02_op_2_built = Expression02Op::Operator05(expression02_op_2_built);
25087 self.user_grammar
25089 .expression02_op(&expression02_op_2_built)?;
25090 self.push(ASTType::Expression02Op(expression02_op_2_built), context);
25091 Ok(())
25092 }
25093
25094 #[parol_runtime::function_name::named]
25099 fn expression02_op_3(&mut self, _operator03: &ParseTreeType<'t>) -> Result<()> {
25100 let context = function_name!();
25101 trace!("{}", self.trace_item_stack(context));
25102 let operator03 = pop_item!(self, operator03, Operator03, context);
25103 let expression02_op_3_built = Expression02OpOperator03 {
25104 operator03: Box::new(operator03),
25105 };
25106 let expression02_op_3_built = Expression02Op::Operator03(expression02_op_3_built);
25107 self.user_grammar
25109 .expression02_op(&expression02_op_3_built)?;
25110 self.push(ASTType::Expression02Op(expression02_op_3_built), context);
25111 Ok(())
25112 }
25113
25114 #[parol_runtime::function_name::named]
25119 fn expression02_op_4(&mut self, _operator04: &ParseTreeType<'t>) -> Result<()> {
25120 let context = function_name!();
25121 trace!("{}", self.trace_item_stack(context));
25122 let operator04 = pop_item!(self, operator04, Operator04, context);
25123 let expression02_op_4_built = Expression02OpOperator04 {
25124 operator04: Box::new(operator04),
25125 };
25126 let expression02_op_4_built = Expression02Op::Operator04(expression02_op_4_built);
25127 self.user_grammar
25129 .expression02_op(&expression02_op_4_built)?;
25130 self.push(ASTType::Expression02Op(expression02_op_4_built), context);
25131 Ok(())
25132 }
25133
25134 #[parol_runtime::function_name::named]
25139 fn factor_0(&mut self, _number: &ParseTreeType<'t>) -> Result<()> {
25140 let context = function_name!();
25141 trace!("{}", self.trace_item_stack(context));
25142 let number = pop_item!(self, number, Number, context);
25143 let factor_0_built = FactorNumber {
25144 number: Box::new(number),
25145 };
25146 let factor_0_built = Factor::Number(factor_0_built);
25147 self.user_grammar.factor(&factor_0_built)?;
25149 self.push(ASTType::Factor(factor_0_built), context);
25150 Ok(())
25151 }
25152
25153 #[parol_runtime::function_name::named]
25158 fn factor_1(&mut self, _boolean_literal: &ParseTreeType<'t>) -> Result<()> {
25159 let context = function_name!();
25160 trace!("{}", self.trace_item_stack(context));
25161 let boolean_literal = pop_item!(self, boolean_literal, BooleanLiteral, context);
25162 let factor_1_built = FactorBooleanLiteral {
25163 boolean_literal: Box::new(boolean_literal),
25164 };
25165 let factor_1_built = Factor::BooleanLiteral(factor_1_built);
25166 self.user_grammar.factor(&factor_1_built)?;
25168 self.push(ASTType::Factor(factor_1_built), context);
25169 Ok(())
25170 }
25171
25172 #[parol_runtime::function_name::named]
25177 fn factor_2(&mut self, _identifier_factor: &ParseTreeType<'t>) -> Result<()> {
25178 let context = function_name!();
25179 trace!("{}", self.trace_item_stack(context));
25180 let identifier_factor = pop_item!(self, identifier_factor, IdentifierFactor, context);
25181 let factor_2_built = FactorIdentifierFactor {
25182 identifier_factor: Box::new(identifier_factor),
25183 };
25184 let factor_2_built = Factor::IdentifierFactor(factor_2_built);
25185 self.user_grammar.factor(&factor_2_built)?;
25187 self.push(ASTType::Factor(factor_2_built), context);
25188 Ok(())
25189 }
25190
25191 #[parol_runtime::function_name::named]
25196 fn factor_3(
25197 &mut self,
25198 _l_paren: &ParseTreeType<'t>,
25199 _expression: &ParseTreeType<'t>,
25200 _r_paren: &ParseTreeType<'t>,
25201 ) -> Result<()> {
25202 let context = function_name!();
25203 trace!("{}", self.trace_item_stack(context));
25204 let r_paren = pop_item!(self, r_paren, RParen, context);
25205 let expression = pop_item!(self, expression, Expression, context);
25206 let l_paren = pop_item!(self, l_paren, LParen, context);
25207 let factor_3_built = FactorLParenExpressionRParen {
25208 l_paren: Box::new(l_paren),
25209 expression: Box::new(expression),
25210 r_paren: Box::new(r_paren),
25211 };
25212 let factor_3_built = Factor::LParenExpressionRParen(factor_3_built);
25213 self.user_grammar.factor(&factor_3_built)?;
25215 self.push(ASTType::Factor(factor_3_built), context);
25216 Ok(())
25217 }
25218
25219 #[parol_runtime::function_name::named]
25224 fn factor_4(
25225 &mut self,
25226 _l_brace: &ParseTreeType<'t>,
25227 _concatenation_list: &ParseTreeType<'t>,
25228 _r_brace: &ParseTreeType<'t>,
25229 ) -> Result<()> {
25230 let context = function_name!();
25231 trace!("{}", self.trace_item_stack(context));
25232 let r_brace = pop_item!(self, r_brace, RBrace, context);
25233 let concatenation_list = pop_item!(self, concatenation_list, ConcatenationList, context);
25234 let l_brace = pop_item!(self, l_brace, LBrace, context);
25235 let factor_4_built = FactorLBraceConcatenationListRBrace {
25236 l_brace: Box::new(l_brace),
25237 concatenation_list: Box::new(concatenation_list),
25238 r_brace: Box::new(r_brace),
25239 };
25240 let factor_4_built = Factor::LBraceConcatenationListRBrace(factor_4_built);
25241 self.user_grammar.factor(&factor_4_built)?;
25243 self.push(ASTType::Factor(factor_4_built), context);
25244 Ok(())
25245 }
25246
25247 #[parol_runtime::function_name::named]
25252 fn factor_5(
25253 &mut self,
25254 _quote_l_brace: &ParseTreeType<'t>,
25255 _array_literal_list: &ParseTreeType<'t>,
25256 _r_brace: &ParseTreeType<'t>,
25257 ) -> Result<()> {
25258 let context = function_name!();
25259 trace!("{}", self.trace_item_stack(context));
25260 let r_brace = pop_item!(self, r_brace, RBrace, context);
25261 let array_literal_list = pop_item!(self, array_literal_list, ArrayLiteralList, context);
25262 let quote_l_brace = pop_item!(self, quote_l_brace, QuoteLBrace, context);
25263 let factor_5_built = FactorQuoteLBraceArrayLiteralListRBrace {
25264 quote_l_brace: Box::new(quote_l_brace),
25265 array_literal_list: Box::new(array_literal_list),
25266 r_brace: Box::new(r_brace),
25267 };
25268 let factor_5_built = Factor::QuoteLBraceArrayLiteralListRBrace(factor_5_built);
25269 self.user_grammar.factor(&factor_5_built)?;
25271 self.push(ASTType::Factor(factor_5_built), context);
25272 Ok(())
25273 }
25274
25275 #[parol_runtime::function_name::named]
25280 fn factor_6(&mut self, _case_expression: &ParseTreeType<'t>) -> Result<()> {
25281 let context = function_name!();
25282 trace!("{}", self.trace_item_stack(context));
25283 let case_expression = pop_item!(self, case_expression, CaseExpression, context);
25284 let factor_6_built = FactorCaseExpression {
25285 case_expression: Box::new(case_expression),
25286 };
25287 let factor_6_built = Factor::CaseExpression(factor_6_built);
25288 self.user_grammar.factor(&factor_6_built)?;
25290 self.push(ASTType::Factor(factor_6_built), context);
25291 Ok(())
25292 }
25293
25294 #[parol_runtime::function_name::named]
25299 fn factor_7(&mut self, _switch_expression: &ParseTreeType<'t>) -> Result<()> {
25300 let context = function_name!();
25301 trace!("{}", self.trace_item_stack(context));
25302 let switch_expression = pop_item!(self, switch_expression, SwitchExpression, context);
25303 let factor_7_built = FactorSwitchExpression {
25304 switch_expression: Box::new(switch_expression),
25305 };
25306 let factor_7_built = Factor::SwitchExpression(factor_7_built);
25307 self.user_grammar.factor(&factor_7_built)?;
25309 self.push(ASTType::Factor(factor_7_built), context);
25310 Ok(())
25311 }
25312
25313 #[parol_runtime::function_name::named]
25318 fn factor_8(&mut self, _string_literal: &ParseTreeType<'t>) -> Result<()> {
25319 let context = function_name!();
25320 trace!("{}", self.trace_item_stack(context));
25321 let string_literal = pop_item!(self, string_literal, StringLiteral, context);
25322 let factor_8_built = FactorStringLiteral {
25323 string_literal: Box::new(string_literal),
25324 };
25325 let factor_8_built = Factor::StringLiteral(factor_8_built);
25326 self.user_grammar.factor(&factor_8_built)?;
25328 self.push(ASTType::Factor(factor_8_built), context);
25329 Ok(())
25330 }
25331
25332 #[parol_runtime::function_name::named]
25337 fn factor_9(&mut self, _factor_group: &ParseTreeType<'t>) -> Result<()> {
25338 let context = function_name!();
25339 trace!("{}", self.trace_item_stack(context));
25340 let factor_group = pop_item!(self, factor_group, FactorGroup, context);
25341 let factor_9_built = FactorFactorGroup {
25342 factor_group: Box::new(factor_group),
25343 };
25344 let factor_9_built = Factor::FactorGroup(factor_9_built);
25345 self.user_grammar.factor(&factor_9_built)?;
25347 self.push(ASTType::Factor(factor_9_built), context);
25348 Ok(())
25349 }
25350
25351 #[parol_runtime::function_name::named]
25356 fn factor_group_0(&mut self, _msb: &ParseTreeType<'t>) -> Result<()> {
25357 let context = function_name!();
25358 trace!("{}", self.trace_item_stack(context));
25359 let msb = pop_item!(self, msb, Msb, context);
25360 let factor_group_0_built = FactorGroupMsb { msb: Box::new(msb) };
25361 let factor_group_0_built = FactorGroup::Msb(factor_group_0_built);
25362 self.push(ASTType::FactorGroup(factor_group_0_built), context);
25363 Ok(())
25364 }
25365
25366 #[parol_runtime::function_name::named]
25371 fn factor_group_1(&mut self, _lsb: &ParseTreeType<'t>) -> Result<()> {
25372 let context = function_name!();
25373 trace!("{}", self.trace_item_stack(context));
25374 let lsb = pop_item!(self, lsb, Lsb, context);
25375 let factor_group_1_built = FactorGroupLsb { lsb: Box::new(lsb) };
25376 let factor_group_1_built = FactorGroup::Lsb(factor_group_1_built);
25377 self.push(ASTType::FactorGroup(factor_group_1_built), context);
25378 Ok(())
25379 }
25380
25381 #[parol_runtime::function_name::named]
25386 fn factor_10(&mut self, _inside_expression: &ParseTreeType<'t>) -> Result<()> {
25387 let context = function_name!();
25388 trace!("{}", self.trace_item_stack(context));
25389 let inside_expression = pop_item!(self, inside_expression, InsideExpression, context);
25390 let factor_10_built = FactorInsideExpression {
25391 inside_expression: Box::new(inside_expression),
25392 };
25393 let factor_10_built = Factor::InsideExpression(factor_10_built);
25394 self.user_grammar.factor(&factor_10_built)?;
25396 self.push(ASTType::Factor(factor_10_built), context);
25397 Ok(())
25398 }
25399
25400 #[parol_runtime::function_name::named]
25405 fn factor_11(&mut self, _outside_expression: &ParseTreeType<'t>) -> Result<()> {
25406 let context = function_name!();
25407 trace!("{}", self.trace_item_stack(context));
25408 let outside_expression = pop_item!(self, outside_expression, OutsideExpression, context);
25409 let factor_11_built = FactorOutsideExpression {
25410 outside_expression: Box::new(outside_expression),
25411 };
25412 let factor_11_built = Factor::OutsideExpression(factor_11_built);
25413 self.user_grammar.factor(&factor_11_built)?;
25415 self.push(ASTType::Factor(factor_11_built), context);
25416 Ok(())
25417 }
25418
25419 #[parol_runtime::function_name::named]
25424 fn factor_12(&mut self, _type_expression: &ParseTreeType<'t>) -> Result<()> {
25425 let context = function_name!();
25426 trace!("{}", self.trace_item_stack(context));
25427 let type_expression = pop_item!(self, type_expression, TypeExpression, context);
25428 let factor_12_built = FactorTypeExpression {
25429 type_expression: Box::new(type_expression),
25430 };
25431 let factor_12_built = Factor::TypeExpression(factor_12_built);
25432 self.user_grammar.factor(&factor_12_built)?;
25434 self.push(ASTType::Factor(factor_12_built), context);
25435 Ok(())
25436 }
25437
25438 #[parol_runtime::function_name::named]
25443 fn factor_13(&mut self, _factor_type_factor: &ParseTreeType<'t>) -> Result<()> {
25444 let context = function_name!();
25445 trace!("{}", self.trace_item_stack(context));
25446 let factor_type_factor = pop_item!(self, factor_type_factor, FactorTypeFactor, context);
25447 let factor_13_built = FactorFactorTypeFactor {
25448 factor_type_factor: Box::new(factor_type_factor),
25449 };
25450 let factor_13_built = Factor::FactorTypeFactor(factor_13_built);
25451 self.user_grammar.factor(&factor_13_built)?;
25453 self.push(ASTType::Factor(factor_13_built), context);
25454 Ok(())
25455 }
25456
25457 #[parol_runtime::function_name::named]
25462 fn boolean_literal_0(&mut self, _true: &ParseTreeType<'t>) -> Result<()> {
25463 let context = function_name!();
25464 trace!("{}", self.trace_item_stack(context));
25465 let r#true = pop_item!(self, r#true, True, context);
25466 let boolean_literal_0_built = BooleanLiteralTrue {
25467 r#true: Box::new(r#true),
25468 };
25469 let boolean_literal_0_built = BooleanLiteral::True(boolean_literal_0_built);
25470 self.user_grammar
25472 .boolean_literal(&boolean_literal_0_built)?;
25473 self.push(ASTType::BooleanLiteral(boolean_literal_0_built), context);
25474 Ok(())
25475 }
25476
25477 #[parol_runtime::function_name::named]
25482 fn boolean_literal_1(&mut self, _false: &ParseTreeType<'t>) -> Result<()> {
25483 let context = function_name!();
25484 trace!("{}", self.trace_item_stack(context));
25485 let r#false = pop_item!(self, r#false, False, context);
25486 let boolean_literal_1_built = BooleanLiteralFalse {
25487 r#false: Box::new(r#false),
25488 };
25489 let boolean_literal_1_built = BooleanLiteral::False(boolean_literal_1_built);
25490 self.user_grammar
25492 .boolean_literal(&boolean_literal_1_built)?;
25493 self.push(ASTType::BooleanLiteral(boolean_literal_1_built), context);
25494 Ok(())
25495 }
25496
25497 #[parol_runtime::function_name::named]
25502 fn identifier_factor(
25503 &mut self,
25504 _expression_identifier: &ParseTreeType<'t>,
25505 _identifier_factor_opt: &ParseTreeType<'t>,
25506 ) -> Result<()> {
25507 let context = function_name!();
25508 trace!("{}", self.trace_item_stack(context));
25509 let identifier_factor_opt =
25510 pop_item!(self, identifier_factor_opt, IdentifierFactorOpt, context);
25511 let expression_identifier =
25512 pop_item!(self, expression_identifier, ExpressionIdentifier, context);
25513 let identifier_factor_built = IdentifierFactor {
25514 expression_identifier: Box::new(expression_identifier),
25515 identifier_factor_opt,
25516 };
25517 self.user_grammar
25519 .identifier_factor(&identifier_factor_built)?;
25520 self.push(ASTType::IdentifierFactor(identifier_factor_built), context);
25521 Ok(())
25522 }
25523
25524 #[parol_runtime::function_name::named]
25529 fn identifier_factor_opt_0(
25530 &mut self,
25531 _identifier_factor_opt_group: &ParseTreeType<'t>,
25532 ) -> Result<()> {
25533 let context = function_name!();
25534 trace!("{}", self.trace_item_stack(context));
25535 let identifier_factor_opt_group = pop_item!(
25536 self,
25537 identifier_factor_opt_group,
25538 IdentifierFactorOptGroup,
25539 context
25540 );
25541 let identifier_factor_opt_0_built = IdentifierFactorOpt {
25542 identifier_factor_opt_group: Box::new(identifier_factor_opt_group),
25543 };
25544 self.push(
25545 ASTType::IdentifierFactorOpt(Some(identifier_factor_opt_0_built)),
25546 context,
25547 );
25548 Ok(())
25549 }
25550
25551 #[parol_runtime::function_name::named]
25556 fn identifier_factor_opt_group_0(&mut self, _function_call: &ParseTreeType<'t>) -> Result<()> {
25557 let context = function_name!();
25558 trace!("{}", self.trace_item_stack(context));
25559 let function_call = pop_item!(self, function_call, FunctionCall, context);
25560 let identifier_factor_opt_group_0_built = IdentifierFactorOptGroupFunctionCall {
25561 function_call: Box::new(function_call),
25562 };
25563 let identifier_factor_opt_group_0_built =
25564 IdentifierFactorOptGroup::FunctionCall(identifier_factor_opt_group_0_built);
25565 self.push(
25566 ASTType::IdentifierFactorOptGroup(identifier_factor_opt_group_0_built),
25567 context,
25568 );
25569 Ok(())
25570 }
25571
25572 #[parol_runtime::function_name::named]
25577 fn identifier_factor_opt_group_1(
25578 &mut self,
25579 _struct_constructor: &ParseTreeType<'t>,
25580 ) -> Result<()> {
25581 let context = function_name!();
25582 trace!("{}", self.trace_item_stack(context));
25583 let struct_constructor = pop_item!(self, struct_constructor, StructConstructor, context);
25584 let identifier_factor_opt_group_1_built = IdentifierFactorOptGroupStructConstructor {
25585 struct_constructor: Box::new(struct_constructor),
25586 };
25587 let identifier_factor_opt_group_1_built =
25588 IdentifierFactorOptGroup::StructConstructor(identifier_factor_opt_group_1_built);
25589 self.push(
25590 ASTType::IdentifierFactorOptGroup(identifier_factor_opt_group_1_built),
25591 context,
25592 );
25593 Ok(())
25594 }
25595
25596 #[parol_runtime::function_name::named]
25601 fn identifier_factor_opt_1(&mut self) -> Result<()> {
25602 let context = function_name!();
25603 trace!("{}", self.trace_item_stack(context));
25604 self.push(ASTType::IdentifierFactorOpt(None), context);
25605 Ok(())
25606 }
25607
25608 #[parol_runtime::function_name::named]
25613 fn factor_type_factor(
25614 &mut self,
25615 _factor_type_factor_list: &ParseTreeType<'t>,
25616 _factor_type: &ParseTreeType<'t>,
25617 ) -> Result<()> {
25618 let context = function_name!();
25619 trace!("{}", self.trace_item_stack(context));
25620 let factor_type = pop_item!(self, factor_type, FactorType, context);
25621 let factor_type_factor_list =
25622 pop_and_reverse_item!(self, factor_type_factor_list, FactorTypeFactorList, context);
25623 let factor_type_factor_built = FactorTypeFactor {
25624 factor_type_factor_list,
25625 factor_type: Box::new(factor_type),
25626 };
25627 self.user_grammar
25629 .factor_type_factor(&factor_type_factor_built)?;
25630 self.push(ASTType::FactorTypeFactor(factor_type_factor_built), context);
25631 Ok(())
25632 }
25633
25634 #[parol_runtime::function_name::named]
25639 fn factor_type_factor_list_0(
25640 &mut self,
25641 _type_modifier: &ParseTreeType<'t>,
25642 _factor_type_factor_list: &ParseTreeType<'t>,
25643 ) -> Result<()> {
25644 let context = function_name!();
25645 trace!("{}", self.trace_item_stack(context));
25646 let mut factor_type_factor_list =
25647 pop_item!(self, factor_type_factor_list, FactorTypeFactorList, context);
25648 let type_modifier = pop_item!(self, type_modifier, TypeModifier, context);
25649 let factor_type_factor_list_0_built = FactorTypeFactorList {
25650 type_modifier: Box::new(type_modifier),
25651 };
25652 factor_type_factor_list.push(factor_type_factor_list_0_built);
25654 self.push(
25655 ASTType::FactorTypeFactorList(factor_type_factor_list),
25656 context,
25657 );
25658 Ok(())
25659 }
25660
25661 #[parol_runtime::function_name::named]
25666 fn factor_type_factor_list_1(&mut self) -> Result<()> {
25667 let context = function_name!();
25668 trace!("{}", self.trace_item_stack(context));
25669 let factor_type_factor_list_1_built = Vec::new();
25670 self.push(
25671 ASTType::FactorTypeFactorList(factor_type_factor_list_1_built),
25672 context,
25673 );
25674 Ok(())
25675 }
25676
25677 #[parol_runtime::function_name::named]
25682 fn function_call(
25683 &mut self,
25684 _l_paren: &ParseTreeType<'t>,
25685 _function_call_opt: &ParseTreeType<'t>,
25686 _r_paren: &ParseTreeType<'t>,
25687 ) -> Result<()> {
25688 let context = function_name!();
25689 trace!("{}", self.trace_item_stack(context));
25690 let r_paren = pop_item!(self, r_paren, RParen, context);
25691 let function_call_opt = pop_item!(self, function_call_opt, FunctionCallOpt, context);
25692 let l_paren = pop_item!(self, l_paren, LParen, context);
25693 let function_call_built = FunctionCall {
25694 l_paren: Box::new(l_paren),
25695 function_call_opt,
25696 r_paren: Box::new(r_paren),
25697 };
25698 self.user_grammar.function_call(&function_call_built)?;
25700 self.push(ASTType::FunctionCall(function_call_built), context);
25701 Ok(())
25702 }
25703
25704 #[parol_runtime::function_name::named]
25709 fn function_call_opt_0(&mut self, _argument_list: &ParseTreeType<'t>) -> Result<()> {
25710 let context = function_name!();
25711 trace!("{}", self.trace_item_stack(context));
25712 let argument_list = pop_item!(self, argument_list, ArgumentList, context);
25713 let function_call_opt_0_built = FunctionCallOpt {
25714 argument_list: Box::new(argument_list),
25715 };
25716 self.push(
25717 ASTType::FunctionCallOpt(Some(function_call_opt_0_built)),
25718 context,
25719 );
25720 Ok(())
25721 }
25722
25723 #[parol_runtime::function_name::named]
25728 fn function_call_opt_1(&mut self) -> Result<()> {
25729 let context = function_name!();
25730 trace!("{}", self.trace_item_stack(context));
25731 self.push(ASTType::FunctionCallOpt(None), context);
25732 Ok(())
25733 }
25734
25735 #[parol_runtime::function_name::named]
25740 fn argument_list(
25741 &mut self,
25742 _argument_item: &ParseTreeType<'t>,
25743 _argument_list_list: &ParseTreeType<'t>,
25744 _argument_list_opt: &ParseTreeType<'t>,
25745 ) -> Result<()> {
25746 let context = function_name!();
25747 trace!("{}", self.trace_item_stack(context));
25748 let argument_list_opt = pop_item!(self, argument_list_opt, ArgumentListOpt, context);
25749 let argument_list_list =
25750 pop_and_reverse_item!(self, argument_list_list, ArgumentListList, context);
25751 let argument_item = pop_item!(self, argument_item, ArgumentItem, context);
25752 let argument_list_built = ArgumentList {
25753 argument_item: Box::new(argument_item),
25754 argument_list_list,
25755 argument_list_opt,
25756 };
25757 self.user_grammar.argument_list(&argument_list_built)?;
25759 self.push(ASTType::ArgumentList(argument_list_built), context);
25760 Ok(())
25761 }
25762
25763 #[parol_runtime::function_name::named]
25768 fn argument_list_list_0(
25769 &mut self,
25770 _comma: &ParseTreeType<'t>,
25771 _argument_item: &ParseTreeType<'t>,
25772 _argument_list_list: &ParseTreeType<'t>,
25773 ) -> Result<()> {
25774 let context = function_name!();
25775 trace!("{}", self.trace_item_stack(context));
25776 let mut argument_list_list = pop_item!(self, argument_list_list, ArgumentListList, context);
25777 let argument_item = pop_item!(self, argument_item, ArgumentItem, context);
25778 let comma = pop_item!(self, comma, Comma, context);
25779 let argument_list_list_0_built = ArgumentListList {
25780 argument_item: Box::new(argument_item),
25781 comma: Box::new(comma),
25782 };
25783 argument_list_list.push(argument_list_list_0_built);
25785 self.push(ASTType::ArgumentListList(argument_list_list), context);
25786 Ok(())
25787 }
25788
25789 #[parol_runtime::function_name::named]
25794 fn argument_list_list_1(&mut self) -> Result<()> {
25795 let context = function_name!();
25796 trace!("{}", self.trace_item_stack(context));
25797 let argument_list_list_1_built = Vec::new();
25798 self.push(
25799 ASTType::ArgumentListList(argument_list_list_1_built),
25800 context,
25801 );
25802 Ok(())
25803 }
25804
25805 #[parol_runtime::function_name::named]
25810 fn argument_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
25811 let context = function_name!();
25812 trace!("{}", self.trace_item_stack(context));
25813 let comma = pop_item!(self, comma, Comma, context);
25814 let argument_list_opt_0_built = ArgumentListOpt {
25815 comma: Box::new(comma),
25816 };
25817 self.push(
25818 ASTType::ArgumentListOpt(Some(argument_list_opt_0_built)),
25819 context,
25820 );
25821 Ok(())
25822 }
25823
25824 #[parol_runtime::function_name::named]
25829 fn argument_list_opt_1(&mut self) -> Result<()> {
25830 let context = function_name!();
25831 trace!("{}", self.trace_item_stack(context));
25832 self.push(ASTType::ArgumentListOpt(None), context);
25833 Ok(())
25834 }
25835
25836 #[parol_runtime::function_name::named]
25841 fn argument_item(
25842 &mut self,
25843 _argument_expression: &ParseTreeType<'t>,
25844 _argument_item_opt: &ParseTreeType<'t>,
25845 ) -> Result<()> {
25846 let context = function_name!();
25847 trace!("{}", self.trace_item_stack(context));
25848 let argument_item_opt = pop_item!(self, argument_item_opt, ArgumentItemOpt, context);
25849 let argument_expression = pop_item!(self, argument_expression, ArgumentExpression, context);
25850 let argument_item_built = ArgumentItem {
25851 argument_expression: Box::new(argument_expression),
25852 argument_item_opt,
25853 };
25854 self.user_grammar.argument_item(&argument_item_built)?;
25856 self.push(ASTType::ArgumentItem(argument_item_built), context);
25857 Ok(())
25858 }
25859
25860 #[parol_runtime::function_name::named]
25865 fn argument_item_opt_0(
25866 &mut self,
25867 _colon: &ParseTreeType<'t>,
25868 _expression: &ParseTreeType<'t>,
25869 ) -> Result<()> {
25870 let context = function_name!();
25871 trace!("{}", self.trace_item_stack(context));
25872 let expression = pop_item!(self, expression, Expression, context);
25873 let colon = pop_item!(self, colon, Colon, context);
25874 let argument_item_opt_0_built = ArgumentItemOpt {
25875 colon: Box::new(colon),
25876 expression: Box::new(expression),
25877 };
25878 self.push(
25879 ASTType::ArgumentItemOpt(Some(argument_item_opt_0_built)),
25880 context,
25881 );
25882 Ok(())
25883 }
25884
25885 #[parol_runtime::function_name::named]
25890 fn argument_item_opt_1(&mut self) -> Result<()> {
25891 let context = function_name!();
25892 trace!("{}", self.trace_item_stack(context));
25893 self.push(ASTType::ArgumentItemOpt(None), context);
25894 Ok(())
25895 }
25896
25897 #[parol_runtime::function_name::named]
25902 fn argument_expression(&mut self, _expression: &ParseTreeType<'t>) -> Result<()> {
25903 let context = function_name!();
25904 trace!("{}", self.trace_item_stack(context));
25905 let expression = pop_item!(self, expression, Expression, context);
25906 let argument_expression_built = ArgumentExpression {
25907 expression: Box::new(expression),
25908 };
25909 self.user_grammar
25911 .argument_expression(&argument_expression_built)?;
25912 self.push(
25913 ASTType::ArgumentExpression(argument_expression_built),
25914 context,
25915 );
25916 Ok(())
25917 }
25918
25919 #[parol_runtime::function_name::named]
25924 fn struct_constructor(
25925 &mut self,
25926 _quote_l_brace: &ParseTreeType<'t>,
25927 _struct_constructor_list: &ParseTreeType<'t>,
25928 _struct_constructor_opt: &ParseTreeType<'t>,
25929 _r_brace: &ParseTreeType<'t>,
25930 ) -> Result<()> {
25931 let context = function_name!();
25932 trace!("{}", self.trace_item_stack(context));
25933 let r_brace = pop_item!(self, r_brace, RBrace, context);
25934 let struct_constructor_opt =
25935 pop_item!(self, struct_constructor_opt, StructConstructorOpt, context);
25936 let struct_constructor_list = pop_item!(
25937 self,
25938 struct_constructor_list,
25939 StructConstructorList,
25940 context
25941 );
25942 let quote_l_brace = pop_item!(self, quote_l_brace, QuoteLBrace, context);
25943 let struct_constructor_built = StructConstructor {
25944 quote_l_brace: Box::new(quote_l_brace),
25945 struct_constructor_list: Box::new(struct_constructor_list),
25946 struct_constructor_opt,
25947 r_brace: Box::new(r_brace),
25948 };
25949 self.user_grammar
25951 .struct_constructor(&struct_constructor_built)?;
25952 self.push(
25953 ASTType::StructConstructor(struct_constructor_built),
25954 context,
25955 );
25956 Ok(())
25957 }
25958
25959 #[parol_runtime::function_name::named]
25964 fn struct_constructor_opt_0(
25965 &mut self,
25966 _dot_dot: &ParseTreeType<'t>,
25967 _defaul: &ParseTreeType<'t>,
25968 _l_paren: &ParseTreeType<'t>,
25969 _expression: &ParseTreeType<'t>,
25970 _r_paren: &ParseTreeType<'t>,
25971 ) -> Result<()> {
25972 let context = function_name!();
25973 trace!("{}", self.trace_item_stack(context));
25974 let r_paren = pop_item!(self, r_paren, RParen, context);
25975 let expression = pop_item!(self, expression, Expression, context);
25976 let l_paren = pop_item!(self, l_paren, LParen, context);
25977 let defaul = pop_item!(self, defaul, Defaul, context);
25978 let dot_dot = pop_item!(self, dot_dot, DotDot, context);
25979 let struct_constructor_opt_0_built = StructConstructorOpt {
25980 dot_dot: Box::new(dot_dot),
25981 defaul: Box::new(defaul),
25982 l_paren: Box::new(l_paren),
25983 expression: Box::new(expression),
25984 r_paren: Box::new(r_paren),
25985 };
25986 self.push(
25987 ASTType::StructConstructorOpt(Some(struct_constructor_opt_0_built)),
25988 context,
25989 );
25990 Ok(())
25991 }
25992
25993 #[parol_runtime::function_name::named]
25998 fn struct_constructor_opt_1(&mut self) -> Result<()> {
25999 let context = function_name!();
26000 trace!("{}", self.trace_item_stack(context));
26001 self.push(ASTType::StructConstructorOpt(None), context);
26002 Ok(())
26003 }
26004
26005 #[parol_runtime::function_name::named]
26010 fn struct_constructor_list(
26011 &mut self,
26012 _struct_constructor_item: &ParseTreeType<'t>,
26013 _struct_constructor_list_list: &ParseTreeType<'t>,
26014 _struct_constructor_list_opt: &ParseTreeType<'t>,
26015 ) -> Result<()> {
26016 let context = function_name!();
26017 trace!("{}", self.trace_item_stack(context));
26018 let struct_constructor_list_opt = pop_item!(
26019 self,
26020 struct_constructor_list_opt,
26021 StructConstructorListOpt,
26022 context
26023 );
26024 let struct_constructor_list_list = pop_and_reverse_item!(
26025 self,
26026 struct_constructor_list_list,
26027 StructConstructorListList,
26028 context
26029 );
26030 let struct_constructor_item = pop_item!(
26031 self,
26032 struct_constructor_item,
26033 StructConstructorItem,
26034 context
26035 );
26036 let struct_constructor_list_built = StructConstructorList {
26037 struct_constructor_item: Box::new(struct_constructor_item),
26038 struct_constructor_list_list,
26039 struct_constructor_list_opt,
26040 };
26041 self.user_grammar
26043 .struct_constructor_list(&struct_constructor_list_built)?;
26044 self.push(
26045 ASTType::StructConstructorList(struct_constructor_list_built),
26046 context,
26047 );
26048 Ok(())
26049 }
26050
26051 #[parol_runtime::function_name::named]
26056 fn struct_constructor_list_list_0(
26057 &mut self,
26058 _comma: &ParseTreeType<'t>,
26059 _struct_constructor_item: &ParseTreeType<'t>,
26060 _struct_constructor_list_list: &ParseTreeType<'t>,
26061 ) -> Result<()> {
26062 let context = function_name!();
26063 trace!("{}", self.trace_item_stack(context));
26064 let mut struct_constructor_list_list = pop_item!(
26065 self,
26066 struct_constructor_list_list,
26067 StructConstructorListList,
26068 context
26069 );
26070 let struct_constructor_item = pop_item!(
26071 self,
26072 struct_constructor_item,
26073 StructConstructorItem,
26074 context
26075 );
26076 let comma = pop_item!(self, comma, Comma, context);
26077 let struct_constructor_list_list_0_built = StructConstructorListList {
26078 struct_constructor_item: Box::new(struct_constructor_item),
26079 comma: Box::new(comma),
26080 };
26081 struct_constructor_list_list.push(struct_constructor_list_list_0_built);
26083 self.push(
26084 ASTType::StructConstructorListList(struct_constructor_list_list),
26085 context,
26086 );
26087 Ok(())
26088 }
26089
26090 #[parol_runtime::function_name::named]
26095 fn struct_constructor_list_list_1(&mut self) -> Result<()> {
26096 let context = function_name!();
26097 trace!("{}", self.trace_item_stack(context));
26098 let struct_constructor_list_list_1_built = Vec::new();
26099 self.push(
26100 ASTType::StructConstructorListList(struct_constructor_list_list_1_built),
26101 context,
26102 );
26103 Ok(())
26104 }
26105
26106 #[parol_runtime::function_name::named]
26111 fn struct_constructor_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
26112 let context = function_name!();
26113 trace!("{}", self.trace_item_stack(context));
26114 let comma = pop_item!(self, comma, Comma, context);
26115 let struct_constructor_list_opt_0_built = StructConstructorListOpt {
26116 comma: Box::new(comma),
26117 };
26118 self.push(
26119 ASTType::StructConstructorListOpt(Some(struct_constructor_list_opt_0_built)),
26120 context,
26121 );
26122 Ok(())
26123 }
26124
26125 #[parol_runtime::function_name::named]
26130 fn struct_constructor_list_opt_1(&mut self) -> Result<()> {
26131 let context = function_name!();
26132 trace!("{}", self.trace_item_stack(context));
26133 self.push(ASTType::StructConstructorListOpt(None), context);
26134 Ok(())
26135 }
26136
26137 #[parol_runtime::function_name::named]
26142 fn struct_constructor_item(
26143 &mut self,
26144 _identifier: &ParseTreeType<'t>,
26145 _colon: &ParseTreeType<'t>,
26146 _expression: &ParseTreeType<'t>,
26147 ) -> Result<()> {
26148 let context = function_name!();
26149 trace!("{}", self.trace_item_stack(context));
26150 let expression = pop_item!(self, expression, Expression, context);
26151 let colon = pop_item!(self, colon, Colon, context);
26152 let identifier = pop_item!(self, identifier, Identifier, context);
26153 let struct_constructor_item_built = StructConstructorItem {
26154 identifier: Box::new(identifier),
26155 colon: Box::new(colon),
26156 expression: Box::new(expression),
26157 };
26158 self.user_grammar
26160 .struct_constructor_item(&struct_constructor_item_built)?;
26161 self.push(
26162 ASTType::StructConstructorItem(struct_constructor_item_built),
26163 context,
26164 );
26165 Ok(())
26166 }
26167
26168 #[parol_runtime::function_name::named]
26173 fn concatenation_list(
26174 &mut self,
26175 _concatenation_item: &ParseTreeType<'t>,
26176 _concatenation_list_list: &ParseTreeType<'t>,
26177 _concatenation_list_opt: &ParseTreeType<'t>,
26178 ) -> Result<()> {
26179 let context = function_name!();
26180 trace!("{}", self.trace_item_stack(context));
26181 let concatenation_list_opt =
26182 pop_item!(self, concatenation_list_opt, ConcatenationListOpt, context);
26183 let concatenation_list_list = pop_and_reverse_item!(
26184 self,
26185 concatenation_list_list,
26186 ConcatenationListList,
26187 context
26188 );
26189 let concatenation_item = pop_item!(self, concatenation_item, ConcatenationItem, context);
26190 let concatenation_list_built = ConcatenationList {
26191 concatenation_item: Box::new(concatenation_item),
26192 concatenation_list_list,
26193 concatenation_list_opt,
26194 };
26195 self.user_grammar
26197 .concatenation_list(&concatenation_list_built)?;
26198 self.push(
26199 ASTType::ConcatenationList(concatenation_list_built),
26200 context,
26201 );
26202 Ok(())
26203 }
26204
26205 #[parol_runtime::function_name::named]
26210 fn concatenation_list_list_0(
26211 &mut self,
26212 _comma: &ParseTreeType<'t>,
26213 _concatenation_item: &ParseTreeType<'t>,
26214 _concatenation_list_list: &ParseTreeType<'t>,
26215 ) -> Result<()> {
26216 let context = function_name!();
26217 trace!("{}", self.trace_item_stack(context));
26218 let mut concatenation_list_list = pop_item!(
26219 self,
26220 concatenation_list_list,
26221 ConcatenationListList,
26222 context
26223 );
26224 let concatenation_item = pop_item!(self, concatenation_item, ConcatenationItem, context);
26225 let comma = pop_item!(self, comma, Comma, context);
26226 let concatenation_list_list_0_built = ConcatenationListList {
26227 concatenation_item: Box::new(concatenation_item),
26228 comma: Box::new(comma),
26229 };
26230 concatenation_list_list.push(concatenation_list_list_0_built);
26232 self.push(
26233 ASTType::ConcatenationListList(concatenation_list_list),
26234 context,
26235 );
26236 Ok(())
26237 }
26238
26239 #[parol_runtime::function_name::named]
26244 fn concatenation_list_list_1(&mut self) -> Result<()> {
26245 let context = function_name!();
26246 trace!("{}", self.trace_item_stack(context));
26247 let concatenation_list_list_1_built = Vec::new();
26248 self.push(
26249 ASTType::ConcatenationListList(concatenation_list_list_1_built),
26250 context,
26251 );
26252 Ok(())
26253 }
26254
26255 #[parol_runtime::function_name::named]
26260 fn concatenation_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
26261 let context = function_name!();
26262 trace!("{}", self.trace_item_stack(context));
26263 let comma = pop_item!(self, comma, Comma, context);
26264 let concatenation_list_opt_0_built = ConcatenationListOpt {
26265 comma: Box::new(comma),
26266 };
26267 self.push(
26268 ASTType::ConcatenationListOpt(Some(concatenation_list_opt_0_built)),
26269 context,
26270 );
26271 Ok(())
26272 }
26273
26274 #[parol_runtime::function_name::named]
26279 fn concatenation_list_opt_1(&mut self) -> Result<()> {
26280 let context = function_name!();
26281 trace!("{}", self.trace_item_stack(context));
26282 self.push(ASTType::ConcatenationListOpt(None), context);
26283 Ok(())
26284 }
26285
26286 #[parol_runtime::function_name::named]
26291 fn concatenation_item(
26292 &mut self,
26293 _expression: &ParseTreeType<'t>,
26294 _concatenation_item_opt: &ParseTreeType<'t>,
26295 ) -> Result<()> {
26296 let context = function_name!();
26297 trace!("{}", self.trace_item_stack(context));
26298 let concatenation_item_opt =
26299 pop_item!(self, concatenation_item_opt, ConcatenationItemOpt, context);
26300 let expression = pop_item!(self, expression, Expression, context);
26301 let concatenation_item_built = ConcatenationItem {
26302 expression: Box::new(expression),
26303 concatenation_item_opt,
26304 };
26305 self.user_grammar
26307 .concatenation_item(&concatenation_item_built)?;
26308 self.push(
26309 ASTType::ConcatenationItem(concatenation_item_built),
26310 context,
26311 );
26312 Ok(())
26313 }
26314
26315 #[parol_runtime::function_name::named]
26320 fn concatenation_item_opt_0(
26321 &mut self,
26322 _repeat: &ParseTreeType<'t>,
26323 _expression: &ParseTreeType<'t>,
26324 ) -> Result<()> {
26325 let context = function_name!();
26326 trace!("{}", self.trace_item_stack(context));
26327 let expression = pop_item!(self, expression, Expression, context);
26328 let repeat = pop_item!(self, repeat, Repeat, context);
26329 let concatenation_item_opt_0_built = ConcatenationItemOpt {
26330 repeat: Box::new(repeat),
26331 expression: Box::new(expression),
26332 };
26333 self.push(
26334 ASTType::ConcatenationItemOpt(Some(concatenation_item_opt_0_built)),
26335 context,
26336 );
26337 Ok(())
26338 }
26339
26340 #[parol_runtime::function_name::named]
26345 fn concatenation_item_opt_1(&mut self) -> Result<()> {
26346 let context = function_name!();
26347 trace!("{}", self.trace_item_stack(context));
26348 self.push(ASTType::ConcatenationItemOpt(None), context);
26349 Ok(())
26350 }
26351
26352 #[parol_runtime::function_name::named]
26357 fn array_literal_list(
26358 &mut self,
26359 _array_literal_item: &ParseTreeType<'t>,
26360 _array_literal_list_list: &ParseTreeType<'t>,
26361 _array_literal_list_opt: &ParseTreeType<'t>,
26362 ) -> Result<()> {
26363 let context = function_name!();
26364 trace!("{}", self.trace_item_stack(context));
26365 let array_literal_list_opt =
26366 pop_item!(self, array_literal_list_opt, ArrayLiteralListOpt, context);
26367 let array_literal_list_list =
26368 pop_and_reverse_item!(self, array_literal_list_list, ArrayLiteralListList, context);
26369 let array_literal_item = pop_item!(self, array_literal_item, ArrayLiteralItem, context);
26370 let array_literal_list_built = ArrayLiteralList {
26371 array_literal_item: Box::new(array_literal_item),
26372 array_literal_list_list,
26373 array_literal_list_opt,
26374 };
26375 self.user_grammar
26377 .array_literal_list(&array_literal_list_built)?;
26378 self.push(ASTType::ArrayLiteralList(array_literal_list_built), context);
26379 Ok(())
26380 }
26381
26382 #[parol_runtime::function_name::named]
26387 fn array_literal_list_list_0(
26388 &mut self,
26389 _comma: &ParseTreeType<'t>,
26390 _array_literal_item: &ParseTreeType<'t>,
26391 _array_literal_list_list: &ParseTreeType<'t>,
26392 ) -> Result<()> {
26393 let context = function_name!();
26394 trace!("{}", self.trace_item_stack(context));
26395 let mut array_literal_list_list =
26396 pop_item!(self, array_literal_list_list, ArrayLiteralListList, context);
26397 let array_literal_item = pop_item!(self, array_literal_item, ArrayLiteralItem, context);
26398 let comma = pop_item!(self, comma, Comma, context);
26399 let array_literal_list_list_0_built = ArrayLiteralListList {
26400 array_literal_item: Box::new(array_literal_item),
26401 comma: Box::new(comma),
26402 };
26403 array_literal_list_list.push(array_literal_list_list_0_built);
26405 self.push(
26406 ASTType::ArrayLiteralListList(array_literal_list_list),
26407 context,
26408 );
26409 Ok(())
26410 }
26411
26412 #[parol_runtime::function_name::named]
26417 fn array_literal_list_list_1(&mut self) -> Result<()> {
26418 let context = function_name!();
26419 trace!("{}", self.trace_item_stack(context));
26420 let array_literal_list_list_1_built = Vec::new();
26421 self.push(
26422 ASTType::ArrayLiteralListList(array_literal_list_list_1_built),
26423 context,
26424 );
26425 Ok(())
26426 }
26427
26428 #[parol_runtime::function_name::named]
26433 fn array_literal_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
26434 let context = function_name!();
26435 trace!("{}", self.trace_item_stack(context));
26436 let comma = pop_item!(self, comma, Comma, context);
26437 let array_literal_list_opt_0_built = ArrayLiteralListOpt {
26438 comma: Box::new(comma),
26439 };
26440 self.push(
26441 ASTType::ArrayLiteralListOpt(Some(array_literal_list_opt_0_built)),
26442 context,
26443 );
26444 Ok(())
26445 }
26446
26447 #[parol_runtime::function_name::named]
26452 fn array_literal_list_opt_1(&mut self) -> Result<()> {
26453 let context = function_name!();
26454 trace!("{}", self.trace_item_stack(context));
26455 self.push(ASTType::ArrayLiteralListOpt(None), context);
26456 Ok(())
26457 }
26458
26459 #[parol_runtime::function_name::named]
26464 fn array_literal_item(&mut self, _array_literal_item_group: &ParseTreeType<'t>) -> Result<()> {
26465 let context = function_name!();
26466 trace!("{}", self.trace_item_stack(context));
26467 let array_literal_item_group = pop_item!(
26468 self,
26469 array_literal_item_group,
26470 ArrayLiteralItemGroup,
26471 context
26472 );
26473 let array_literal_item_built = ArrayLiteralItem {
26474 array_literal_item_group: Box::new(array_literal_item_group),
26475 };
26476 self.user_grammar
26478 .array_literal_item(&array_literal_item_built)?;
26479 self.push(ASTType::ArrayLiteralItem(array_literal_item_built), context);
26480 Ok(())
26481 }
26482
26483 #[parol_runtime::function_name::named]
26488 fn array_literal_item_group_0(
26489 &mut self,
26490 _expression: &ParseTreeType<'t>,
26491 _array_literal_item_opt: &ParseTreeType<'t>,
26492 ) -> Result<()> {
26493 let context = function_name!();
26494 trace!("{}", self.trace_item_stack(context));
26495 let array_literal_item_opt =
26496 pop_item!(self, array_literal_item_opt, ArrayLiteralItemOpt, context);
26497 let expression = pop_item!(self, expression, Expression, context);
26498 let array_literal_item_group_0_built = ArrayLiteralItemGroupExpressionArrayLiteralItemOpt {
26499 expression: Box::new(expression),
26500 array_literal_item_opt,
26501 };
26502 let array_literal_item_group_0_built =
26503 ArrayLiteralItemGroup::ExpressionArrayLiteralItemOpt(array_literal_item_group_0_built);
26504 self.push(
26505 ASTType::ArrayLiteralItemGroup(array_literal_item_group_0_built),
26506 context,
26507 );
26508 Ok(())
26509 }
26510
26511 #[parol_runtime::function_name::named]
26516 fn array_literal_item_group_1(
26517 &mut self,
26518 _defaul: &ParseTreeType<'t>,
26519 _colon: &ParseTreeType<'t>,
26520 _expression: &ParseTreeType<'t>,
26521 ) -> Result<()> {
26522 let context = function_name!();
26523 trace!("{}", self.trace_item_stack(context));
26524 let expression = pop_item!(self, expression, Expression, context);
26525 let colon = pop_item!(self, colon, Colon, context);
26526 let defaul = pop_item!(self, defaul, Defaul, context);
26527 let array_literal_item_group_1_built = ArrayLiteralItemGroupDefaulColonExpression {
26528 defaul: Box::new(defaul),
26529 colon: Box::new(colon),
26530 expression: Box::new(expression),
26531 };
26532 let array_literal_item_group_1_built =
26533 ArrayLiteralItemGroup::DefaulColonExpression(array_literal_item_group_1_built);
26534 self.push(
26535 ASTType::ArrayLiteralItemGroup(array_literal_item_group_1_built),
26536 context,
26537 );
26538 Ok(())
26539 }
26540
26541 #[parol_runtime::function_name::named]
26546 fn array_literal_item_opt_0(
26547 &mut self,
26548 _repeat: &ParseTreeType<'t>,
26549 _expression: &ParseTreeType<'t>,
26550 ) -> Result<()> {
26551 let context = function_name!();
26552 trace!("{}", self.trace_item_stack(context));
26553 let expression = pop_item!(self, expression, Expression, context);
26554 let repeat = pop_item!(self, repeat, Repeat, context);
26555 let array_literal_item_opt_0_built = ArrayLiteralItemOpt {
26556 repeat: Box::new(repeat),
26557 expression: Box::new(expression),
26558 };
26559 self.push(
26560 ASTType::ArrayLiteralItemOpt(Some(array_literal_item_opt_0_built)),
26561 context,
26562 );
26563 Ok(())
26564 }
26565
26566 #[parol_runtime::function_name::named]
26571 fn array_literal_item_opt_1(&mut self) -> Result<()> {
26572 let context = function_name!();
26573 trace!("{}", self.trace_item_stack(context));
26574 self.push(ASTType::ArrayLiteralItemOpt(None), context);
26575 Ok(())
26576 }
26577
26578 #[parol_runtime::function_name::named]
26583 fn case_expression(
26584 &mut self,
26585 _case: &ParseTreeType<'t>,
26586 _expression: &ParseTreeType<'t>,
26587 _l_brace: &ParseTreeType<'t>,
26588 _case_condition: &ParseTreeType<'t>,
26589 _colon: &ParseTreeType<'t>,
26590 _expression0: &ParseTreeType<'t>,
26591 _comma: &ParseTreeType<'t>,
26592 _case_expression_list: &ParseTreeType<'t>,
26593 _defaul: &ParseTreeType<'t>,
26594 _colon0: &ParseTreeType<'t>,
26595 _expression1: &ParseTreeType<'t>,
26596 _case_expression_opt: &ParseTreeType<'t>,
26597 _r_brace: &ParseTreeType<'t>,
26598 ) -> Result<()> {
26599 let context = function_name!();
26600 trace!("{}", self.trace_item_stack(context));
26601 let r_brace = pop_item!(self, r_brace, RBrace, context);
26602 let case_expression_opt = pop_item!(self, case_expression_opt, CaseExpressionOpt, context);
26603 let expression1 = pop_item!(self, expression1, Expression, context);
26604 let colon0 = pop_item!(self, colon0, Colon, context);
26605 let defaul = pop_item!(self, defaul, Defaul, context);
26606 let case_expression_list =
26607 pop_and_reverse_item!(self, case_expression_list, CaseExpressionList, context);
26608 let comma = pop_item!(self, comma, Comma, context);
26609 let expression0 = pop_item!(self, expression0, Expression, context);
26610 let colon = pop_item!(self, colon, Colon, context);
26611 let case_condition = pop_item!(self, case_condition, CaseCondition, context);
26612 let l_brace = pop_item!(self, l_brace, LBrace, context);
26613 let expression = pop_item!(self, expression, Expression, context);
26614 let case = pop_item!(self, case, Case, context);
26615 let case_expression_built = CaseExpression {
26616 case: Box::new(case),
26617 expression: Box::new(expression),
26618 l_brace: Box::new(l_brace),
26619 case_condition: Box::new(case_condition),
26620 colon: Box::new(colon),
26621 expression0: Box::new(expression0),
26622 comma: Box::new(comma),
26623 case_expression_list,
26624 defaul: Box::new(defaul),
26625 colon0: Box::new(colon0),
26626 expression1: Box::new(expression1),
26627 case_expression_opt,
26628 r_brace: Box::new(r_brace),
26629 };
26630 self.user_grammar.case_expression(&case_expression_built)?;
26632 self.push(ASTType::CaseExpression(case_expression_built), context);
26633 Ok(())
26634 }
26635
26636 #[parol_runtime::function_name::named]
26641 fn case_expression_list_0(
26642 &mut self,
26643 _case_condition: &ParseTreeType<'t>,
26644 _colon: &ParseTreeType<'t>,
26645 _expression: &ParseTreeType<'t>,
26646 _comma: &ParseTreeType<'t>,
26647 _case_expression_list: &ParseTreeType<'t>,
26648 ) -> Result<()> {
26649 let context = function_name!();
26650 trace!("{}", self.trace_item_stack(context));
26651 let mut case_expression_list =
26652 pop_item!(self, case_expression_list, CaseExpressionList, context);
26653 let comma = pop_item!(self, comma, Comma, context);
26654 let expression = pop_item!(self, expression, Expression, context);
26655 let colon = pop_item!(self, colon, Colon, context);
26656 let case_condition = pop_item!(self, case_condition, CaseCondition, context);
26657 let case_expression_list_0_built = CaseExpressionList {
26658 comma: Box::new(comma),
26659 expression: Box::new(expression),
26660 colon: Box::new(colon),
26661 case_condition: Box::new(case_condition),
26662 };
26663 case_expression_list.push(case_expression_list_0_built);
26665 self.push(ASTType::CaseExpressionList(case_expression_list), context);
26666 Ok(())
26667 }
26668
26669 #[parol_runtime::function_name::named]
26674 fn case_expression_list_1(&mut self) -> Result<()> {
26675 let context = function_name!();
26676 trace!("{}", self.trace_item_stack(context));
26677 let case_expression_list_1_built = Vec::new();
26678 self.push(
26679 ASTType::CaseExpressionList(case_expression_list_1_built),
26680 context,
26681 );
26682 Ok(())
26683 }
26684
26685 #[parol_runtime::function_name::named]
26690 fn case_expression_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
26691 let context = function_name!();
26692 trace!("{}", self.trace_item_stack(context));
26693 let comma = pop_item!(self, comma, Comma, context);
26694 let case_expression_opt_0_built = CaseExpressionOpt {
26695 comma: Box::new(comma),
26696 };
26697 self.push(
26698 ASTType::CaseExpressionOpt(Some(case_expression_opt_0_built)),
26699 context,
26700 );
26701 Ok(())
26702 }
26703
26704 #[parol_runtime::function_name::named]
26709 fn case_expression_opt_1(&mut self) -> Result<()> {
26710 let context = function_name!();
26711 trace!("{}", self.trace_item_stack(context));
26712 self.push(ASTType::CaseExpressionOpt(None), context);
26713 Ok(())
26714 }
26715
26716 #[parol_runtime::function_name::named]
26721 fn switch_expression(
26722 &mut self,
26723 _switch: &ParseTreeType<'t>,
26724 _l_brace: &ParseTreeType<'t>,
26725 _switch_condition: &ParseTreeType<'t>,
26726 _colon: &ParseTreeType<'t>,
26727 _expression: &ParseTreeType<'t>,
26728 _comma: &ParseTreeType<'t>,
26729 _switch_expression_list: &ParseTreeType<'t>,
26730 _defaul: &ParseTreeType<'t>,
26731 _colon0: &ParseTreeType<'t>,
26732 _expression0: &ParseTreeType<'t>,
26733 _switch_expression_opt: &ParseTreeType<'t>,
26734 _r_brace: &ParseTreeType<'t>,
26735 ) -> Result<()> {
26736 let context = function_name!();
26737 trace!("{}", self.trace_item_stack(context));
26738 let r_brace = pop_item!(self, r_brace, RBrace, context);
26739 let switch_expression_opt =
26740 pop_item!(self, switch_expression_opt, SwitchExpressionOpt, context);
26741 let expression0 = pop_item!(self, expression0, Expression, context);
26742 let colon0 = pop_item!(self, colon0, Colon, context);
26743 let defaul = pop_item!(self, defaul, Defaul, context);
26744 let switch_expression_list =
26745 pop_and_reverse_item!(self, switch_expression_list, SwitchExpressionList, context);
26746 let comma = pop_item!(self, comma, Comma, context);
26747 let expression = pop_item!(self, expression, Expression, context);
26748 let colon = pop_item!(self, colon, Colon, context);
26749 let switch_condition = pop_item!(self, switch_condition, SwitchCondition, context);
26750 let l_brace = pop_item!(self, l_brace, LBrace, context);
26751 let switch = pop_item!(self, switch, Switch, context);
26752 let switch_expression_built = SwitchExpression {
26753 switch: Box::new(switch),
26754 l_brace: Box::new(l_brace),
26755 switch_condition: Box::new(switch_condition),
26756 colon: Box::new(colon),
26757 expression: Box::new(expression),
26758 comma: Box::new(comma),
26759 switch_expression_list,
26760 defaul: Box::new(defaul),
26761 colon0: Box::new(colon0),
26762 expression0: Box::new(expression0),
26763 switch_expression_opt,
26764 r_brace: Box::new(r_brace),
26765 };
26766 self.user_grammar
26768 .switch_expression(&switch_expression_built)?;
26769 self.push(ASTType::SwitchExpression(switch_expression_built), context);
26770 Ok(())
26771 }
26772
26773 #[parol_runtime::function_name::named]
26778 fn switch_expression_list_0(
26779 &mut self,
26780 _switch_condition: &ParseTreeType<'t>,
26781 _colon: &ParseTreeType<'t>,
26782 _expression: &ParseTreeType<'t>,
26783 _comma: &ParseTreeType<'t>,
26784 _switch_expression_list: &ParseTreeType<'t>,
26785 ) -> Result<()> {
26786 let context = function_name!();
26787 trace!("{}", self.trace_item_stack(context));
26788 let mut switch_expression_list =
26789 pop_item!(self, switch_expression_list, SwitchExpressionList, context);
26790 let comma = pop_item!(self, comma, Comma, context);
26791 let expression = pop_item!(self, expression, Expression, context);
26792 let colon = pop_item!(self, colon, Colon, context);
26793 let switch_condition = pop_item!(self, switch_condition, SwitchCondition, context);
26794 let switch_expression_list_0_built = SwitchExpressionList {
26795 comma: Box::new(comma),
26796 expression: Box::new(expression),
26797 colon: Box::new(colon),
26798 switch_condition: Box::new(switch_condition),
26799 };
26800 switch_expression_list.push(switch_expression_list_0_built);
26802 self.push(
26803 ASTType::SwitchExpressionList(switch_expression_list),
26804 context,
26805 );
26806 Ok(())
26807 }
26808
26809 #[parol_runtime::function_name::named]
26814 fn switch_expression_list_1(&mut self) -> Result<()> {
26815 let context = function_name!();
26816 trace!("{}", self.trace_item_stack(context));
26817 let switch_expression_list_1_built = Vec::new();
26818 self.push(
26819 ASTType::SwitchExpressionList(switch_expression_list_1_built),
26820 context,
26821 );
26822 Ok(())
26823 }
26824
26825 #[parol_runtime::function_name::named]
26830 fn switch_expression_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
26831 let context = function_name!();
26832 trace!("{}", self.trace_item_stack(context));
26833 let comma = pop_item!(self, comma, Comma, context);
26834 let switch_expression_opt_0_built = SwitchExpressionOpt {
26835 comma: Box::new(comma),
26836 };
26837 self.push(
26838 ASTType::SwitchExpressionOpt(Some(switch_expression_opt_0_built)),
26839 context,
26840 );
26841 Ok(())
26842 }
26843
26844 #[parol_runtime::function_name::named]
26849 fn switch_expression_opt_1(&mut self) -> Result<()> {
26850 let context = function_name!();
26851 trace!("{}", self.trace_item_stack(context));
26852 self.push(ASTType::SwitchExpressionOpt(None), context);
26853 Ok(())
26854 }
26855
26856 #[parol_runtime::function_name::named]
26861 fn type_expression(
26862 &mut self,
26863 _type: &ParseTreeType<'t>,
26864 _l_paren: &ParseTreeType<'t>,
26865 _expression: &ParseTreeType<'t>,
26866 _r_paren: &ParseTreeType<'t>,
26867 ) -> Result<()> {
26868 let context = function_name!();
26869 trace!("{}", self.trace_item_stack(context));
26870 let r_paren = pop_item!(self, r_paren, RParen, context);
26871 let expression = pop_item!(self, expression, Expression, context);
26872 let l_paren = pop_item!(self, l_paren, LParen, context);
26873 let r#type = pop_item!(self, r#type, Type, context);
26874 let type_expression_built = TypeExpression {
26875 r#type: Box::new(r#type),
26876 l_paren: Box::new(l_paren),
26877 expression: Box::new(expression),
26878 r_paren: Box::new(r_paren),
26879 };
26880 self.user_grammar.type_expression(&type_expression_built)?;
26882 self.push(ASTType::TypeExpression(type_expression_built), context);
26883 Ok(())
26884 }
26885
26886 #[parol_runtime::function_name::named]
26891 fn inside_expression(
26892 &mut self,
26893 _inside: &ParseTreeType<'t>,
26894 _expression: &ParseTreeType<'t>,
26895 _l_brace: &ParseTreeType<'t>,
26896 _range_list: &ParseTreeType<'t>,
26897 _r_brace: &ParseTreeType<'t>,
26898 ) -> Result<()> {
26899 let context = function_name!();
26900 trace!("{}", self.trace_item_stack(context));
26901 let r_brace = pop_item!(self, r_brace, RBrace, context);
26902 let range_list = pop_item!(self, range_list, RangeList, context);
26903 let l_brace = pop_item!(self, l_brace, LBrace, context);
26904 let expression = pop_item!(self, expression, Expression, context);
26905 let inside = pop_item!(self, inside, Inside, context);
26906 let inside_expression_built = InsideExpression {
26907 inside: Box::new(inside),
26908 expression: Box::new(expression),
26909 l_brace: Box::new(l_brace),
26910 range_list: Box::new(range_list),
26911 r_brace: Box::new(r_brace),
26912 };
26913 self.user_grammar
26915 .inside_expression(&inside_expression_built)?;
26916 self.push(ASTType::InsideExpression(inside_expression_built), context);
26917 Ok(())
26918 }
26919
26920 #[parol_runtime::function_name::named]
26925 fn outside_expression(
26926 &mut self,
26927 _outside: &ParseTreeType<'t>,
26928 _expression: &ParseTreeType<'t>,
26929 _l_brace: &ParseTreeType<'t>,
26930 _range_list: &ParseTreeType<'t>,
26931 _r_brace: &ParseTreeType<'t>,
26932 ) -> Result<()> {
26933 let context = function_name!();
26934 trace!("{}", self.trace_item_stack(context));
26935 let r_brace = pop_item!(self, r_brace, RBrace, context);
26936 let range_list = pop_item!(self, range_list, RangeList, context);
26937 let l_brace = pop_item!(self, l_brace, LBrace, context);
26938 let expression = pop_item!(self, expression, Expression, context);
26939 let outside = pop_item!(self, outside, Outside, context);
26940 let outside_expression_built = OutsideExpression {
26941 outside: Box::new(outside),
26942 expression: Box::new(expression),
26943 l_brace: Box::new(l_brace),
26944 range_list: Box::new(range_list),
26945 r_brace: Box::new(r_brace),
26946 };
26947 self.user_grammar
26949 .outside_expression(&outside_expression_built)?;
26950 self.push(
26951 ASTType::OutsideExpression(outside_expression_built),
26952 context,
26953 );
26954 Ok(())
26955 }
26956
26957 #[parol_runtime::function_name::named]
26962 fn range_list(
26963 &mut self,
26964 _range_item: &ParseTreeType<'t>,
26965 _range_list_list: &ParseTreeType<'t>,
26966 _range_list_opt: &ParseTreeType<'t>,
26967 ) -> Result<()> {
26968 let context = function_name!();
26969 trace!("{}", self.trace_item_stack(context));
26970 let range_list_opt = pop_item!(self, range_list_opt, RangeListOpt, context);
26971 let range_list_list = pop_and_reverse_item!(self, range_list_list, RangeListList, context);
26972 let range_item = pop_item!(self, range_item, RangeItem, context);
26973 let range_list_built = RangeList {
26974 range_item: Box::new(range_item),
26975 range_list_list,
26976 range_list_opt,
26977 };
26978 self.user_grammar.range_list(&range_list_built)?;
26980 self.push(ASTType::RangeList(range_list_built), context);
26981 Ok(())
26982 }
26983
26984 #[parol_runtime::function_name::named]
26989 fn range_list_list_0(
26990 &mut self,
26991 _comma: &ParseTreeType<'t>,
26992 _range_item: &ParseTreeType<'t>,
26993 _range_list_list: &ParseTreeType<'t>,
26994 ) -> Result<()> {
26995 let context = function_name!();
26996 trace!("{}", self.trace_item_stack(context));
26997 let mut range_list_list = pop_item!(self, range_list_list, RangeListList, context);
26998 let range_item = pop_item!(self, range_item, RangeItem, context);
26999 let comma = pop_item!(self, comma, Comma, context);
27000 let range_list_list_0_built = RangeListList {
27001 range_item: Box::new(range_item),
27002 comma: Box::new(comma),
27003 };
27004 range_list_list.push(range_list_list_0_built);
27006 self.push(ASTType::RangeListList(range_list_list), context);
27007 Ok(())
27008 }
27009
27010 #[parol_runtime::function_name::named]
27015 fn range_list_list_1(&mut self) -> Result<()> {
27016 let context = function_name!();
27017 trace!("{}", self.trace_item_stack(context));
27018 let range_list_list_1_built = Vec::new();
27019 self.push(ASTType::RangeListList(range_list_list_1_built), context);
27020 Ok(())
27021 }
27022
27023 #[parol_runtime::function_name::named]
27028 fn range_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
27029 let context = function_name!();
27030 trace!("{}", self.trace_item_stack(context));
27031 let comma = pop_item!(self, comma, Comma, context);
27032 let range_list_opt_0_built = RangeListOpt {
27033 comma: Box::new(comma),
27034 };
27035 self.push(ASTType::RangeListOpt(Some(range_list_opt_0_built)), context);
27036 Ok(())
27037 }
27038
27039 #[parol_runtime::function_name::named]
27044 fn range_list_opt_1(&mut self) -> Result<()> {
27045 let context = function_name!();
27046 trace!("{}", self.trace_item_stack(context));
27047 self.push(ASTType::RangeListOpt(None), context);
27048 Ok(())
27049 }
27050
27051 #[parol_runtime::function_name::named]
27056 fn range_item(&mut self, _range: &ParseTreeType<'t>) -> Result<()> {
27057 let context = function_name!();
27058 trace!("{}", self.trace_item_stack(context));
27059 let range = pop_item!(self, range, Range, context);
27060 let range_item_built = RangeItem {
27061 range: Box::new(range),
27062 };
27063 self.user_grammar.range_item(&range_item_built)?;
27065 self.push(ASTType::RangeItem(range_item_built), context);
27066 Ok(())
27067 }
27068
27069 #[parol_runtime::function_name::named]
27074 fn select(
27075 &mut self,
27076 _l_bracket: &ParseTreeType<'t>,
27077 _expression: &ParseTreeType<'t>,
27078 _select_opt: &ParseTreeType<'t>,
27079 _r_bracket: &ParseTreeType<'t>,
27080 ) -> Result<()> {
27081 let context = function_name!();
27082 trace!("{}", self.trace_item_stack(context));
27083 let r_bracket = pop_item!(self, r_bracket, RBracket, context);
27084 let select_opt = pop_item!(self, select_opt, SelectOpt, context);
27085 let expression = pop_item!(self, expression, Expression, context);
27086 let l_bracket = pop_item!(self, l_bracket, LBracket, context);
27087 let select_built = Select {
27088 l_bracket: Box::new(l_bracket),
27089 expression: Box::new(expression),
27090 select_opt,
27091 r_bracket: Box::new(r_bracket),
27092 };
27093 self.user_grammar.select(&select_built)?;
27095 self.push(ASTType::Select(select_built), context);
27096 Ok(())
27097 }
27098
27099 #[parol_runtime::function_name::named]
27104 fn select_opt_0(
27105 &mut self,
27106 _select_operator: &ParseTreeType<'t>,
27107 _expression: &ParseTreeType<'t>,
27108 ) -> Result<()> {
27109 let context = function_name!();
27110 trace!("{}", self.trace_item_stack(context));
27111 let expression = pop_item!(self, expression, Expression, context);
27112 let select_operator = pop_item!(self, select_operator, SelectOperator, context);
27113 let select_opt_0_built = SelectOpt {
27114 select_operator: Box::new(select_operator),
27115 expression: Box::new(expression),
27116 };
27117 self.push(ASTType::SelectOpt(Some(select_opt_0_built)), context);
27118 Ok(())
27119 }
27120
27121 #[parol_runtime::function_name::named]
27126 fn select_opt_1(&mut self) -> Result<()> {
27127 let context = function_name!();
27128 trace!("{}", self.trace_item_stack(context));
27129 self.push(ASTType::SelectOpt(None), context);
27130 Ok(())
27131 }
27132
27133 #[parol_runtime::function_name::named]
27138 fn select_operator_0(&mut self, _colon: &ParseTreeType<'t>) -> Result<()> {
27139 let context = function_name!();
27140 trace!("{}", self.trace_item_stack(context));
27141 let colon = pop_item!(self, colon, Colon, context);
27142 let select_operator_0_built = SelectOperatorColon {
27143 colon: Box::new(colon),
27144 };
27145 let select_operator_0_built = SelectOperator::Colon(select_operator_0_built);
27146 self.user_grammar
27148 .select_operator(&select_operator_0_built)?;
27149 self.push(ASTType::SelectOperator(select_operator_0_built), context);
27150 Ok(())
27151 }
27152
27153 #[parol_runtime::function_name::named]
27158 fn select_operator_1(&mut self, _plus_colon: &ParseTreeType<'t>) -> Result<()> {
27159 let context = function_name!();
27160 trace!("{}", self.trace_item_stack(context));
27161 let plus_colon = pop_item!(self, plus_colon, PlusColon, context);
27162 let select_operator_1_built = SelectOperatorPlusColon {
27163 plus_colon: Box::new(plus_colon),
27164 };
27165 let select_operator_1_built = SelectOperator::PlusColon(select_operator_1_built);
27166 self.user_grammar
27168 .select_operator(&select_operator_1_built)?;
27169 self.push(ASTType::SelectOperator(select_operator_1_built), context);
27170 Ok(())
27171 }
27172
27173 #[parol_runtime::function_name::named]
27178 fn select_operator_2(&mut self, _minus_colon: &ParseTreeType<'t>) -> Result<()> {
27179 let context = function_name!();
27180 trace!("{}", self.trace_item_stack(context));
27181 let minus_colon = pop_item!(self, minus_colon, MinusColon, context);
27182 let select_operator_2_built = SelectOperatorMinusColon {
27183 minus_colon: Box::new(minus_colon),
27184 };
27185 let select_operator_2_built = SelectOperator::MinusColon(select_operator_2_built);
27186 self.user_grammar
27188 .select_operator(&select_operator_2_built)?;
27189 self.push(ASTType::SelectOperator(select_operator_2_built), context);
27190 Ok(())
27191 }
27192
27193 #[parol_runtime::function_name::named]
27198 fn select_operator_3(&mut self, _step: &ParseTreeType<'t>) -> Result<()> {
27199 let context = function_name!();
27200 trace!("{}", self.trace_item_stack(context));
27201 let step = pop_item!(self, step, Step, context);
27202 let select_operator_3_built = SelectOperatorStep {
27203 step: Box::new(step),
27204 };
27205 let select_operator_3_built = SelectOperator::Step(select_operator_3_built);
27206 self.user_grammar
27208 .select_operator(&select_operator_3_built)?;
27209 self.push(ASTType::SelectOperator(select_operator_3_built), context);
27210 Ok(())
27211 }
27212
27213 #[parol_runtime::function_name::named]
27218 fn width(
27219 &mut self,
27220 _l_angle: &ParseTreeType<'t>,
27221 _expression: &ParseTreeType<'t>,
27222 _width_list: &ParseTreeType<'t>,
27223 _r_angle: &ParseTreeType<'t>,
27224 ) -> Result<()> {
27225 let context = function_name!();
27226 trace!("{}", self.trace_item_stack(context));
27227 let r_angle = pop_item!(self, r_angle, RAngle, context);
27228 let width_list = pop_and_reverse_item!(self, width_list, WidthList, context);
27229 let expression = pop_item!(self, expression, Expression, context);
27230 let l_angle = pop_item!(self, l_angle, LAngle, context);
27231 let width_built = Width {
27232 l_angle: Box::new(l_angle),
27233 expression: Box::new(expression),
27234 width_list,
27235 r_angle: Box::new(r_angle),
27236 };
27237 self.user_grammar.width(&width_built)?;
27239 self.push(ASTType::Width(width_built), context);
27240 Ok(())
27241 }
27242
27243 #[parol_runtime::function_name::named]
27248 fn width_list_0(
27249 &mut self,
27250 _comma: &ParseTreeType<'t>,
27251 _expression: &ParseTreeType<'t>,
27252 _width_list: &ParseTreeType<'t>,
27253 ) -> Result<()> {
27254 let context = function_name!();
27255 trace!("{}", self.trace_item_stack(context));
27256 let mut width_list = pop_item!(self, width_list, WidthList, context);
27257 let expression = pop_item!(self, expression, Expression, context);
27258 let comma = pop_item!(self, comma, Comma, context);
27259 let width_list_0_built = WidthList {
27260 expression: Box::new(expression),
27261 comma: Box::new(comma),
27262 };
27263 width_list.push(width_list_0_built);
27265 self.push(ASTType::WidthList(width_list), context);
27266 Ok(())
27267 }
27268
27269 #[parol_runtime::function_name::named]
27274 fn width_list_1(&mut self) -> Result<()> {
27275 let context = function_name!();
27276 trace!("{}", self.trace_item_stack(context));
27277 let width_list_1_built = Vec::new();
27278 self.push(ASTType::WidthList(width_list_1_built), context);
27279 Ok(())
27280 }
27281
27282 #[parol_runtime::function_name::named]
27287 fn array(
27288 &mut self,
27289 _l_bracket: &ParseTreeType<'t>,
27290 _expression: &ParseTreeType<'t>,
27291 _array_list: &ParseTreeType<'t>,
27292 _r_bracket: &ParseTreeType<'t>,
27293 ) -> Result<()> {
27294 let context = function_name!();
27295 trace!("{}", self.trace_item_stack(context));
27296 let r_bracket = pop_item!(self, r_bracket, RBracket, context);
27297 let array_list = pop_and_reverse_item!(self, array_list, ArrayList, context);
27298 let expression = pop_item!(self, expression, Expression, context);
27299 let l_bracket = pop_item!(self, l_bracket, LBracket, context);
27300 let array_built = Array {
27301 l_bracket: Box::new(l_bracket),
27302 expression: Box::new(expression),
27303 array_list,
27304 r_bracket: Box::new(r_bracket),
27305 };
27306 self.user_grammar.array(&array_built)?;
27308 self.push(ASTType::Array(array_built), context);
27309 Ok(())
27310 }
27311
27312 #[parol_runtime::function_name::named]
27317 fn array_list_0(
27318 &mut self,
27319 _comma: &ParseTreeType<'t>,
27320 _expression: &ParseTreeType<'t>,
27321 _array_list: &ParseTreeType<'t>,
27322 ) -> Result<()> {
27323 let context = function_name!();
27324 trace!("{}", self.trace_item_stack(context));
27325 let mut array_list = pop_item!(self, array_list, ArrayList, context);
27326 let expression = pop_item!(self, expression, Expression, context);
27327 let comma = pop_item!(self, comma, Comma, context);
27328 let array_list_0_built = ArrayList {
27329 expression: Box::new(expression),
27330 comma: Box::new(comma),
27331 };
27332 array_list.push(array_list_0_built);
27334 self.push(ASTType::ArrayList(array_list), context);
27335 Ok(())
27336 }
27337
27338 #[parol_runtime::function_name::named]
27343 fn array_list_1(&mut self) -> Result<()> {
27344 let context = function_name!();
27345 trace!("{}", self.trace_item_stack(context));
27346 let array_list_1_built = Vec::new();
27347 self.push(ASTType::ArrayList(array_list_1_built), context);
27348 Ok(())
27349 }
27350
27351 #[parol_runtime::function_name::named]
27356 fn range(
27357 &mut self,
27358 _expression: &ParseTreeType<'t>,
27359 _range_opt: &ParseTreeType<'t>,
27360 ) -> Result<()> {
27361 let context = function_name!();
27362 trace!("{}", self.trace_item_stack(context));
27363 let range_opt = pop_item!(self, range_opt, RangeOpt, context);
27364 let expression = pop_item!(self, expression, Expression, context);
27365 let range_built = Range {
27366 expression: Box::new(expression),
27367 range_opt,
27368 };
27369 self.user_grammar.range(&range_built)?;
27371 self.push(ASTType::Range(range_built), context);
27372 Ok(())
27373 }
27374
27375 #[parol_runtime::function_name::named]
27380 fn range_opt_0(
27381 &mut self,
27382 _range_operator: &ParseTreeType<'t>,
27383 _expression: &ParseTreeType<'t>,
27384 ) -> Result<()> {
27385 let context = function_name!();
27386 trace!("{}", self.trace_item_stack(context));
27387 let expression = pop_item!(self, expression, Expression, context);
27388 let range_operator = pop_item!(self, range_operator, RangeOperator, context);
27389 let range_opt_0_built = RangeOpt {
27390 range_operator: Box::new(range_operator),
27391 expression: Box::new(expression),
27392 };
27393 self.push(ASTType::RangeOpt(Some(range_opt_0_built)), context);
27394 Ok(())
27395 }
27396
27397 #[parol_runtime::function_name::named]
27402 fn range_opt_1(&mut self) -> Result<()> {
27403 let context = function_name!();
27404 trace!("{}", self.trace_item_stack(context));
27405 self.push(ASTType::RangeOpt(None), context);
27406 Ok(())
27407 }
27408
27409 #[parol_runtime::function_name::named]
27414 fn range_operator_0(&mut self, _dot_dot: &ParseTreeType<'t>) -> Result<()> {
27415 let context = function_name!();
27416 trace!("{}", self.trace_item_stack(context));
27417 let dot_dot = pop_item!(self, dot_dot, DotDot, context);
27418 let range_operator_0_built = RangeOperatorDotDot {
27419 dot_dot: Box::new(dot_dot),
27420 };
27421 let range_operator_0_built = RangeOperator::DotDot(range_operator_0_built);
27422 self.user_grammar.range_operator(&range_operator_0_built)?;
27424 self.push(ASTType::RangeOperator(range_operator_0_built), context);
27425 Ok(())
27426 }
27427
27428 #[parol_runtime::function_name::named]
27433 fn range_operator_1(&mut self, _dot_dot_equ: &ParseTreeType<'t>) -> Result<()> {
27434 let context = function_name!();
27435 trace!("{}", self.trace_item_stack(context));
27436 let dot_dot_equ = pop_item!(self, dot_dot_equ, DotDotEqu, context);
27437 let range_operator_1_built = RangeOperatorDotDotEqu {
27438 dot_dot_equ: Box::new(dot_dot_equ),
27439 };
27440 let range_operator_1_built = RangeOperator::DotDotEqu(range_operator_1_built);
27441 self.user_grammar.range_operator(&range_operator_1_built)?;
27443 self.push(ASTType::RangeOperator(range_operator_1_built), context);
27444 Ok(())
27445 }
27446
27447 #[parol_runtime::function_name::named]
27452 fn fixed_type_0(&mut self, _p8: &ParseTreeType<'t>) -> Result<()> {
27453 let context = function_name!();
27454 trace!("{}", self.trace_item_stack(context));
27455 let p8 = pop_item!(self, p8, P8, context);
27456 let fixed_type_0_built = FixedTypeP8 { p8: Box::new(p8) };
27457 let fixed_type_0_built = FixedType::P8(fixed_type_0_built);
27458 self.user_grammar.fixed_type(&fixed_type_0_built)?;
27460 self.push(ASTType::FixedType(fixed_type_0_built), context);
27461 Ok(())
27462 }
27463
27464 #[parol_runtime::function_name::named]
27469 fn fixed_type_1(&mut self, _p16: &ParseTreeType<'t>) -> Result<()> {
27470 let context = function_name!();
27471 trace!("{}", self.trace_item_stack(context));
27472 let p16 = pop_item!(self, p16, P16, context);
27473 let fixed_type_1_built = FixedTypeP16 { p16: Box::new(p16) };
27474 let fixed_type_1_built = FixedType::P16(fixed_type_1_built);
27475 self.user_grammar.fixed_type(&fixed_type_1_built)?;
27477 self.push(ASTType::FixedType(fixed_type_1_built), context);
27478 Ok(())
27479 }
27480
27481 #[parol_runtime::function_name::named]
27486 fn fixed_type_2(&mut self, _p32: &ParseTreeType<'t>) -> Result<()> {
27487 let context = function_name!();
27488 trace!("{}", self.trace_item_stack(context));
27489 let p32 = pop_item!(self, p32, P32, context);
27490 let fixed_type_2_built = FixedTypeP32 { p32: Box::new(p32) };
27491 let fixed_type_2_built = FixedType::P32(fixed_type_2_built);
27492 self.user_grammar.fixed_type(&fixed_type_2_built)?;
27494 self.push(ASTType::FixedType(fixed_type_2_built), context);
27495 Ok(())
27496 }
27497
27498 #[parol_runtime::function_name::named]
27503 fn fixed_type_3(&mut self, _p64: &ParseTreeType<'t>) -> Result<()> {
27504 let context = function_name!();
27505 trace!("{}", self.trace_item_stack(context));
27506 let p64 = pop_item!(self, p64, P64, context);
27507 let fixed_type_3_built = FixedTypeP64 { p64: Box::new(p64) };
27508 let fixed_type_3_built = FixedType::P64(fixed_type_3_built);
27509 self.user_grammar.fixed_type(&fixed_type_3_built)?;
27511 self.push(ASTType::FixedType(fixed_type_3_built), context);
27512 Ok(())
27513 }
27514
27515 #[parol_runtime::function_name::named]
27520 fn fixed_type_4(&mut self, _u8: &ParseTreeType<'t>) -> Result<()> {
27521 let context = function_name!();
27522 trace!("{}", self.trace_item_stack(context));
27523 let u8 = pop_item!(self, u8, U8, context);
27524 let fixed_type_4_built = FixedTypeU8 { u8: Box::new(u8) };
27525 let fixed_type_4_built = FixedType::U8(fixed_type_4_built);
27526 self.user_grammar.fixed_type(&fixed_type_4_built)?;
27528 self.push(ASTType::FixedType(fixed_type_4_built), context);
27529 Ok(())
27530 }
27531
27532 #[parol_runtime::function_name::named]
27537 fn fixed_type_5(&mut self, _u16: &ParseTreeType<'t>) -> Result<()> {
27538 let context = function_name!();
27539 trace!("{}", self.trace_item_stack(context));
27540 let u16 = pop_item!(self, u16, U16, context);
27541 let fixed_type_5_built = FixedTypeU16 { u16: Box::new(u16) };
27542 let fixed_type_5_built = FixedType::U16(fixed_type_5_built);
27543 self.user_grammar.fixed_type(&fixed_type_5_built)?;
27545 self.push(ASTType::FixedType(fixed_type_5_built), context);
27546 Ok(())
27547 }
27548
27549 #[parol_runtime::function_name::named]
27554 fn fixed_type_6(&mut self, _u32: &ParseTreeType<'t>) -> Result<()> {
27555 let context = function_name!();
27556 trace!("{}", self.trace_item_stack(context));
27557 let u32 = pop_item!(self, u32, U32, context);
27558 let fixed_type_6_built = FixedTypeU32 { u32: Box::new(u32) };
27559 let fixed_type_6_built = FixedType::U32(fixed_type_6_built);
27560 self.user_grammar.fixed_type(&fixed_type_6_built)?;
27562 self.push(ASTType::FixedType(fixed_type_6_built), context);
27563 Ok(())
27564 }
27565
27566 #[parol_runtime::function_name::named]
27571 fn fixed_type_7(&mut self, _u64: &ParseTreeType<'t>) -> Result<()> {
27572 let context = function_name!();
27573 trace!("{}", self.trace_item_stack(context));
27574 let u64 = pop_item!(self, u64, U64, context);
27575 let fixed_type_7_built = FixedTypeU64 { u64: Box::new(u64) };
27576 let fixed_type_7_built = FixedType::U64(fixed_type_7_built);
27577 self.user_grammar.fixed_type(&fixed_type_7_built)?;
27579 self.push(ASTType::FixedType(fixed_type_7_built), context);
27580 Ok(())
27581 }
27582
27583 #[parol_runtime::function_name::named]
27588 fn fixed_type_8(&mut self, _i8: &ParseTreeType<'t>) -> Result<()> {
27589 let context = function_name!();
27590 trace!("{}", self.trace_item_stack(context));
27591 let i8 = pop_item!(self, i8, I8, context);
27592 let fixed_type_8_built = FixedTypeI8 { i8: Box::new(i8) };
27593 let fixed_type_8_built = FixedType::I8(fixed_type_8_built);
27594 self.user_grammar.fixed_type(&fixed_type_8_built)?;
27596 self.push(ASTType::FixedType(fixed_type_8_built), context);
27597 Ok(())
27598 }
27599
27600 #[parol_runtime::function_name::named]
27605 fn fixed_type_9(&mut self, _i16: &ParseTreeType<'t>) -> Result<()> {
27606 let context = function_name!();
27607 trace!("{}", self.trace_item_stack(context));
27608 let i16 = pop_item!(self, i16, I16, context);
27609 let fixed_type_9_built = FixedTypeI16 { i16: Box::new(i16) };
27610 let fixed_type_9_built = FixedType::I16(fixed_type_9_built);
27611 self.user_grammar.fixed_type(&fixed_type_9_built)?;
27613 self.push(ASTType::FixedType(fixed_type_9_built), context);
27614 Ok(())
27615 }
27616
27617 #[parol_runtime::function_name::named]
27622 fn fixed_type_10(&mut self, _i32: &ParseTreeType<'t>) -> Result<()> {
27623 let context = function_name!();
27624 trace!("{}", self.trace_item_stack(context));
27625 let i32 = pop_item!(self, i32, I32, context);
27626 let fixed_type_10_built = FixedTypeI32 { i32: Box::new(i32) };
27627 let fixed_type_10_built = FixedType::I32(fixed_type_10_built);
27628 self.user_grammar.fixed_type(&fixed_type_10_built)?;
27630 self.push(ASTType::FixedType(fixed_type_10_built), context);
27631 Ok(())
27632 }
27633
27634 #[parol_runtime::function_name::named]
27639 fn fixed_type_11(&mut self, _i64: &ParseTreeType<'t>) -> Result<()> {
27640 let context = function_name!();
27641 trace!("{}", self.trace_item_stack(context));
27642 let i64 = pop_item!(self, i64, I64, context);
27643 let fixed_type_11_built = FixedTypeI64 { i64: Box::new(i64) };
27644 let fixed_type_11_built = FixedType::I64(fixed_type_11_built);
27645 self.user_grammar.fixed_type(&fixed_type_11_built)?;
27647 self.push(ASTType::FixedType(fixed_type_11_built), context);
27648 Ok(())
27649 }
27650
27651 #[parol_runtime::function_name::named]
27656 fn fixed_type_12(&mut self, _f32: &ParseTreeType<'t>) -> Result<()> {
27657 let context = function_name!();
27658 trace!("{}", self.trace_item_stack(context));
27659 let f32 = pop_item!(self, f32, F32, context);
27660 let fixed_type_12_built = FixedTypeF32 { f32: Box::new(f32) };
27661 let fixed_type_12_built = FixedType::F32(fixed_type_12_built);
27662 self.user_grammar.fixed_type(&fixed_type_12_built)?;
27664 self.push(ASTType::FixedType(fixed_type_12_built), context);
27665 Ok(())
27666 }
27667
27668 #[parol_runtime::function_name::named]
27673 fn fixed_type_13(&mut self, _f64: &ParseTreeType<'t>) -> Result<()> {
27674 let context = function_name!();
27675 trace!("{}", self.trace_item_stack(context));
27676 let f64 = pop_item!(self, f64, F64, context);
27677 let fixed_type_13_built = FixedTypeF64 { f64: Box::new(f64) };
27678 let fixed_type_13_built = FixedType::F64(fixed_type_13_built);
27679 self.user_grammar.fixed_type(&fixed_type_13_built)?;
27681 self.push(ASTType::FixedType(fixed_type_13_built), context);
27682 Ok(())
27683 }
27684
27685 #[parol_runtime::function_name::named]
27690 fn fixed_type_14(&mut self, _b_bool: &ParseTreeType<'t>) -> Result<()> {
27691 let context = function_name!();
27692 trace!("{}", self.trace_item_stack(context));
27693 let b_bool = pop_item!(self, b_bool, BBool, context);
27694 let fixed_type_14_built = FixedTypeBBool {
27695 b_bool: Box::new(b_bool),
27696 };
27697 let fixed_type_14_built = FixedType::BBool(fixed_type_14_built);
27698 self.user_grammar.fixed_type(&fixed_type_14_built)?;
27700 self.push(ASTType::FixedType(fixed_type_14_built), context);
27701 Ok(())
27702 }
27703
27704 #[parol_runtime::function_name::named]
27709 fn fixed_type_15(&mut self, _l_bool: &ParseTreeType<'t>) -> Result<()> {
27710 let context = function_name!();
27711 trace!("{}", self.trace_item_stack(context));
27712 let l_bool = pop_item!(self, l_bool, LBool, context);
27713 let fixed_type_15_built = FixedTypeLBool {
27714 l_bool: Box::new(l_bool),
27715 };
27716 let fixed_type_15_built = FixedType::LBool(fixed_type_15_built);
27717 self.user_grammar.fixed_type(&fixed_type_15_built)?;
27719 self.push(ASTType::FixedType(fixed_type_15_built), context);
27720 Ok(())
27721 }
27722
27723 #[parol_runtime::function_name::named]
27728 fn fixed_type_16(&mut self, _strin: &ParseTreeType<'t>) -> Result<()> {
27729 let context = function_name!();
27730 trace!("{}", self.trace_item_stack(context));
27731 let strin = pop_item!(self, strin, Strin, context);
27732 let fixed_type_16_built = FixedTypeStrin {
27733 strin: Box::new(strin),
27734 };
27735 let fixed_type_16_built = FixedType::Strin(fixed_type_16_built);
27736 self.user_grammar.fixed_type(&fixed_type_16_built)?;
27738 self.push(ASTType::FixedType(fixed_type_16_built), context);
27739 Ok(())
27740 }
27741
27742 #[parol_runtime::function_name::named]
27747 fn variable_type_0(&mut self, _clock: &ParseTreeType<'t>) -> Result<()> {
27748 let context = function_name!();
27749 trace!("{}", self.trace_item_stack(context));
27750 let clock = pop_item!(self, clock, Clock, context);
27751 let variable_type_0_built = VariableTypeClock {
27752 clock: Box::new(clock),
27753 };
27754 let variable_type_0_built = VariableType::Clock(variable_type_0_built);
27755 self.user_grammar.variable_type(&variable_type_0_built)?;
27757 self.push(ASTType::VariableType(variable_type_0_built), context);
27758 Ok(())
27759 }
27760
27761 #[parol_runtime::function_name::named]
27766 fn variable_type_1(&mut self, _clock_posedge: &ParseTreeType<'t>) -> Result<()> {
27767 let context = function_name!();
27768 trace!("{}", self.trace_item_stack(context));
27769 let clock_posedge = pop_item!(self, clock_posedge, ClockPosedge, context);
27770 let variable_type_1_built = VariableTypeClockPosedge {
27771 clock_posedge: Box::new(clock_posedge),
27772 };
27773 let variable_type_1_built = VariableType::ClockPosedge(variable_type_1_built);
27774 self.user_grammar.variable_type(&variable_type_1_built)?;
27776 self.push(ASTType::VariableType(variable_type_1_built), context);
27777 Ok(())
27778 }
27779
27780 #[parol_runtime::function_name::named]
27785 fn variable_type_2(&mut self, _clock_negedge: &ParseTreeType<'t>) -> Result<()> {
27786 let context = function_name!();
27787 trace!("{}", self.trace_item_stack(context));
27788 let clock_negedge = pop_item!(self, clock_negedge, ClockNegedge, context);
27789 let variable_type_2_built = VariableTypeClockNegedge {
27790 clock_negedge: Box::new(clock_negedge),
27791 };
27792 let variable_type_2_built = VariableType::ClockNegedge(variable_type_2_built);
27793 self.user_grammar.variable_type(&variable_type_2_built)?;
27795 self.push(ASTType::VariableType(variable_type_2_built), context);
27796 Ok(())
27797 }
27798
27799 #[parol_runtime::function_name::named]
27804 fn variable_type_3(&mut self, _reset: &ParseTreeType<'t>) -> Result<()> {
27805 let context = function_name!();
27806 trace!("{}", self.trace_item_stack(context));
27807 let reset = pop_item!(self, reset, Reset, context);
27808 let variable_type_3_built = VariableTypeReset {
27809 reset: Box::new(reset),
27810 };
27811 let variable_type_3_built = VariableType::Reset(variable_type_3_built);
27812 self.user_grammar.variable_type(&variable_type_3_built)?;
27814 self.push(ASTType::VariableType(variable_type_3_built), context);
27815 Ok(())
27816 }
27817
27818 #[parol_runtime::function_name::named]
27823 fn variable_type_4(&mut self, _reset_async_high: &ParseTreeType<'t>) -> Result<()> {
27824 let context = function_name!();
27825 trace!("{}", self.trace_item_stack(context));
27826 let reset_async_high = pop_item!(self, reset_async_high, ResetAsyncHigh, context);
27827 let variable_type_4_built = VariableTypeResetAsyncHigh {
27828 reset_async_high: Box::new(reset_async_high),
27829 };
27830 let variable_type_4_built = VariableType::ResetAsyncHigh(variable_type_4_built);
27831 self.user_grammar.variable_type(&variable_type_4_built)?;
27833 self.push(ASTType::VariableType(variable_type_4_built), context);
27834 Ok(())
27835 }
27836
27837 #[parol_runtime::function_name::named]
27842 fn variable_type_5(&mut self, _reset_async_low: &ParseTreeType<'t>) -> Result<()> {
27843 let context = function_name!();
27844 trace!("{}", self.trace_item_stack(context));
27845 let reset_async_low = pop_item!(self, reset_async_low, ResetAsyncLow, context);
27846 let variable_type_5_built = VariableTypeResetAsyncLow {
27847 reset_async_low: Box::new(reset_async_low),
27848 };
27849 let variable_type_5_built = VariableType::ResetAsyncLow(variable_type_5_built);
27850 self.user_grammar.variable_type(&variable_type_5_built)?;
27852 self.push(ASTType::VariableType(variable_type_5_built), context);
27853 Ok(())
27854 }
27855
27856 #[parol_runtime::function_name::named]
27861 fn variable_type_6(&mut self, _reset_sync_high: &ParseTreeType<'t>) -> Result<()> {
27862 let context = function_name!();
27863 trace!("{}", self.trace_item_stack(context));
27864 let reset_sync_high = pop_item!(self, reset_sync_high, ResetSyncHigh, context);
27865 let variable_type_6_built = VariableTypeResetSyncHigh {
27866 reset_sync_high: Box::new(reset_sync_high),
27867 };
27868 let variable_type_6_built = VariableType::ResetSyncHigh(variable_type_6_built);
27869 self.user_grammar.variable_type(&variable_type_6_built)?;
27871 self.push(ASTType::VariableType(variable_type_6_built), context);
27872 Ok(())
27873 }
27874
27875 #[parol_runtime::function_name::named]
27880 fn variable_type_7(&mut self, _reset_sync_low: &ParseTreeType<'t>) -> Result<()> {
27881 let context = function_name!();
27882 trace!("{}", self.trace_item_stack(context));
27883 let reset_sync_low = pop_item!(self, reset_sync_low, ResetSyncLow, context);
27884 let variable_type_7_built = VariableTypeResetSyncLow {
27885 reset_sync_low: Box::new(reset_sync_low),
27886 };
27887 let variable_type_7_built = VariableType::ResetSyncLow(variable_type_7_built);
27888 self.user_grammar.variable_type(&variable_type_7_built)?;
27890 self.push(ASTType::VariableType(variable_type_7_built), context);
27891 Ok(())
27892 }
27893
27894 #[parol_runtime::function_name::named]
27899 fn variable_type_8(&mut self, _logic: &ParseTreeType<'t>) -> Result<()> {
27900 let context = function_name!();
27901 trace!("{}", self.trace_item_stack(context));
27902 let logic = pop_item!(self, logic, Logic, context);
27903 let variable_type_8_built = VariableTypeLogic {
27904 logic: Box::new(logic),
27905 };
27906 let variable_type_8_built = VariableType::Logic(variable_type_8_built);
27907 self.user_grammar.variable_type(&variable_type_8_built)?;
27909 self.push(ASTType::VariableType(variable_type_8_built), context);
27910 Ok(())
27911 }
27912
27913 #[parol_runtime::function_name::named]
27918 fn variable_type_9(&mut self, _bit: &ParseTreeType<'t>) -> Result<()> {
27919 let context = function_name!();
27920 trace!("{}", self.trace_item_stack(context));
27921 let bit = pop_item!(self, bit, Bit, context);
27922 let variable_type_9_built = VariableTypeBit { bit: Box::new(bit) };
27923 let variable_type_9_built = VariableType::Bit(variable_type_9_built);
27924 self.user_grammar.variable_type(&variable_type_9_built)?;
27926 self.push(ASTType::VariableType(variable_type_9_built), context);
27927 Ok(())
27928 }
27929
27930 #[parol_runtime::function_name::named]
27935 fn user_defined_type(&mut self, _scoped_identifier: &ParseTreeType<'t>) -> Result<()> {
27936 let context = function_name!();
27937 trace!("{}", self.trace_item_stack(context));
27938 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
27939 let user_defined_type_built = UserDefinedType {
27940 scoped_identifier: Box::new(scoped_identifier),
27941 };
27942 self.user_grammar
27944 .user_defined_type(&user_defined_type_built)?;
27945 self.push(ASTType::UserDefinedType(user_defined_type_built), context);
27946 Ok(())
27947 }
27948
27949 #[parol_runtime::function_name::named]
27954 fn type_modifier_0(&mut self, _tri: &ParseTreeType<'t>) -> Result<()> {
27955 let context = function_name!();
27956 trace!("{}", self.trace_item_stack(context));
27957 let tri = pop_item!(self, tri, Tri, context);
27958 let type_modifier_0_built = TypeModifierTri { tri: Box::new(tri) };
27959 let type_modifier_0_built = TypeModifier::Tri(type_modifier_0_built);
27960 self.user_grammar.type_modifier(&type_modifier_0_built)?;
27962 self.push(ASTType::TypeModifier(type_modifier_0_built), context);
27963 Ok(())
27964 }
27965
27966 #[parol_runtime::function_name::named]
27971 fn type_modifier_1(&mut self, _signed: &ParseTreeType<'t>) -> Result<()> {
27972 let context = function_name!();
27973 trace!("{}", self.trace_item_stack(context));
27974 let signed = pop_item!(self, signed, Signed, context);
27975 let type_modifier_1_built = TypeModifierSigned {
27976 signed: Box::new(signed),
27977 };
27978 let type_modifier_1_built = TypeModifier::Signed(type_modifier_1_built);
27979 self.user_grammar.type_modifier(&type_modifier_1_built)?;
27981 self.push(ASTType::TypeModifier(type_modifier_1_built), context);
27982 Ok(())
27983 }
27984
27985 #[parol_runtime::function_name::named]
27990 fn type_modifier_2(&mut self, _defaul: &ParseTreeType<'t>) -> Result<()> {
27991 let context = function_name!();
27992 trace!("{}", self.trace_item_stack(context));
27993 let defaul = pop_item!(self, defaul, Defaul, context);
27994 let type_modifier_2_built = TypeModifierDefaul {
27995 defaul: Box::new(defaul),
27996 };
27997 let type_modifier_2_built = TypeModifier::Defaul(type_modifier_2_built);
27998 self.user_grammar.type_modifier(&type_modifier_2_built)?;
28000 self.push(ASTType::TypeModifier(type_modifier_2_built), context);
28001 Ok(())
28002 }
28003
28004 #[parol_runtime::function_name::named]
28009 fn factor_type(&mut self, _factor_type_group: &ParseTreeType<'t>) -> Result<()> {
28010 let context = function_name!();
28011 trace!("{}", self.trace_item_stack(context));
28012 let factor_type_group = pop_item!(self, factor_type_group, FactorTypeGroup, context);
28013 let factor_type_built = FactorType {
28014 factor_type_group: Box::new(factor_type_group),
28015 };
28016 self.user_grammar.factor_type(&factor_type_built)?;
28018 self.push(ASTType::FactorType(factor_type_built), context);
28019 Ok(())
28020 }
28021
28022 #[parol_runtime::function_name::named]
28027 fn factor_type_group_0(
28028 &mut self,
28029 _variable_type: &ParseTreeType<'t>,
28030 _factor_type_opt: &ParseTreeType<'t>,
28031 ) -> Result<()> {
28032 let context = function_name!();
28033 trace!("{}", self.trace_item_stack(context));
28034 let factor_type_opt = pop_item!(self, factor_type_opt, FactorTypeOpt, context);
28035 let variable_type = pop_item!(self, variable_type, VariableType, context);
28036 let factor_type_group_0_built = FactorTypeGroupVariableTypeFactorTypeOpt {
28037 variable_type: Box::new(variable_type),
28038 factor_type_opt,
28039 };
28040 let factor_type_group_0_built =
28041 FactorTypeGroup::VariableTypeFactorTypeOpt(factor_type_group_0_built);
28042 self.push(ASTType::FactorTypeGroup(factor_type_group_0_built), context);
28043 Ok(())
28044 }
28045
28046 #[parol_runtime::function_name::named]
28051 fn factor_type_group_1(&mut self, _fixed_type: &ParseTreeType<'t>) -> Result<()> {
28052 let context = function_name!();
28053 trace!("{}", self.trace_item_stack(context));
28054 let fixed_type = pop_item!(self, fixed_type, FixedType, context);
28055 let factor_type_group_1_built = FactorTypeGroupFixedType {
28056 fixed_type: Box::new(fixed_type),
28057 };
28058 let factor_type_group_1_built = FactorTypeGroup::FixedType(factor_type_group_1_built);
28059 self.push(ASTType::FactorTypeGroup(factor_type_group_1_built), context);
28060 Ok(())
28061 }
28062
28063 #[parol_runtime::function_name::named]
28068 fn factor_type_opt_0(&mut self, _width: &ParseTreeType<'t>) -> Result<()> {
28069 let context = function_name!();
28070 trace!("{}", self.trace_item_stack(context));
28071 let width = pop_item!(self, width, Width, context);
28072 let factor_type_opt_0_built = FactorTypeOpt {
28073 width: Box::new(width),
28074 };
28075 self.push(
28076 ASTType::FactorTypeOpt(Some(factor_type_opt_0_built)),
28077 context,
28078 );
28079 Ok(())
28080 }
28081
28082 #[parol_runtime::function_name::named]
28087 fn factor_type_opt_1(&mut self) -> Result<()> {
28088 let context = function_name!();
28089 trace!("{}", self.trace_item_stack(context));
28090 self.push(ASTType::FactorTypeOpt(None), context);
28091 Ok(())
28092 }
28093
28094 #[parol_runtime::function_name::named]
28099 fn scalar_type(
28100 &mut self,
28101 _scalar_type_list: &ParseTreeType<'t>,
28102 _scalar_type_group: &ParseTreeType<'t>,
28103 ) -> Result<()> {
28104 let context = function_name!();
28105 trace!("{}", self.trace_item_stack(context));
28106 let scalar_type_group = pop_item!(self, scalar_type_group, ScalarTypeGroup, context);
28107 let scalar_type_list =
28108 pop_and_reverse_item!(self, scalar_type_list, ScalarTypeList, context);
28109 let scalar_type_built = ScalarType {
28110 scalar_type_list,
28111 scalar_type_group: Box::new(scalar_type_group),
28112 };
28113 self.user_grammar.scalar_type(&scalar_type_built)?;
28115 self.push(ASTType::ScalarType(scalar_type_built), context);
28116 Ok(())
28117 }
28118
28119 #[parol_runtime::function_name::named]
28124 fn scalar_type_group_0(
28125 &mut self,
28126 _user_defined_type: &ParseTreeType<'t>,
28127 _scalar_type_opt: &ParseTreeType<'t>,
28128 ) -> Result<()> {
28129 let context = function_name!();
28130 trace!("{}", self.trace_item_stack(context));
28131 let scalar_type_opt = pop_item!(self, scalar_type_opt, ScalarTypeOpt, context);
28132 let user_defined_type = pop_item!(self, user_defined_type, UserDefinedType, context);
28133 let scalar_type_group_0_built = ScalarTypeGroupUserDefinedTypeScalarTypeOpt {
28134 user_defined_type: Box::new(user_defined_type),
28135 scalar_type_opt,
28136 };
28137 let scalar_type_group_0_built =
28138 ScalarTypeGroup::UserDefinedTypeScalarTypeOpt(scalar_type_group_0_built);
28139 self.push(ASTType::ScalarTypeGroup(scalar_type_group_0_built), context);
28140 Ok(())
28141 }
28142
28143 #[parol_runtime::function_name::named]
28148 fn scalar_type_group_1(&mut self, _factor_type: &ParseTreeType<'t>) -> Result<()> {
28149 let context = function_name!();
28150 trace!("{}", self.trace_item_stack(context));
28151 let factor_type = pop_item!(self, factor_type, FactorType, context);
28152 let scalar_type_group_1_built = ScalarTypeGroupFactorType {
28153 factor_type: Box::new(factor_type),
28154 };
28155 let scalar_type_group_1_built = ScalarTypeGroup::FactorType(scalar_type_group_1_built);
28156 self.push(ASTType::ScalarTypeGroup(scalar_type_group_1_built), context);
28157 Ok(())
28158 }
28159
28160 #[parol_runtime::function_name::named]
28165 fn scalar_type_list_0(
28166 &mut self,
28167 _type_modifier: &ParseTreeType<'t>,
28168 _scalar_type_list: &ParseTreeType<'t>,
28169 ) -> Result<()> {
28170 let context = function_name!();
28171 trace!("{}", self.trace_item_stack(context));
28172 let mut scalar_type_list = pop_item!(self, scalar_type_list, ScalarTypeList, context);
28173 let type_modifier = pop_item!(self, type_modifier, TypeModifier, context);
28174 let scalar_type_list_0_built = ScalarTypeList {
28175 type_modifier: Box::new(type_modifier),
28176 };
28177 scalar_type_list.push(scalar_type_list_0_built);
28179 self.push(ASTType::ScalarTypeList(scalar_type_list), context);
28180 Ok(())
28181 }
28182
28183 #[parol_runtime::function_name::named]
28188 fn scalar_type_list_1(&mut self) -> Result<()> {
28189 let context = function_name!();
28190 trace!("{}", self.trace_item_stack(context));
28191 let scalar_type_list_1_built = Vec::new();
28192 self.push(ASTType::ScalarTypeList(scalar_type_list_1_built), context);
28193 Ok(())
28194 }
28195
28196 #[parol_runtime::function_name::named]
28201 fn scalar_type_opt_0(&mut self, _width: &ParseTreeType<'t>) -> Result<()> {
28202 let context = function_name!();
28203 trace!("{}", self.trace_item_stack(context));
28204 let width = pop_item!(self, width, Width, context);
28205 let scalar_type_opt_0_built = ScalarTypeOpt {
28206 width: Box::new(width),
28207 };
28208 self.push(
28209 ASTType::ScalarTypeOpt(Some(scalar_type_opt_0_built)),
28210 context,
28211 );
28212 Ok(())
28213 }
28214
28215 #[parol_runtime::function_name::named]
28220 fn scalar_type_opt_1(&mut self) -> Result<()> {
28221 let context = function_name!();
28222 trace!("{}", self.trace_item_stack(context));
28223 self.push(ASTType::ScalarTypeOpt(None), context);
28224 Ok(())
28225 }
28226
28227 #[parol_runtime::function_name::named]
28232 fn array_type(
28233 &mut self,
28234 _scalar_type: &ParseTreeType<'t>,
28235 _array_type_opt: &ParseTreeType<'t>,
28236 ) -> Result<()> {
28237 let context = function_name!();
28238 trace!("{}", self.trace_item_stack(context));
28239 let array_type_opt = pop_item!(self, array_type_opt, ArrayTypeOpt, context);
28240 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
28241 let array_type_built = ArrayType {
28242 scalar_type: Box::new(scalar_type),
28243 array_type_opt,
28244 };
28245 self.user_grammar.array_type(&array_type_built)?;
28247 self.push(ASTType::ArrayType(array_type_built), context);
28248 Ok(())
28249 }
28250
28251 #[parol_runtime::function_name::named]
28256 fn array_type_opt_0(&mut self, _array: &ParseTreeType<'t>) -> Result<()> {
28257 let context = function_name!();
28258 trace!("{}", self.trace_item_stack(context));
28259 let array = pop_item!(self, array, Array, context);
28260 let array_type_opt_0_built = ArrayTypeOpt {
28261 array: Box::new(array),
28262 };
28263 self.push(ASTType::ArrayTypeOpt(Some(array_type_opt_0_built)), context);
28264 Ok(())
28265 }
28266
28267 #[parol_runtime::function_name::named]
28272 fn array_type_opt_1(&mut self) -> Result<()> {
28273 let context = function_name!();
28274 trace!("{}", self.trace_item_stack(context));
28275 self.push(ASTType::ArrayTypeOpt(None), context);
28276 Ok(())
28277 }
28278
28279 #[parol_runtime::function_name::named]
28284 fn casting_type_0(&mut self, _u8: &ParseTreeType<'t>) -> Result<()> {
28285 let context = function_name!();
28286 trace!("{}", self.trace_item_stack(context));
28287 let u8 = pop_item!(self, u8, U8, context);
28288 let casting_type_0_built = CastingTypeU8 { u8: Box::new(u8) };
28289 let casting_type_0_built = CastingType::U8(casting_type_0_built);
28290 self.user_grammar.casting_type(&casting_type_0_built)?;
28292 self.push(ASTType::CastingType(casting_type_0_built), context);
28293 Ok(())
28294 }
28295
28296 #[parol_runtime::function_name::named]
28301 fn casting_type_1(&mut self, _u16: &ParseTreeType<'t>) -> Result<()> {
28302 let context = function_name!();
28303 trace!("{}", self.trace_item_stack(context));
28304 let u16 = pop_item!(self, u16, U16, context);
28305 let casting_type_1_built = CastingTypeU16 { u16: Box::new(u16) };
28306 let casting_type_1_built = CastingType::U16(casting_type_1_built);
28307 self.user_grammar.casting_type(&casting_type_1_built)?;
28309 self.push(ASTType::CastingType(casting_type_1_built), context);
28310 Ok(())
28311 }
28312
28313 #[parol_runtime::function_name::named]
28318 fn casting_type_2(&mut self, _u32: &ParseTreeType<'t>) -> Result<()> {
28319 let context = function_name!();
28320 trace!("{}", self.trace_item_stack(context));
28321 let u32 = pop_item!(self, u32, U32, context);
28322 let casting_type_2_built = CastingTypeU32 { u32: Box::new(u32) };
28323 let casting_type_2_built = CastingType::U32(casting_type_2_built);
28324 self.user_grammar.casting_type(&casting_type_2_built)?;
28326 self.push(ASTType::CastingType(casting_type_2_built), context);
28327 Ok(())
28328 }
28329
28330 #[parol_runtime::function_name::named]
28335 fn casting_type_3(&mut self, _u64: &ParseTreeType<'t>) -> Result<()> {
28336 let context = function_name!();
28337 trace!("{}", self.trace_item_stack(context));
28338 let u64 = pop_item!(self, u64, U64, context);
28339 let casting_type_3_built = CastingTypeU64 { u64: Box::new(u64) };
28340 let casting_type_3_built = CastingType::U64(casting_type_3_built);
28341 self.user_grammar.casting_type(&casting_type_3_built)?;
28343 self.push(ASTType::CastingType(casting_type_3_built), context);
28344 Ok(())
28345 }
28346
28347 #[parol_runtime::function_name::named]
28352 fn casting_type_4(&mut self, _p8: &ParseTreeType<'t>) -> Result<()> {
28353 let context = function_name!();
28354 trace!("{}", self.trace_item_stack(context));
28355 let p8 = pop_item!(self, p8, P8, context);
28356 let casting_type_4_built = CastingTypeP8 { p8: Box::new(p8) };
28357 let casting_type_4_built = CastingType::P8(casting_type_4_built);
28358 self.user_grammar.casting_type(&casting_type_4_built)?;
28360 self.push(ASTType::CastingType(casting_type_4_built), context);
28361 Ok(())
28362 }
28363
28364 #[parol_runtime::function_name::named]
28369 fn casting_type_5(&mut self, _p16: &ParseTreeType<'t>) -> Result<()> {
28370 let context = function_name!();
28371 trace!("{}", self.trace_item_stack(context));
28372 let p16 = pop_item!(self, p16, P16, context);
28373 let casting_type_5_built = CastingTypeP16 { p16: Box::new(p16) };
28374 let casting_type_5_built = CastingType::P16(casting_type_5_built);
28375 self.user_grammar.casting_type(&casting_type_5_built)?;
28377 self.push(ASTType::CastingType(casting_type_5_built), context);
28378 Ok(())
28379 }
28380
28381 #[parol_runtime::function_name::named]
28386 fn casting_type_6(&mut self, _p32: &ParseTreeType<'t>) -> Result<()> {
28387 let context = function_name!();
28388 trace!("{}", self.trace_item_stack(context));
28389 let p32 = pop_item!(self, p32, P32, context);
28390 let casting_type_6_built = CastingTypeP32 { p32: Box::new(p32) };
28391 let casting_type_6_built = CastingType::P32(casting_type_6_built);
28392 self.user_grammar.casting_type(&casting_type_6_built)?;
28394 self.push(ASTType::CastingType(casting_type_6_built), context);
28395 Ok(())
28396 }
28397
28398 #[parol_runtime::function_name::named]
28403 fn casting_type_7(&mut self, _p64: &ParseTreeType<'t>) -> Result<()> {
28404 let context = function_name!();
28405 trace!("{}", self.trace_item_stack(context));
28406 let p64 = pop_item!(self, p64, P64, context);
28407 let casting_type_7_built = CastingTypeP64 { p64: Box::new(p64) };
28408 let casting_type_7_built = CastingType::P64(casting_type_7_built);
28409 self.user_grammar.casting_type(&casting_type_7_built)?;
28411 self.push(ASTType::CastingType(casting_type_7_built), context);
28412 Ok(())
28413 }
28414
28415 #[parol_runtime::function_name::named]
28420 fn casting_type_8(&mut self, _i8: &ParseTreeType<'t>) -> Result<()> {
28421 let context = function_name!();
28422 trace!("{}", self.trace_item_stack(context));
28423 let i8 = pop_item!(self, i8, I8, context);
28424 let casting_type_8_built = CastingTypeI8 { i8: Box::new(i8) };
28425 let casting_type_8_built = CastingType::I8(casting_type_8_built);
28426 self.user_grammar.casting_type(&casting_type_8_built)?;
28428 self.push(ASTType::CastingType(casting_type_8_built), context);
28429 Ok(())
28430 }
28431
28432 #[parol_runtime::function_name::named]
28437 fn casting_type_9(&mut self, _i16: &ParseTreeType<'t>) -> Result<()> {
28438 let context = function_name!();
28439 trace!("{}", self.trace_item_stack(context));
28440 let i16 = pop_item!(self, i16, I16, context);
28441 let casting_type_9_built = CastingTypeI16 { i16: Box::new(i16) };
28442 let casting_type_9_built = CastingType::I16(casting_type_9_built);
28443 self.user_grammar.casting_type(&casting_type_9_built)?;
28445 self.push(ASTType::CastingType(casting_type_9_built), context);
28446 Ok(())
28447 }
28448
28449 #[parol_runtime::function_name::named]
28454 fn casting_type_10(&mut self, _i32: &ParseTreeType<'t>) -> Result<()> {
28455 let context = function_name!();
28456 trace!("{}", self.trace_item_stack(context));
28457 let i32 = pop_item!(self, i32, I32, context);
28458 let casting_type_10_built = CastingTypeI32 { i32: Box::new(i32) };
28459 let casting_type_10_built = CastingType::I32(casting_type_10_built);
28460 self.user_grammar.casting_type(&casting_type_10_built)?;
28462 self.push(ASTType::CastingType(casting_type_10_built), context);
28463 Ok(())
28464 }
28465
28466 #[parol_runtime::function_name::named]
28471 fn casting_type_11(&mut self, _i64: &ParseTreeType<'t>) -> Result<()> {
28472 let context = function_name!();
28473 trace!("{}", self.trace_item_stack(context));
28474 let i64 = pop_item!(self, i64, I64, context);
28475 let casting_type_11_built = CastingTypeI64 { i64: Box::new(i64) };
28476 let casting_type_11_built = CastingType::I64(casting_type_11_built);
28477 self.user_grammar.casting_type(&casting_type_11_built)?;
28479 self.push(ASTType::CastingType(casting_type_11_built), context);
28480 Ok(())
28481 }
28482
28483 #[parol_runtime::function_name::named]
28488 fn casting_type_12(&mut self, _f32: &ParseTreeType<'t>) -> Result<()> {
28489 let context = function_name!();
28490 trace!("{}", self.trace_item_stack(context));
28491 let f32 = pop_item!(self, f32, F32, context);
28492 let casting_type_12_built = CastingTypeF32 { f32: Box::new(f32) };
28493 let casting_type_12_built = CastingType::F32(casting_type_12_built);
28494 self.user_grammar.casting_type(&casting_type_12_built)?;
28496 self.push(ASTType::CastingType(casting_type_12_built), context);
28497 Ok(())
28498 }
28499
28500 #[parol_runtime::function_name::named]
28505 fn casting_type_13(&mut self, _f64: &ParseTreeType<'t>) -> Result<()> {
28506 let context = function_name!();
28507 trace!("{}", self.trace_item_stack(context));
28508 let f64 = pop_item!(self, f64, F64, context);
28509 let casting_type_13_built = CastingTypeF64 { f64: Box::new(f64) };
28510 let casting_type_13_built = CastingType::F64(casting_type_13_built);
28511 self.user_grammar.casting_type(&casting_type_13_built)?;
28513 self.push(ASTType::CastingType(casting_type_13_built), context);
28514 Ok(())
28515 }
28516
28517 #[parol_runtime::function_name::named]
28522 fn casting_type_14(&mut self, _b_bool: &ParseTreeType<'t>) -> Result<()> {
28523 let context = function_name!();
28524 trace!("{}", self.trace_item_stack(context));
28525 let b_bool = pop_item!(self, b_bool, BBool, context);
28526 let casting_type_14_built = CastingTypeBBool {
28527 b_bool: Box::new(b_bool),
28528 };
28529 let casting_type_14_built = CastingType::BBool(casting_type_14_built);
28530 self.user_grammar.casting_type(&casting_type_14_built)?;
28532 self.push(ASTType::CastingType(casting_type_14_built), context);
28533 Ok(())
28534 }
28535
28536 #[parol_runtime::function_name::named]
28541 fn casting_type_15(&mut self, _l_bool: &ParseTreeType<'t>) -> Result<()> {
28542 let context = function_name!();
28543 trace!("{}", self.trace_item_stack(context));
28544 let l_bool = pop_item!(self, l_bool, LBool, context);
28545 let casting_type_15_built = CastingTypeLBool {
28546 l_bool: Box::new(l_bool),
28547 };
28548 let casting_type_15_built = CastingType::LBool(casting_type_15_built);
28549 self.user_grammar.casting_type(&casting_type_15_built)?;
28551 self.push(ASTType::CastingType(casting_type_15_built), context);
28552 Ok(())
28553 }
28554
28555 #[parol_runtime::function_name::named]
28560 fn casting_type_16(&mut self, _clock: &ParseTreeType<'t>) -> Result<()> {
28561 let context = function_name!();
28562 trace!("{}", self.trace_item_stack(context));
28563 let clock = pop_item!(self, clock, Clock, context);
28564 let casting_type_16_built = CastingTypeClock {
28565 clock: Box::new(clock),
28566 };
28567 let casting_type_16_built = CastingType::Clock(casting_type_16_built);
28568 self.user_grammar.casting_type(&casting_type_16_built)?;
28570 self.push(ASTType::CastingType(casting_type_16_built), context);
28571 Ok(())
28572 }
28573
28574 #[parol_runtime::function_name::named]
28579 fn casting_type_17(&mut self, _clock_posedge: &ParseTreeType<'t>) -> Result<()> {
28580 let context = function_name!();
28581 trace!("{}", self.trace_item_stack(context));
28582 let clock_posedge = pop_item!(self, clock_posedge, ClockPosedge, context);
28583 let casting_type_17_built = CastingTypeClockPosedge {
28584 clock_posedge: Box::new(clock_posedge),
28585 };
28586 let casting_type_17_built = CastingType::ClockPosedge(casting_type_17_built);
28587 self.user_grammar.casting_type(&casting_type_17_built)?;
28589 self.push(ASTType::CastingType(casting_type_17_built), context);
28590 Ok(())
28591 }
28592
28593 #[parol_runtime::function_name::named]
28598 fn casting_type_18(&mut self, _clock_negedge: &ParseTreeType<'t>) -> Result<()> {
28599 let context = function_name!();
28600 trace!("{}", self.trace_item_stack(context));
28601 let clock_negedge = pop_item!(self, clock_negedge, ClockNegedge, context);
28602 let casting_type_18_built = CastingTypeClockNegedge {
28603 clock_negedge: Box::new(clock_negedge),
28604 };
28605 let casting_type_18_built = CastingType::ClockNegedge(casting_type_18_built);
28606 self.user_grammar.casting_type(&casting_type_18_built)?;
28608 self.push(ASTType::CastingType(casting_type_18_built), context);
28609 Ok(())
28610 }
28611
28612 #[parol_runtime::function_name::named]
28617 fn casting_type_19(&mut self, _reset: &ParseTreeType<'t>) -> Result<()> {
28618 let context = function_name!();
28619 trace!("{}", self.trace_item_stack(context));
28620 let reset = pop_item!(self, reset, Reset, context);
28621 let casting_type_19_built = CastingTypeReset {
28622 reset: Box::new(reset),
28623 };
28624 let casting_type_19_built = CastingType::Reset(casting_type_19_built);
28625 self.user_grammar.casting_type(&casting_type_19_built)?;
28627 self.push(ASTType::CastingType(casting_type_19_built), context);
28628 Ok(())
28629 }
28630
28631 #[parol_runtime::function_name::named]
28636 fn casting_type_20(&mut self, _reset_async_high: &ParseTreeType<'t>) -> Result<()> {
28637 let context = function_name!();
28638 trace!("{}", self.trace_item_stack(context));
28639 let reset_async_high = pop_item!(self, reset_async_high, ResetAsyncHigh, context);
28640 let casting_type_20_built = CastingTypeResetAsyncHigh {
28641 reset_async_high: Box::new(reset_async_high),
28642 };
28643 let casting_type_20_built = CastingType::ResetAsyncHigh(casting_type_20_built);
28644 self.user_grammar.casting_type(&casting_type_20_built)?;
28646 self.push(ASTType::CastingType(casting_type_20_built), context);
28647 Ok(())
28648 }
28649
28650 #[parol_runtime::function_name::named]
28655 fn casting_type_21(&mut self, _reset_async_low: &ParseTreeType<'t>) -> Result<()> {
28656 let context = function_name!();
28657 trace!("{}", self.trace_item_stack(context));
28658 let reset_async_low = pop_item!(self, reset_async_low, ResetAsyncLow, context);
28659 let casting_type_21_built = CastingTypeResetAsyncLow {
28660 reset_async_low: Box::new(reset_async_low),
28661 };
28662 let casting_type_21_built = CastingType::ResetAsyncLow(casting_type_21_built);
28663 self.user_grammar.casting_type(&casting_type_21_built)?;
28665 self.push(ASTType::CastingType(casting_type_21_built), context);
28666 Ok(())
28667 }
28668
28669 #[parol_runtime::function_name::named]
28674 fn casting_type_22(&mut self, _reset_sync_high: &ParseTreeType<'t>) -> Result<()> {
28675 let context = function_name!();
28676 trace!("{}", self.trace_item_stack(context));
28677 let reset_sync_high = pop_item!(self, reset_sync_high, ResetSyncHigh, context);
28678 let casting_type_22_built = CastingTypeResetSyncHigh {
28679 reset_sync_high: Box::new(reset_sync_high),
28680 };
28681 let casting_type_22_built = CastingType::ResetSyncHigh(casting_type_22_built);
28682 self.user_grammar.casting_type(&casting_type_22_built)?;
28684 self.push(ASTType::CastingType(casting_type_22_built), context);
28685 Ok(())
28686 }
28687
28688 #[parol_runtime::function_name::named]
28693 fn casting_type_23(&mut self, _reset_sync_low: &ParseTreeType<'t>) -> Result<()> {
28694 let context = function_name!();
28695 trace!("{}", self.trace_item_stack(context));
28696 let reset_sync_low = pop_item!(self, reset_sync_low, ResetSyncLow, context);
28697 let casting_type_23_built = CastingTypeResetSyncLow {
28698 reset_sync_low: Box::new(reset_sync_low),
28699 };
28700 let casting_type_23_built = CastingType::ResetSyncLow(casting_type_23_built);
28701 self.user_grammar.casting_type(&casting_type_23_built)?;
28703 self.push(ASTType::CastingType(casting_type_23_built), context);
28704 Ok(())
28705 }
28706
28707 #[parol_runtime::function_name::named]
28712 fn casting_type_24(&mut self, _user_defined_type: &ParseTreeType<'t>) -> Result<()> {
28713 let context = function_name!();
28714 trace!("{}", self.trace_item_stack(context));
28715 let user_defined_type = pop_item!(self, user_defined_type, UserDefinedType, context);
28716 let casting_type_24_built = CastingTypeUserDefinedType {
28717 user_defined_type: Box::new(user_defined_type),
28718 };
28719 let casting_type_24_built = CastingType::UserDefinedType(casting_type_24_built);
28720 self.user_grammar.casting_type(&casting_type_24_built)?;
28722 self.push(ASTType::CastingType(casting_type_24_built), context);
28723 Ok(())
28724 }
28725
28726 #[parol_runtime::function_name::named]
28731 fn casting_type_25(&mut self, _based: &ParseTreeType<'t>) -> Result<()> {
28732 let context = function_name!();
28733 trace!("{}", self.trace_item_stack(context));
28734 let based = pop_item!(self, based, Based, context);
28735 let casting_type_25_built = CastingTypeBased {
28736 based: Box::new(based),
28737 };
28738 let casting_type_25_built = CastingType::Based(casting_type_25_built);
28739 self.user_grammar.casting_type(&casting_type_25_built)?;
28741 self.push(ASTType::CastingType(casting_type_25_built), context);
28742 Ok(())
28743 }
28744
28745 #[parol_runtime::function_name::named]
28750 fn casting_type_26(&mut self, _base_less: &ParseTreeType<'t>) -> Result<()> {
28751 let context = function_name!();
28752 trace!("{}", self.trace_item_stack(context));
28753 let base_less = pop_item!(self, base_less, BaseLess, context);
28754 let casting_type_26_built = CastingTypeBaseLess {
28755 base_less: Box::new(base_less),
28756 };
28757 let casting_type_26_built = CastingType::BaseLess(casting_type_26_built);
28758 self.user_grammar.casting_type(&casting_type_26_built)?;
28760 self.push(ASTType::CastingType(casting_type_26_built), context);
28761 Ok(())
28762 }
28763
28764 #[parol_runtime::function_name::named]
28769 fn clock_domain(
28770 &mut self,
28771 _quote: &ParseTreeType<'t>,
28772 _identifier: &ParseTreeType<'t>,
28773 ) -> Result<()> {
28774 let context = function_name!();
28775 trace!("{}", self.trace_item_stack(context));
28776 let identifier = pop_item!(self, identifier, Identifier, context);
28777 let quote = pop_item!(self, quote, Quote, context);
28778 let clock_domain_built = ClockDomain {
28779 quote: Box::new(quote),
28780 identifier: Box::new(identifier),
28781 };
28782 self.user_grammar.clock_domain(&clock_domain_built)?;
28784 self.push(ASTType::ClockDomain(clock_domain_built), context);
28785 Ok(())
28786 }
28787
28788 #[parol_runtime::function_name::named]
28793 fn statement_block(
28794 &mut self,
28795 _l_brace: &ParseTreeType<'t>,
28796 _statement_block_list: &ParseTreeType<'t>,
28797 _r_brace: &ParseTreeType<'t>,
28798 ) -> Result<()> {
28799 let context = function_name!();
28800 trace!("{}", self.trace_item_stack(context));
28801 let r_brace = pop_item!(self, r_brace, RBrace, context);
28802 let statement_block_list =
28803 pop_and_reverse_item!(self, statement_block_list, StatementBlockList, context);
28804 let l_brace = pop_item!(self, l_brace, LBrace, context);
28805 let statement_block_built = StatementBlock {
28806 l_brace: Box::new(l_brace),
28807 statement_block_list,
28808 r_brace: Box::new(r_brace),
28809 };
28810 self.user_grammar.statement_block(&statement_block_built)?;
28812 self.push(ASTType::StatementBlock(statement_block_built), context);
28813 Ok(())
28814 }
28815
28816 #[parol_runtime::function_name::named]
28821 fn statement_block_list_0(
28822 &mut self,
28823 _statement_block_group: &ParseTreeType<'t>,
28824 _statement_block_list: &ParseTreeType<'t>,
28825 ) -> Result<()> {
28826 let context = function_name!();
28827 trace!("{}", self.trace_item_stack(context));
28828 let mut statement_block_list =
28829 pop_item!(self, statement_block_list, StatementBlockList, context);
28830 let statement_block_group =
28831 pop_item!(self, statement_block_group, StatementBlockGroup, context);
28832 let statement_block_list_0_built = StatementBlockList {
28833 statement_block_group: Box::new(statement_block_group),
28834 };
28835 statement_block_list.push(statement_block_list_0_built);
28837 self.push(ASTType::StatementBlockList(statement_block_list), context);
28838 Ok(())
28839 }
28840
28841 #[parol_runtime::function_name::named]
28846 fn statement_block_list_1(&mut self) -> Result<()> {
28847 let context = function_name!();
28848 trace!("{}", self.trace_item_stack(context));
28849 let statement_block_list_1_built = Vec::new();
28850 self.push(
28851 ASTType::StatementBlockList(statement_block_list_1_built),
28852 context,
28853 );
28854 Ok(())
28855 }
28856
28857 #[parol_runtime::function_name::named]
28862 fn statement_block_group(
28863 &mut self,
28864 _statement_block_group_list: &ParseTreeType<'t>,
28865 _statement_block_group_group: &ParseTreeType<'t>,
28866 ) -> Result<()> {
28867 let context = function_name!();
28868 trace!("{}", self.trace_item_stack(context));
28869 let statement_block_group_group = pop_item!(
28870 self,
28871 statement_block_group_group,
28872 StatementBlockGroupGroup,
28873 context
28874 );
28875 let statement_block_group_list = pop_and_reverse_item!(
28876 self,
28877 statement_block_group_list,
28878 StatementBlockGroupList,
28879 context
28880 );
28881 let statement_block_group_built = StatementBlockGroup {
28882 statement_block_group_list,
28883 statement_block_group_group: Box::new(statement_block_group_group),
28884 };
28885 self.user_grammar
28887 .statement_block_group(&statement_block_group_built)?;
28888 self.push(
28889 ASTType::StatementBlockGroup(statement_block_group_built),
28890 context,
28891 );
28892 Ok(())
28893 }
28894
28895 #[parol_runtime::function_name::named]
28900 fn statement_block_group_group_0(
28901 &mut self,
28902 _block: &ParseTreeType<'t>,
28903 _l_brace: &ParseTreeType<'t>,
28904 _statement_block_group_group_list: &ParseTreeType<'t>,
28905 _r_brace: &ParseTreeType<'t>,
28906 ) -> Result<()> {
28907 let context = function_name!();
28908 trace!("{}", self.trace_item_stack(context));
28909 let r_brace = pop_item!(self, r_brace, RBrace, context);
28910 let statement_block_group_group_list = pop_and_reverse_item!(
28911 self,
28912 statement_block_group_group_list,
28913 StatementBlockGroupGroupList,
28914 context
28915 );
28916 let l_brace = pop_item!(self, l_brace, LBrace, context);
28917 let block = pop_item!(self, block, Block, context);
28918 let statement_block_group_group_0_built =
28919 StatementBlockGroupGroupBlockLBraceStatementBlockGroupGroupListRBrace {
28920 block: Box::new(block),
28921 l_brace: Box::new(l_brace),
28922 statement_block_group_group_list,
28923 r_brace: Box::new(r_brace),
28924 };
28925 let statement_block_group_group_0_built =
28926 StatementBlockGroupGroup::BlockLBraceStatementBlockGroupGroupListRBrace(
28927 statement_block_group_group_0_built,
28928 );
28929 self.push(
28930 ASTType::StatementBlockGroupGroup(statement_block_group_group_0_built),
28931 context,
28932 );
28933 Ok(())
28934 }
28935
28936 #[parol_runtime::function_name::named]
28941 fn statement_block_group_group_list_0(
28942 &mut self,
28943 _statement_block_group: &ParseTreeType<'t>,
28944 _statement_block_group_group_list: &ParseTreeType<'t>,
28945 ) -> Result<()> {
28946 let context = function_name!();
28947 trace!("{}", self.trace_item_stack(context));
28948 let mut statement_block_group_group_list = pop_item!(
28949 self,
28950 statement_block_group_group_list,
28951 StatementBlockGroupGroupList,
28952 context
28953 );
28954 let statement_block_group =
28955 pop_item!(self, statement_block_group, StatementBlockGroup, context);
28956 let statement_block_group_group_list_0_built = StatementBlockGroupGroupList {
28957 statement_block_group: Box::new(statement_block_group),
28958 };
28959 statement_block_group_group_list.push(statement_block_group_group_list_0_built);
28961 self.push(
28962 ASTType::StatementBlockGroupGroupList(statement_block_group_group_list),
28963 context,
28964 );
28965 Ok(())
28966 }
28967
28968 #[parol_runtime::function_name::named]
28973 fn statement_block_group_group_list_1(&mut self) -> Result<()> {
28974 let context = function_name!();
28975 trace!("{}", self.trace_item_stack(context));
28976 let statement_block_group_group_list_1_built = Vec::new();
28977 self.push(
28978 ASTType::StatementBlockGroupGroupList(statement_block_group_group_list_1_built),
28979 context,
28980 );
28981 Ok(())
28982 }
28983
28984 #[parol_runtime::function_name::named]
28989 fn statement_block_group_group_1(
28990 &mut self,
28991 _statement_block_item: &ParseTreeType<'t>,
28992 ) -> Result<()> {
28993 let context = function_name!();
28994 trace!("{}", self.trace_item_stack(context));
28995 let statement_block_item =
28996 pop_item!(self, statement_block_item, StatementBlockItem, context);
28997 let statement_block_group_group_1_built = StatementBlockGroupGroupStatementBlockItem {
28998 statement_block_item: Box::new(statement_block_item),
28999 };
29000 let statement_block_group_group_1_built =
29001 StatementBlockGroupGroup::StatementBlockItem(statement_block_group_group_1_built);
29002 self.push(
29003 ASTType::StatementBlockGroupGroup(statement_block_group_group_1_built),
29004 context,
29005 );
29006 Ok(())
29007 }
29008
29009 #[parol_runtime::function_name::named]
29014 fn statement_block_group_list_0(
29015 &mut self,
29016 _attribute: &ParseTreeType<'t>,
29017 _statement_block_group_list: &ParseTreeType<'t>,
29018 ) -> Result<()> {
29019 let context = function_name!();
29020 trace!("{}", self.trace_item_stack(context));
29021 let mut statement_block_group_list = pop_item!(
29022 self,
29023 statement_block_group_list,
29024 StatementBlockGroupList,
29025 context
29026 );
29027 let attribute = pop_item!(self, attribute, Attribute, context);
29028 let statement_block_group_list_0_built = StatementBlockGroupList {
29029 attribute: Box::new(attribute),
29030 };
29031 statement_block_group_list.push(statement_block_group_list_0_built);
29033 self.push(
29034 ASTType::StatementBlockGroupList(statement_block_group_list),
29035 context,
29036 );
29037 Ok(())
29038 }
29039
29040 #[parol_runtime::function_name::named]
29045 fn statement_block_group_list_1(&mut self) -> Result<()> {
29046 let context = function_name!();
29047 trace!("{}", self.trace_item_stack(context));
29048 let statement_block_group_list_1_built = Vec::new();
29049 self.push(
29050 ASTType::StatementBlockGroupList(statement_block_group_list_1_built),
29051 context,
29052 );
29053 Ok(())
29054 }
29055
29056 #[parol_runtime::function_name::named]
29061 fn statement_block_item_0(&mut self, _var_declaration: &ParseTreeType<'t>) -> Result<()> {
29062 let context = function_name!();
29063 trace!("{}", self.trace_item_stack(context));
29064 let var_declaration = pop_item!(self, var_declaration, VarDeclaration, context);
29065 let statement_block_item_0_built = StatementBlockItemVarDeclaration {
29066 var_declaration: Box::new(var_declaration),
29067 };
29068 let statement_block_item_0_built =
29069 StatementBlockItem::VarDeclaration(statement_block_item_0_built);
29070 self.user_grammar
29072 .statement_block_item(&statement_block_item_0_built)?;
29073 self.push(
29074 ASTType::StatementBlockItem(statement_block_item_0_built),
29075 context,
29076 );
29077 Ok(())
29078 }
29079
29080 #[parol_runtime::function_name::named]
29085 fn statement_block_item_1(&mut self, _let_statement: &ParseTreeType<'t>) -> Result<()> {
29086 let context = function_name!();
29087 trace!("{}", self.trace_item_stack(context));
29088 let let_statement = pop_item!(self, let_statement, LetStatement, context);
29089 let statement_block_item_1_built = StatementBlockItemLetStatement {
29090 let_statement: Box::new(let_statement),
29091 };
29092 let statement_block_item_1_built =
29093 StatementBlockItem::LetStatement(statement_block_item_1_built);
29094 self.user_grammar
29096 .statement_block_item(&statement_block_item_1_built)?;
29097 self.push(
29098 ASTType::StatementBlockItem(statement_block_item_1_built),
29099 context,
29100 );
29101 Ok(())
29102 }
29103
29104 #[parol_runtime::function_name::named]
29109 fn statement_block_item_2(&mut self, _const_declaration: &ParseTreeType<'t>) -> Result<()> {
29110 let context = function_name!();
29111 trace!("{}", self.trace_item_stack(context));
29112 let const_declaration = pop_item!(self, const_declaration, ConstDeclaration, context);
29113 let statement_block_item_2_built = StatementBlockItemConstDeclaration {
29114 const_declaration: Box::new(const_declaration),
29115 };
29116 let statement_block_item_2_built =
29117 StatementBlockItem::ConstDeclaration(statement_block_item_2_built);
29118 self.user_grammar
29120 .statement_block_item(&statement_block_item_2_built)?;
29121 self.push(
29122 ASTType::StatementBlockItem(statement_block_item_2_built),
29123 context,
29124 );
29125 Ok(())
29126 }
29127
29128 #[parol_runtime::function_name::named]
29133 fn statement_block_item_3(&mut self, _statement: &ParseTreeType<'t>) -> Result<()> {
29134 let context = function_name!();
29135 trace!("{}", self.trace_item_stack(context));
29136 let statement = pop_item!(self, statement, Statement, context);
29137 let statement_block_item_3_built = StatementBlockItemStatement {
29138 statement: Box::new(statement),
29139 };
29140 let statement_block_item_3_built =
29141 StatementBlockItem::Statement(statement_block_item_3_built);
29142 self.user_grammar
29144 .statement_block_item(&statement_block_item_3_built)?;
29145 self.push(
29146 ASTType::StatementBlockItem(statement_block_item_3_built),
29147 context,
29148 );
29149 Ok(())
29150 }
29151
29152 #[parol_runtime::function_name::named]
29157 fn statement_block_item_4(
29158 &mut self,
29159 _concatenation_assignment: &ParseTreeType<'t>,
29160 ) -> Result<()> {
29161 let context = function_name!();
29162 trace!("{}", self.trace_item_stack(context));
29163 let concatenation_assignment = pop_item!(
29164 self,
29165 concatenation_assignment,
29166 ConcatenationAssignment,
29167 context
29168 );
29169 let statement_block_item_4_built = StatementBlockItemConcatenationAssignment {
29170 concatenation_assignment: Box::new(concatenation_assignment),
29171 };
29172 let statement_block_item_4_built =
29173 StatementBlockItem::ConcatenationAssignment(statement_block_item_4_built);
29174 self.user_grammar
29176 .statement_block_item(&statement_block_item_4_built)?;
29177 self.push(
29178 ASTType::StatementBlockItem(statement_block_item_4_built),
29179 context,
29180 );
29181 Ok(())
29182 }
29183
29184 #[parol_runtime::function_name::named]
29189 fn statement_0(&mut self, _identifier_statement: &ParseTreeType<'t>) -> Result<()> {
29190 let context = function_name!();
29191 trace!("{}", self.trace_item_stack(context));
29192 let identifier_statement =
29193 pop_item!(self, identifier_statement, IdentifierStatement, context);
29194 let statement_0_built = StatementIdentifierStatement {
29195 identifier_statement: Box::new(identifier_statement),
29196 };
29197 let statement_0_built = Statement::IdentifierStatement(statement_0_built);
29198 self.user_grammar.statement(&statement_0_built)?;
29200 self.push(ASTType::Statement(statement_0_built), context);
29201 Ok(())
29202 }
29203
29204 #[parol_runtime::function_name::named]
29209 fn statement_1(&mut self, _if_statement: &ParseTreeType<'t>) -> Result<()> {
29210 let context = function_name!();
29211 trace!("{}", self.trace_item_stack(context));
29212 let if_statement = pop_item!(self, if_statement, IfStatement, context);
29213 let statement_1_built = StatementIfStatement {
29214 if_statement: Box::new(if_statement),
29215 };
29216 let statement_1_built = Statement::IfStatement(statement_1_built);
29217 self.user_grammar.statement(&statement_1_built)?;
29219 self.push(ASTType::Statement(statement_1_built), context);
29220 Ok(())
29221 }
29222
29223 #[parol_runtime::function_name::named]
29228 fn statement_2(&mut self, _if_reset_statement: &ParseTreeType<'t>) -> Result<()> {
29229 let context = function_name!();
29230 trace!("{}", self.trace_item_stack(context));
29231 let if_reset_statement = pop_item!(self, if_reset_statement, IfResetStatement, context);
29232 let statement_2_built = StatementIfResetStatement {
29233 if_reset_statement: Box::new(if_reset_statement),
29234 };
29235 let statement_2_built = Statement::IfResetStatement(statement_2_built);
29236 self.user_grammar.statement(&statement_2_built)?;
29238 self.push(ASTType::Statement(statement_2_built), context);
29239 Ok(())
29240 }
29241
29242 #[parol_runtime::function_name::named]
29247 fn statement_3(&mut self, _return_statement: &ParseTreeType<'t>) -> Result<()> {
29248 let context = function_name!();
29249 trace!("{}", self.trace_item_stack(context));
29250 let return_statement = pop_item!(self, return_statement, ReturnStatement, context);
29251 let statement_3_built = StatementReturnStatement {
29252 return_statement: Box::new(return_statement),
29253 };
29254 let statement_3_built = Statement::ReturnStatement(statement_3_built);
29255 self.user_grammar.statement(&statement_3_built)?;
29257 self.push(ASTType::Statement(statement_3_built), context);
29258 Ok(())
29259 }
29260
29261 #[parol_runtime::function_name::named]
29266 fn statement_4(&mut self, _break_statement: &ParseTreeType<'t>) -> Result<()> {
29267 let context = function_name!();
29268 trace!("{}", self.trace_item_stack(context));
29269 let break_statement = pop_item!(self, break_statement, BreakStatement, context);
29270 let statement_4_built = StatementBreakStatement {
29271 break_statement: Box::new(break_statement),
29272 };
29273 let statement_4_built = Statement::BreakStatement(statement_4_built);
29274 self.user_grammar.statement(&statement_4_built)?;
29276 self.push(ASTType::Statement(statement_4_built), context);
29277 Ok(())
29278 }
29279
29280 #[parol_runtime::function_name::named]
29285 fn statement_5(&mut self, _for_statement: &ParseTreeType<'t>) -> Result<()> {
29286 let context = function_name!();
29287 trace!("{}", self.trace_item_stack(context));
29288 let for_statement = pop_item!(self, for_statement, ForStatement, context);
29289 let statement_5_built = StatementForStatement {
29290 for_statement: Box::new(for_statement),
29291 };
29292 let statement_5_built = Statement::ForStatement(statement_5_built);
29293 self.user_grammar.statement(&statement_5_built)?;
29295 self.push(ASTType::Statement(statement_5_built), context);
29296 Ok(())
29297 }
29298
29299 #[parol_runtime::function_name::named]
29304 fn statement_6(&mut self, _case_statement: &ParseTreeType<'t>) -> Result<()> {
29305 let context = function_name!();
29306 trace!("{}", self.trace_item_stack(context));
29307 let case_statement = pop_item!(self, case_statement, CaseStatement, context);
29308 let statement_6_built = StatementCaseStatement {
29309 case_statement: Box::new(case_statement),
29310 };
29311 let statement_6_built = Statement::CaseStatement(statement_6_built);
29312 self.user_grammar.statement(&statement_6_built)?;
29314 self.push(ASTType::Statement(statement_6_built), context);
29315 Ok(())
29316 }
29317
29318 #[parol_runtime::function_name::named]
29323 fn statement_7(&mut self, _switch_statement: &ParseTreeType<'t>) -> Result<()> {
29324 let context = function_name!();
29325 trace!("{}", self.trace_item_stack(context));
29326 let switch_statement = pop_item!(self, switch_statement, SwitchStatement, context);
29327 let statement_7_built = StatementSwitchStatement {
29328 switch_statement: Box::new(switch_statement),
29329 };
29330 let statement_7_built = Statement::SwitchStatement(statement_7_built);
29331 self.user_grammar.statement(&statement_7_built)?;
29333 self.push(ASTType::Statement(statement_7_built), context);
29334 Ok(())
29335 }
29336
29337 #[parol_runtime::function_name::named]
29342 fn let_statement(
29343 &mut self,
29344 _let: &ParseTreeType<'t>,
29345 _identifier: &ParseTreeType<'t>,
29346 _colon: &ParseTreeType<'t>,
29347 _let_statement_opt: &ParseTreeType<'t>,
29348 _array_type: &ParseTreeType<'t>,
29349 _equ: &ParseTreeType<'t>,
29350 _expression: &ParseTreeType<'t>,
29351 _semicolon: &ParseTreeType<'t>,
29352 ) -> Result<()> {
29353 let context = function_name!();
29354 trace!("{}", self.trace_item_stack(context));
29355 let semicolon = pop_item!(self, semicolon, Semicolon, context);
29356 let expression = pop_item!(self, expression, Expression, context);
29357 let equ = pop_item!(self, equ, Equ, context);
29358 let array_type = pop_item!(self, array_type, ArrayType, context);
29359 let let_statement_opt = pop_item!(self, let_statement_opt, LetStatementOpt, context);
29360 let colon = pop_item!(self, colon, Colon, context);
29361 let identifier = pop_item!(self, identifier, Identifier, context);
29362 let r#let = pop_item!(self, r#let, Let, context);
29363 let let_statement_built = LetStatement {
29364 r#let: Box::new(r#let),
29365 identifier: Box::new(identifier),
29366 colon: Box::new(colon),
29367 let_statement_opt,
29368 array_type: Box::new(array_type),
29369 equ: Box::new(equ),
29370 expression: Box::new(expression),
29371 semicolon: Box::new(semicolon),
29372 };
29373 self.user_grammar.let_statement(&let_statement_built)?;
29375 self.push(ASTType::LetStatement(let_statement_built), context);
29376 Ok(())
29377 }
29378
29379 #[parol_runtime::function_name::named]
29384 fn let_statement_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
29385 let context = function_name!();
29386 trace!("{}", self.trace_item_stack(context));
29387 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
29388 let let_statement_opt_0_built = LetStatementOpt {
29389 clock_domain: Box::new(clock_domain),
29390 };
29391 self.push(
29392 ASTType::LetStatementOpt(Some(let_statement_opt_0_built)),
29393 context,
29394 );
29395 Ok(())
29396 }
29397
29398 #[parol_runtime::function_name::named]
29403 fn let_statement_opt_1(&mut self) -> Result<()> {
29404 let context = function_name!();
29405 trace!("{}", self.trace_item_stack(context));
29406 self.push(ASTType::LetStatementOpt(None), context);
29407 Ok(())
29408 }
29409
29410 #[parol_runtime::function_name::named]
29415 fn identifier_statement(
29416 &mut self,
29417 _expression_identifier: &ParseTreeType<'t>,
29418 _identifier_statement_group: &ParseTreeType<'t>,
29419 _semicolon: &ParseTreeType<'t>,
29420 ) -> Result<()> {
29421 let context = function_name!();
29422 trace!("{}", self.trace_item_stack(context));
29423 let semicolon = pop_item!(self, semicolon, Semicolon, context);
29424 let identifier_statement_group = pop_item!(
29425 self,
29426 identifier_statement_group,
29427 IdentifierStatementGroup,
29428 context
29429 );
29430 let expression_identifier =
29431 pop_item!(self, expression_identifier, ExpressionIdentifier, context);
29432 let identifier_statement_built = IdentifierStatement {
29433 expression_identifier: Box::new(expression_identifier),
29434 identifier_statement_group: Box::new(identifier_statement_group),
29435 semicolon: Box::new(semicolon),
29436 };
29437 self.user_grammar
29439 .identifier_statement(&identifier_statement_built)?;
29440 self.push(
29441 ASTType::IdentifierStatement(identifier_statement_built),
29442 context,
29443 );
29444 Ok(())
29445 }
29446
29447 #[parol_runtime::function_name::named]
29452 fn identifier_statement_group_0(&mut self, _function_call: &ParseTreeType<'t>) -> Result<()> {
29453 let context = function_name!();
29454 trace!("{}", self.trace_item_stack(context));
29455 let function_call = pop_item!(self, function_call, FunctionCall, context);
29456 let identifier_statement_group_0_built = IdentifierStatementGroupFunctionCall {
29457 function_call: Box::new(function_call),
29458 };
29459 let identifier_statement_group_0_built =
29460 IdentifierStatementGroup::FunctionCall(identifier_statement_group_0_built);
29461 self.push(
29462 ASTType::IdentifierStatementGroup(identifier_statement_group_0_built),
29463 context,
29464 );
29465 Ok(())
29466 }
29467
29468 #[parol_runtime::function_name::named]
29473 fn identifier_statement_group_1(&mut self, _assignment: &ParseTreeType<'t>) -> Result<()> {
29474 let context = function_name!();
29475 trace!("{}", self.trace_item_stack(context));
29476 let assignment = pop_item!(self, assignment, Assignment, context);
29477 let identifier_statement_group_1_built = IdentifierStatementGroupAssignment {
29478 assignment: Box::new(assignment),
29479 };
29480 let identifier_statement_group_1_built =
29481 IdentifierStatementGroup::Assignment(identifier_statement_group_1_built);
29482 self.push(
29483 ASTType::IdentifierStatementGroup(identifier_statement_group_1_built),
29484 context,
29485 );
29486 Ok(())
29487 }
29488
29489 #[parol_runtime::function_name::named]
29494 fn concatenation_assignment(
29495 &mut self,
29496 _l_brace: &ParseTreeType<'t>,
29497 _assign_concatenation_list: &ParseTreeType<'t>,
29498 _r_brace: &ParseTreeType<'t>,
29499 _equ: &ParseTreeType<'t>,
29500 _expression: &ParseTreeType<'t>,
29501 _semicolon: &ParseTreeType<'t>,
29502 ) -> Result<()> {
29503 let context = function_name!();
29504 trace!("{}", self.trace_item_stack(context));
29505 let semicolon = pop_item!(self, semicolon, Semicolon, context);
29506 let expression = pop_item!(self, expression, Expression, context);
29507 let equ = pop_item!(self, equ, Equ, context);
29508 let r_brace = pop_item!(self, r_brace, RBrace, context);
29509 let assign_concatenation_list = pop_item!(
29510 self,
29511 assign_concatenation_list,
29512 AssignConcatenationList,
29513 context
29514 );
29515 let l_brace = pop_item!(self, l_brace, LBrace, context);
29516 let concatenation_assignment_built = ConcatenationAssignment {
29517 l_brace: Box::new(l_brace),
29518 assign_concatenation_list: Box::new(assign_concatenation_list),
29519 r_brace: Box::new(r_brace),
29520 equ: Box::new(equ),
29521 expression: Box::new(expression),
29522 semicolon: Box::new(semicolon),
29523 };
29524 self.user_grammar
29526 .concatenation_assignment(&concatenation_assignment_built)?;
29527 self.push(
29528 ASTType::ConcatenationAssignment(concatenation_assignment_built),
29529 context,
29530 );
29531 Ok(())
29532 }
29533
29534 #[parol_runtime::function_name::named]
29539 fn assignment(
29540 &mut self,
29541 _assignment_group: &ParseTreeType<'t>,
29542 _expression: &ParseTreeType<'t>,
29543 ) -> Result<()> {
29544 let context = function_name!();
29545 trace!("{}", self.trace_item_stack(context));
29546 let expression = pop_item!(self, expression, Expression, context);
29547 let assignment_group = pop_item!(self, assignment_group, AssignmentGroup, context);
29548 let assignment_built = Assignment {
29549 assignment_group: Box::new(assignment_group),
29550 expression: Box::new(expression),
29551 };
29552 self.user_grammar.assignment(&assignment_built)?;
29554 self.push(ASTType::Assignment(assignment_built), context);
29555 Ok(())
29556 }
29557
29558 #[parol_runtime::function_name::named]
29563 fn assignment_group_0(&mut self, _equ: &ParseTreeType<'t>) -> Result<()> {
29564 let context = function_name!();
29565 trace!("{}", self.trace_item_stack(context));
29566 let equ = pop_item!(self, equ, Equ, context);
29567 let assignment_group_0_built = AssignmentGroupEqu { equ: Box::new(equ) };
29568 let assignment_group_0_built = AssignmentGroup::Equ(assignment_group_0_built);
29569 self.push(ASTType::AssignmentGroup(assignment_group_0_built), context);
29570 Ok(())
29571 }
29572
29573 #[parol_runtime::function_name::named]
29578 fn assignment_group_1(&mut self, _assignment_operator: &ParseTreeType<'t>) -> Result<()> {
29579 let context = function_name!();
29580 trace!("{}", self.trace_item_stack(context));
29581 let assignment_operator = pop_item!(self, assignment_operator, AssignmentOperator, context);
29582 let assignment_group_1_built = AssignmentGroupAssignmentOperator {
29583 assignment_operator: Box::new(assignment_operator),
29584 };
29585 let assignment_group_1_built =
29586 AssignmentGroup::AssignmentOperator(assignment_group_1_built);
29587 self.push(ASTType::AssignmentGroup(assignment_group_1_built), context);
29588 Ok(())
29589 }
29590
29591 #[parol_runtime::function_name::named]
29596 fn assignment_group_2(&mut self, _diamond_operator: &ParseTreeType<'t>) -> Result<()> {
29597 let context = function_name!();
29598 trace!("{}", self.trace_item_stack(context));
29599 let diamond_operator = pop_item!(self, diamond_operator, DiamondOperator, context);
29600 let assignment_group_2_built = AssignmentGroupDiamondOperator {
29601 diamond_operator: Box::new(diamond_operator),
29602 };
29603 let assignment_group_2_built = AssignmentGroup::DiamondOperator(assignment_group_2_built);
29604 self.push(ASTType::AssignmentGroup(assignment_group_2_built), context);
29605 Ok(())
29606 }
29607
29608 #[parol_runtime::function_name::named]
29613 fn if_statement(
29614 &mut self,
29615 _if: &ParseTreeType<'t>,
29616 _expression: &ParseTreeType<'t>,
29617 _statement_block: &ParseTreeType<'t>,
29618 _if_statement_list: &ParseTreeType<'t>,
29619 _if_statement_opt: &ParseTreeType<'t>,
29620 ) -> Result<()> {
29621 let context = function_name!();
29622 trace!("{}", self.trace_item_stack(context));
29623 let if_statement_opt = pop_item!(self, if_statement_opt, IfStatementOpt, context);
29624 let if_statement_list =
29625 pop_and_reverse_item!(self, if_statement_list, IfStatementList, context);
29626 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29627 let expression = pop_item!(self, expression, Expression, context);
29628 let r#if = pop_item!(self, r#if, If, context);
29629 let if_statement_built = IfStatement {
29630 r#if: Box::new(r#if),
29631 expression: Box::new(expression),
29632 statement_block: Box::new(statement_block),
29633 if_statement_list,
29634 if_statement_opt,
29635 };
29636 self.user_grammar.if_statement(&if_statement_built)?;
29638 self.push(ASTType::IfStatement(if_statement_built), context);
29639 Ok(())
29640 }
29641
29642 #[parol_runtime::function_name::named]
29647 fn if_statement_list_0(
29648 &mut self,
29649 _else: &ParseTreeType<'t>,
29650 _if: &ParseTreeType<'t>,
29651 _expression: &ParseTreeType<'t>,
29652 _statement_block: &ParseTreeType<'t>,
29653 _if_statement_list: &ParseTreeType<'t>,
29654 ) -> Result<()> {
29655 let context = function_name!();
29656 trace!("{}", self.trace_item_stack(context));
29657 let mut if_statement_list = pop_item!(self, if_statement_list, IfStatementList, context);
29658 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29659 let expression = pop_item!(self, expression, Expression, context);
29660 let r#if = pop_item!(self, r#if, If, context);
29661 let r#else = pop_item!(self, r#else, Else, context);
29662 let if_statement_list_0_built = IfStatementList {
29663 statement_block: Box::new(statement_block),
29664 expression: Box::new(expression),
29665 r#if: Box::new(r#if),
29666 r#else: Box::new(r#else),
29667 };
29668 if_statement_list.push(if_statement_list_0_built);
29670 self.push(ASTType::IfStatementList(if_statement_list), context);
29671 Ok(())
29672 }
29673
29674 #[parol_runtime::function_name::named]
29679 fn if_statement_list_1(&mut self) -> Result<()> {
29680 let context = function_name!();
29681 trace!("{}", self.trace_item_stack(context));
29682 let if_statement_list_1_built = Vec::new();
29683 self.push(ASTType::IfStatementList(if_statement_list_1_built), context);
29684 Ok(())
29685 }
29686
29687 #[parol_runtime::function_name::named]
29692 fn if_statement_opt_0(
29693 &mut self,
29694 _else: &ParseTreeType<'t>,
29695 _statement_block: &ParseTreeType<'t>,
29696 ) -> Result<()> {
29697 let context = function_name!();
29698 trace!("{}", self.trace_item_stack(context));
29699 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29700 let r#else = pop_item!(self, r#else, Else, context);
29701 let if_statement_opt_0_built = IfStatementOpt {
29702 r#else: Box::new(r#else),
29703 statement_block: Box::new(statement_block),
29704 };
29705 self.push(
29706 ASTType::IfStatementOpt(Some(if_statement_opt_0_built)),
29707 context,
29708 );
29709 Ok(())
29710 }
29711
29712 #[parol_runtime::function_name::named]
29717 fn if_statement_opt_1(&mut self) -> Result<()> {
29718 let context = function_name!();
29719 trace!("{}", self.trace_item_stack(context));
29720 self.push(ASTType::IfStatementOpt(None), context);
29721 Ok(())
29722 }
29723
29724 #[parol_runtime::function_name::named]
29729 fn if_reset_statement(
29730 &mut self,
29731 _if_reset: &ParseTreeType<'t>,
29732 _statement_block: &ParseTreeType<'t>,
29733 _if_reset_statement_list: &ParseTreeType<'t>,
29734 _if_reset_statement_opt: &ParseTreeType<'t>,
29735 ) -> Result<()> {
29736 let context = function_name!();
29737 trace!("{}", self.trace_item_stack(context));
29738 let if_reset_statement_opt =
29739 pop_item!(self, if_reset_statement_opt, IfResetStatementOpt, context);
29740 let if_reset_statement_list =
29741 pop_and_reverse_item!(self, if_reset_statement_list, IfResetStatementList, context);
29742 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29743 let if_reset = pop_item!(self, if_reset, IfReset, context);
29744 let if_reset_statement_built = IfResetStatement {
29745 if_reset: Box::new(if_reset),
29746 statement_block: Box::new(statement_block),
29747 if_reset_statement_list,
29748 if_reset_statement_opt,
29749 };
29750 self.user_grammar
29752 .if_reset_statement(&if_reset_statement_built)?;
29753 self.push(ASTType::IfResetStatement(if_reset_statement_built), context);
29754 Ok(())
29755 }
29756
29757 #[parol_runtime::function_name::named]
29762 fn if_reset_statement_list_0(
29763 &mut self,
29764 _else: &ParseTreeType<'t>,
29765 _if: &ParseTreeType<'t>,
29766 _expression: &ParseTreeType<'t>,
29767 _statement_block: &ParseTreeType<'t>,
29768 _if_reset_statement_list: &ParseTreeType<'t>,
29769 ) -> Result<()> {
29770 let context = function_name!();
29771 trace!("{}", self.trace_item_stack(context));
29772 let mut if_reset_statement_list =
29773 pop_item!(self, if_reset_statement_list, IfResetStatementList, context);
29774 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29775 let expression = pop_item!(self, expression, Expression, context);
29776 let r#if = pop_item!(self, r#if, If, context);
29777 let r#else = pop_item!(self, r#else, Else, context);
29778 let if_reset_statement_list_0_built = IfResetStatementList {
29779 statement_block: Box::new(statement_block),
29780 expression: Box::new(expression),
29781 r#if: Box::new(r#if),
29782 r#else: Box::new(r#else),
29783 };
29784 if_reset_statement_list.push(if_reset_statement_list_0_built);
29786 self.push(
29787 ASTType::IfResetStatementList(if_reset_statement_list),
29788 context,
29789 );
29790 Ok(())
29791 }
29792
29793 #[parol_runtime::function_name::named]
29798 fn if_reset_statement_list_1(&mut self) -> Result<()> {
29799 let context = function_name!();
29800 trace!("{}", self.trace_item_stack(context));
29801 let if_reset_statement_list_1_built = Vec::new();
29802 self.push(
29803 ASTType::IfResetStatementList(if_reset_statement_list_1_built),
29804 context,
29805 );
29806 Ok(())
29807 }
29808
29809 #[parol_runtime::function_name::named]
29814 fn if_reset_statement_opt_0(
29815 &mut self,
29816 _else: &ParseTreeType<'t>,
29817 _statement_block: &ParseTreeType<'t>,
29818 ) -> Result<()> {
29819 let context = function_name!();
29820 trace!("{}", self.trace_item_stack(context));
29821 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29822 let r#else = pop_item!(self, r#else, Else, context);
29823 let if_reset_statement_opt_0_built = IfResetStatementOpt {
29824 r#else: Box::new(r#else),
29825 statement_block: Box::new(statement_block),
29826 };
29827 self.push(
29828 ASTType::IfResetStatementOpt(Some(if_reset_statement_opt_0_built)),
29829 context,
29830 );
29831 Ok(())
29832 }
29833
29834 #[parol_runtime::function_name::named]
29839 fn if_reset_statement_opt_1(&mut self) -> Result<()> {
29840 let context = function_name!();
29841 trace!("{}", self.trace_item_stack(context));
29842 self.push(ASTType::IfResetStatementOpt(None), context);
29843 Ok(())
29844 }
29845
29846 #[parol_runtime::function_name::named]
29851 fn return_statement(
29852 &mut self,
29853 _return: &ParseTreeType<'t>,
29854 _expression: &ParseTreeType<'t>,
29855 _semicolon: &ParseTreeType<'t>,
29856 ) -> Result<()> {
29857 let context = function_name!();
29858 trace!("{}", self.trace_item_stack(context));
29859 let semicolon = pop_item!(self, semicolon, Semicolon, context);
29860 let expression = pop_item!(self, expression, Expression, context);
29861 let r#return = pop_item!(self, r#return, Return, context);
29862 let return_statement_built = ReturnStatement {
29863 r#return: Box::new(r#return),
29864 expression: Box::new(expression),
29865 semicolon: Box::new(semicolon),
29866 };
29867 self.user_grammar
29869 .return_statement(&return_statement_built)?;
29870 self.push(ASTType::ReturnStatement(return_statement_built), context);
29871 Ok(())
29872 }
29873
29874 #[parol_runtime::function_name::named]
29879 fn break_statement(
29880 &mut self,
29881 _break: &ParseTreeType<'t>,
29882 _semicolon: &ParseTreeType<'t>,
29883 ) -> Result<()> {
29884 let context = function_name!();
29885 trace!("{}", self.trace_item_stack(context));
29886 let semicolon = pop_item!(self, semicolon, Semicolon, context);
29887 let r#break = pop_item!(self, r#break, Break, context);
29888 let break_statement_built = BreakStatement {
29889 r#break: Box::new(r#break),
29890 semicolon: Box::new(semicolon),
29891 };
29892 self.user_grammar.break_statement(&break_statement_built)?;
29894 self.push(ASTType::BreakStatement(break_statement_built), context);
29895 Ok(())
29896 }
29897
29898 #[parol_runtime::function_name::named]
29903 fn for_statement(
29904 &mut self,
29905 _for: &ParseTreeType<'t>,
29906 _identifier: &ParseTreeType<'t>,
29907 _colon: &ParseTreeType<'t>,
29908 _scalar_type: &ParseTreeType<'t>,
29909 _in: &ParseTreeType<'t>,
29910 _for_statement_opt: &ParseTreeType<'t>,
29911 _range: &ParseTreeType<'t>,
29912 _for_statement_opt0: &ParseTreeType<'t>,
29913 _statement_block: &ParseTreeType<'t>,
29914 ) -> Result<()> {
29915 let context = function_name!();
29916 trace!("{}", self.trace_item_stack(context));
29917 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
29918 let for_statement_opt0 = pop_item!(self, for_statement_opt0, ForStatementOpt0, context);
29919 let range = pop_item!(self, range, Range, context);
29920 let for_statement_opt = pop_item!(self, for_statement_opt, ForStatementOpt, context);
29921 let r#in = pop_item!(self, r#in, In, context);
29922 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
29923 let colon = pop_item!(self, colon, Colon, context);
29924 let identifier = pop_item!(self, identifier, Identifier, context);
29925 let r#for = pop_item!(self, r#for, For, context);
29926 let for_statement_built = ForStatement {
29927 r#for: Box::new(r#for),
29928 identifier: Box::new(identifier),
29929 colon: Box::new(colon),
29930 scalar_type: Box::new(scalar_type),
29931 r#in: Box::new(r#in),
29932 for_statement_opt,
29933 range: Box::new(range),
29934 for_statement_opt0,
29935 statement_block: Box::new(statement_block),
29936 };
29937 self.user_grammar.for_statement(&for_statement_built)?;
29939 self.push(ASTType::ForStatement(for_statement_built), context);
29940 Ok(())
29941 }
29942
29943 #[parol_runtime::function_name::named]
29948 fn for_statement_opt0_0(
29949 &mut self,
29950 _step: &ParseTreeType<'t>,
29951 _assignment_operator: &ParseTreeType<'t>,
29952 _expression: &ParseTreeType<'t>,
29953 ) -> Result<()> {
29954 let context = function_name!();
29955 trace!("{}", self.trace_item_stack(context));
29956 let expression = pop_item!(self, expression, Expression, context);
29957 let assignment_operator = pop_item!(self, assignment_operator, AssignmentOperator, context);
29958 let step = pop_item!(self, step, Step, context);
29959 let for_statement_opt0_0_built = ForStatementOpt0 {
29960 step: Box::new(step),
29961 assignment_operator: Box::new(assignment_operator),
29962 expression: Box::new(expression),
29963 };
29964 self.push(
29965 ASTType::ForStatementOpt0(Some(for_statement_opt0_0_built)),
29966 context,
29967 );
29968 Ok(())
29969 }
29970
29971 #[parol_runtime::function_name::named]
29976 fn for_statement_opt0_1(&mut self) -> Result<()> {
29977 let context = function_name!();
29978 trace!("{}", self.trace_item_stack(context));
29979 self.push(ASTType::ForStatementOpt0(None), context);
29980 Ok(())
29981 }
29982
29983 #[parol_runtime::function_name::named]
29988 fn for_statement_opt_0(&mut self, _rev: &ParseTreeType<'t>) -> Result<()> {
29989 let context = function_name!();
29990 trace!("{}", self.trace_item_stack(context));
29991 let rev = pop_item!(self, rev, Rev, context);
29992 let for_statement_opt_0_built = ForStatementOpt { rev: Box::new(rev) };
29993 self.push(
29994 ASTType::ForStatementOpt(Some(for_statement_opt_0_built)),
29995 context,
29996 );
29997 Ok(())
29998 }
29999
30000 #[parol_runtime::function_name::named]
30005 fn for_statement_opt_1(&mut self) -> Result<()> {
30006 let context = function_name!();
30007 trace!("{}", self.trace_item_stack(context));
30008 self.push(ASTType::ForStatementOpt(None), context);
30009 Ok(())
30010 }
30011
30012 #[parol_runtime::function_name::named]
30017 fn case_statement(
30018 &mut self,
30019 _case: &ParseTreeType<'t>,
30020 _expression: &ParseTreeType<'t>,
30021 _l_brace: &ParseTreeType<'t>,
30022 _case_statement_list: &ParseTreeType<'t>,
30023 _r_brace: &ParseTreeType<'t>,
30024 ) -> Result<()> {
30025 let context = function_name!();
30026 trace!("{}", self.trace_item_stack(context));
30027 let r_brace = pop_item!(self, r_brace, RBrace, context);
30028 let case_statement_list =
30029 pop_and_reverse_item!(self, case_statement_list, CaseStatementList, context);
30030 let l_brace = pop_item!(self, l_brace, LBrace, context);
30031 let expression = pop_item!(self, expression, Expression, context);
30032 let case = pop_item!(self, case, Case, context);
30033 let case_statement_built = CaseStatement {
30034 case: Box::new(case),
30035 expression: Box::new(expression),
30036 l_brace: Box::new(l_brace),
30037 case_statement_list,
30038 r_brace: Box::new(r_brace),
30039 };
30040 self.user_grammar.case_statement(&case_statement_built)?;
30042 self.push(ASTType::CaseStatement(case_statement_built), context);
30043 Ok(())
30044 }
30045
30046 #[parol_runtime::function_name::named]
30051 fn case_statement_list_0(
30052 &mut self,
30053 _case_item: &ParseTreeType<'t>,
30054 _case_statement_list: &ParseTreeType<'t>,
30055 ) -> Result<()> {
30056 let context = function_name!();
30057 trace!("{}", self.trace_item_stack(context));
30058 let mut case_statement_list =
30059 pop_item!(self, case_statement_list, CaseStatementList, context);
30060 let case_item = pop_item!(self, case_item, CaseItem, context);
30061 let case_statement_list_0_built = CaseStatementList {
30062 case_item: Box::new(case_item),
30063 };
30064 case_statement_list.push(case_statement_list_0_built);
30066 self.push(ASTType::CaseStatementList(case_statement_list), context);
30067 Ok(())
30068 }
30069
30070 #[parol_runtime::function_name::named]
30075 fn case_statement_list_1(&mut self) -> Result<()> {
30076 let context = function_name!();
30077 trace!("{}", self.trace_item_stack(context));
30078 let case_statement_list_1_built = Vec::new();
30079 self.push(
30080 ASTType::CaseStatementList(case_statement_list_1_built),
30081 context,
30082 );
30083 Ok(())
30084 }
30085
30086 #[parol_runtime::function_name::named]
30091 fn case_item(
30092 &mut self,
30093 _case_item_group: &ParseTreeType<'t>,
30094 _colon: &ParseTreeType<'t>,
30095 _case_item_group0: &ParseTreeType<'t>,
30096 ) -> Result<()> {
30097 let context = function_name!();
30098 trace!("{}", self.trace_item_stack(context));
30099 let case_item_group0 = pop_item!(self, case_item_group0, CaseItemGroup0, context);
30100 let colon = pop_item!(self, colon, Colon, context);
30101 let case_item_group = pop_item!(self, case_item_group, CaseItemGroup, context);
30102 let case_item_built = CaseItem {
30103 case_item_group: Box::new(case_item_group),
30104 colon: Box::new(colon),
30105 case_item_group0: Box::new(case_item_group0),
30106 };
30107 self.user_grammar.case_item(&case_item_built)?;
30109 self.push(ASTType::CaseItem(case_item_built), context);
30110 Ok(())
30111 }
30112
30113 #[parol_runtime::function_name::named]
30118 fn case_item_group0_0(&mut self, _statement: &ParseTreeType<'t>) -> Result<()> {
30119 let context = function_name!();
30120 trace!("{}", self.trace_item_stack(context));
30121 let statement = pop_item!(self, statement, Statement, context);
30122 let case_item_group0_0_built = CaseItemGroup0Statement {
30123 statement: Box::new(statement),
30124 };
30125 let case_item_group0_0_built = CaseItemGroup0::Statement(case_item_group0_0_built);
30126 self.push(ASTType::CaseItemGroup0(case_item_group0_0_built), context);
30127 Ok(())
30128 }
30129
30130 #[parol_runtime::function_name::named]
30135 fn case_item_group0_1(&mut self, _statement_block: &ParseTreeType<'t>) -> Result<()> {
30136 let context = function_name!();
30137 trace!("{}", self.trace_item_stack(context));
30138 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
30139 let case_item_group0_1_built = CaseItemGroup0StatementBlock {
30140 statement_block: Box::new(statement_block),
30141 };
30142 let case_item_group0_1_built = CaseItemGroup0::StatementBlock(case_item_group0_1_built);
30143 self.push(ASTType::CaseItemGroup0(case_item_group0_1_built), context);
30144 Ok(())
30145 }
30146
30147 #[parol_runtime::function_name::named]
30152 fn case_item_group_0(&mut self, _case_condition: &ParseTreeType<'t>) -> Result<()> {
30153 let context = function_name!();
30154 trace!("{}", self.trace_item_stack(context));
30155 let case_condition = pop_item!(self, case_condition, CaseCondition, context);
30156 let case_item_group_0_built = CaseItemGroupCaseCondition {
30157 case_condition: Box::new(case_condition),
30158 };
30159 let case_item_group_0_built = CaseItemGroup::CaseCondition(case_item_group_0_built);
30160 self.push(ASTType::CaseItemGroup(case_item_group_0_built), context);
30161 Ok(())
30162 }
30163
30164 #[parol_runtime::function_name::named]
30169 fn case_item_group_1(&mut self, _defaul: &ParseTreeType<'t>) -> Result<()> {
30170 let context = function_name!();
30171 trace!("{}", self.trace_item_stack(context));
30172 let defaul = pop_item!(self, defaul, Defaul, context);
30173 let case_item_group_1_built = CaseItemGroupDefaul {
30174 defaul: Box::new(defaul),
30175 };
30176 let case_item_group_1_built = CaseItemGroup::Defaul(case_item_group_1_built);
30177 self.push(ASTType::CaseItemGroup(case_item_group_1_built), context);
30178 Ok(())
30179 }
30180
30181 #[parol_runtime::function_name::named]
30186 fn case_condition(
30187 &mut self,
30188 _range_item: &ParseTreeType<'t>,
30189 _case_condition_list: &ParseTreeType<'t>,
30190 ) -> Result<()> {
30191 let context = function_name!();
30192 trace!("{}", self.trace_item_stack(context));
30193 let case_condition_list =
30194 pop_and_reverse_item!(self, case_condition_list, CaseConditionList, context);
30195 let range_item = pop_item!(self, range_item, RangeItem, context);
30196 let case_condition_built = CaseCondition {
30197 range_item: Box::new(range_item),
30198 case_condition_list,
30199 };
30200 self.user_grammar.case_condition(&case_condition_built)?;
30202 self.push(ASTType::CaseCondition(case_condition_built), context);
30203 Ok(())
30204 }
30205
30206 #[parol_runtime::function_name::named]
30211 fn case_condition_list_0(
30212 &mut self,
30213 _comma: &ParseTreeType<'t>,
30214 _range_item: &ParseTreeType<'t>,
30215 _case_condition_list: &ParseTreeType<'t>,
30216 ) -> Result<()> {
30217 let context = function_name!();
30218 trace!("{}", self.trace_item_stack(context));
30219 let mut case_condition_list =
30220 pop_item!(self, case_condition_list, CaseConditionList, context);
30221 let range_item = pop_item!(self, range_item, RangeItem, context);
30222 let comma = pop_item!(self, comma, Comma, context);
30223 let case_condition_list_0_built = CaseConditionList {
30224 range_item: Box::new(range_item),
30225 comma: Box::new(comma),
30226 };
30227 case_condition_list.push(case_condition_list_0_built);
30229 self.push(ASTType::CaseConditionList(case_condition_list), context);
30230 Ok(())
30231 }
30232
30233 #[parol_runtime::function_name::named]
30238 fn case_condition_list_1(&mut self) -> Result<()> {
30239 let context = function_name!();
30240 trace!("{}", self.trace_item_stack(context));
30241 let case_condition_list_1_built = Vec::new();
30242 self.push(
30243 ASTType::CaseConditionList(case_condition_list_1_built),
30244 context,
30245 );
30246 Ok(())
30247 }
30248
30249 #[parol_runtime::function_name::named]
30254 fn switch_statement(
30255 &mut self,
30256 _switch: &ParseTreeType<'t>,
30257 _l_brace: &ParseTreeType<'t>,
30258 _switch_statement_list: &ParseTreeType<'t>,
30259 _r_brace: &ParseTreeType<'t>,
30260 ) -> Result<()> {
30261 let context = function_name!();
30262 trace!("{}", self.trace_item_stack(context));
30263 let r_brace = pop_item!(self, r_brace, RBrace, context);
30264 let switch_statement_list =
30265 pop_and_reverse_item!(self, switch_statement_list, SwitchStatementList, context);
30266 let l_brace = pop_item!(self, l_brace, LBrace, context);
30267 let switch = pop_item!(self, switch, Switch, context);
30268 let switch_statement_built = SwitchStatement {
30269 switch: Box::new(switch),
30270 l_brace: Box::new(l_brace),
30271 switch_statement_list,
30272 r_brace: Box::new(r_brace),
30273 };
30274 self.user_grammar
30276 .switch_statement(&switch_statement_built)?;
30277 self.push(ASTType::SwitchStatement(switch_statement_built), context);
30278 Ok(())
30279 }
30280
30281 #[parol_runtime::function_name::named]
30286 fn switch_statement_list_0(
30287 &mut self,
30288 _switch_item: &ParseTreeType<'t>,
30289 _switch_statement_list: &ParseTreeType<'t>,
30290 ) -> Result<()> {
30291 let context = function_name!();
30292 trace!("{}", self.trace_item_stack(context));
30293 let mut switch_statement_list =
30294 pop_item!(self, switch_statement_list, SwitchStatementList, context);
30295 let switch_item = pop_item!(self, switch_item, SwitchItem, context);
30296 let switch_statement_list_0_built = SwitchStatementList {
30297 switch_item: Box::new(switch_item),
30298 };
30299 switch_statement_list.push(switch_statement_list_0_built);
30301 self.push(ASTType::SwitchStatementList(switch_statement_list), context);
30302 Ok(())
30303 }
30304
30305 #[parol_runtime::function_name::named]
30310 fn switch_statement_list_1(&mut self) -> Result<()> {
30311 let context = function_name!();
30312 trace!("{}", self.trace_item_stack(context));
30313 let switch_statement_list_1_built = Vec::new();
30314 self.push(
30315 ASTType::SwitchStatementList(switch_statement_list_1_built),
30316 context,
30317 );
30318 Ok(())
30319 }
30320
30321 #[parol_runtime::function_name::named]
30326 fn switch_item(
30327 &mut self,
30328 _switch_item_group: &ParseTreeType<'t>,
30329 _colon: &ParseTreeType<'t>,
30330 _switch_item_group0: &ParseTreeType<'t>,
30331 ) -> Result<()> {
30332 let context = function_name!();
30333 trace!("{}", self.trace_item_stack(context));
30334 let switch_item_group0 = pop_item!(self, switch_item_group0, SwitchItemGroup0, context);
30335 let colon = pop_item!(self, colon, Colon, context);
30336 let switch_item_group = pop_item!(self, switch_item_group, SwitchItemGroup, context);
30337 let switch_item_built = SwitchItem {
30338 switch_item_group: Box::new(switch_item_group),
30339 colon: Box::new(colon),
30340 switch_item_group0: Box::new(switch_item_group0),
30341 };
30342 self.user_grammar.switch_item(&switch_item_built)?;
30344 self.push(ASTType::SwitchItem(switch_item_built), context);
30345 Ok(())
30346 }
30347
30348 #[parol_runtime::function_name::named]
30353 fn switch_item_group0_0(&mut self, _statement: &ParseTreeType<'t>) -> Result<()> {
30354 let context = function_name!();
30355 trace!("{}", self.trace_item_stack(context));
30356 let statement = pop_item!(self, statement, Statement, context);
30357 let switch_item_group0_0_built = SwitchItemGroup0Statement {
30358 statement: Box::new(statement),
30359 };
30360 let switch_item_group0_0_built = SwitchItemGroup0::Statement(switch_item_group0_0_built);
30361 self.push(
30362 ASTType::SwitchItemGroup0(switch_item_group0_0_built),
30363 context,
30364 );
30365 Ok(())
30366 }
30367
30368 #[parol_runtime::function_name::named]
30373 fn switch_item_group0_1(&mut self, _statement_block: &ParseTreeType<'t>) -> Result<()> {
30374 let context = function_name!();
30375 trace!("{}", self.trace_item_stack(context));
30376 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
30377 let switch_item_group0_1_built = SwitchItemGroup0StatementBlock {
30378 statement_block: Box::new(statement_block),
30379 };
30380 let switch_item_group0_1_built =
30381 SwitchItemGroup0::StatementBlock(switch_item_group0_1_built);
30382 self.push(
30383 ASTType::SwitchItemGroup0(switch_item_group0_1_built),
30384 context,
30385 );
30386 Ok(())
30387 }
30388
30389 #[parol_runtime::function_name::named]
30394 fn switch_item_group_0(&mut self, _switch_condition: &ParseTreeType<'t>) -> Result<()> {
30395 let context = function_name!();
30396 trace!("{}", self.trace_item_stack(context));
30397 let switch_condition = pop_item!(self, switch_condition, SwitchCondition, context);
30398 let switch_item_group_0_built = SwitchItemGroupSwitchCondition {
30399 switch_condition: Box::new(switch_condition),
30400 };
30401 let switch_item_group_0_built = SwitchItemGroup::SwitchCondition(switch_item_group_0_built);
30402 self.push(ASTType::SwitchItemGroup(switch_item_group_0_built), context);
30403 Ok(())
30404 }
30405
30406 #[parol_runtime::function_name::named]
30411 fn switch_item_group_1(&mut self, _defaul: &ParseTreeType<'t>) -> Result<()> {
30412 let context = function_name!();
30413 trace!("{}", self.trace_item_stack(context));
30414 let defaul = pop_item!(self, defaul, Defaul, context);
30415 let switch_item_group_1_built = SwitchItemGroupDefaul {
30416 defaul: Box::new(defaul),
30417 };
30418 let switch_item_group_1_built = SwitchItemGroup::Defaul(switch_item_group_1_built);
30419 self.push(ASTType::SwitchItemGroup(switch_item_group_1_built), context);
30420 Ok(())
30421 }
30422
30423 #[parol_runtime::function_name::named]
30428 fn switch_condition(
30429 &mut self,
30430 _expression: &ParseTreeType<'t>,
30431 _switch_condition_list: &ParseTreeType<'t>,
30432 ) -> Result<()> {
30433 let context = function_name!();
30434 trace!("{}", self.trace_item_stack(context));
30435 let switch_condition_list =
30436 pop_and_reverse_item!(self, switch_condition_list, SwitchConditionList, context);
30437 let expression = pop_item!(self, expression, Expression, context);
30438 let switch_condition_built = SwitchCondition {
30439 expression: Box::new(expression),
30440 switch_condition_list,
30441 };
30442 self.user_grammar
30444 .switch_condition(&switch_condition_built)?;
30445 self.push(ASTType::SwitchCondition(switch_condition_built), context);
30446 Ok(())
30447 }
30448
30449 #[parol_runtime::function_name::named]
30454 fn switch_condition_list_0(
30455 &mut self,
30456 _comma: &ParseTreeType<'t>,
30457 _expression: &ParseTreeType<'t>,
30458 _switch_condition_list: &ParseTreeType<'t>,
30459 ) -> Result<()> {
30460 let context = function_name!();
30461 trace!("{}", self.trace_item_stack(context));
30462 let mut switch_condition_list =
30463 pop_item!(self, switch_condition_list, SwitchConditionList, context);
30464 let expression = pop_item!(self, expression, Expression, context);
30465 let comma = pop_item!(self, comma, Comma, context);
30466 let switch_condition_list_0_built = SwitchConditionList {
30467 expression: Box::new(expression),
30468 comma: Box::new(comma),
30469 };
30470 switch_condition_list.push(switch_condition_list_0_built);
30472 self.push(ASTType::SwitchConditionList(switch_condition_list), context);
30473 Ok(())
30474 }
30475
30476 #[parol_runtime::function_name::named]
30481 fn switch_condition_list_1(&mut self) -> Result<()> {
30482 let context = function_name!();
30483 trace!("{}", self.trace_item_stack(context));
30484 let switch_condition_list_1_built = Vec::new();
30485 self.push(
30486 ASTType::SwitchConditionList(switch_condition_list_1_built),
30487 context,
30488 );
30489 Ok(())
30490 }
30491
30492 #[parol_runtime::function_name::named]
30497 fn attribute(
30498 &mut self,
30499 _hash_l_bracket: &ParseTreeType<'t>,
30500 _identifier: &ParseTreeType<'t>,
30501 _attribute_opt: &ParseTreeType<'t>,
30502 _r_bracket: &ParseTreeType<'t>,
30503 ) -> Result<()> {
30504 let context = function_name!();
30505 trace!("{}", self.trace_item_stack(context));
30506 let r_bracket = pop_item!(self, r_bracket, RBracket, context);
30507 let attribute_opt = pop_item!(self, attribute_opt, AttributeOpt, context);
30508 let identifier = pop_item!(self, identifier, Identifier, context);
30509 let hash_l_bracket = pop_item!(self, hash_l_bracket, HashLBracket, context);
30510 let attribute_built = Attribute {
30511 hash_l_bracket: Box::new(hash_l_bracket),
30512 identifier: Box::new(identifier),
30513 attribute_opt,
30514 r_bracket: Box::new(r_bracket),
30515 };
30516 self.user_grammar.attribute(&attribute_built)?;
30518 self.push(ASTType::Attribute(attribute_built), context);
30519 Ok(())
30520 }
30521
30522 #[parol_runtime::function_name::named]
30527 fn attribute_opt_0(
30528 &mut self,
30529 _l_paren: &ParseTreeType<'t>,
30530 _attribute_list: &ParseTreeType<'t>,
30531 _r_paren: &ParseTreeType<'t>,
30532 ) -> Result<()> {
30533 let context = function_name!();
30534 trace!("{}", self.trace_item_stack(context));
30535 let r_paren = pop_item!(self, r_paren, RParen, context);
30536 let attribute_list = pop_item!(self, attribute_list, AttributeList, context);
30537 let l_paren = pop_item!(self, l_paren, LParen, context);
30538 let attribute_opt_0_built = AttributeOpt {
30539 l_paren: Box::new(l_paren),
30540 attribute_list: Box::new(attribute_list),
30541 r_paren: Box::new(r_paren),
30542 };
30543 self.push(ASTType::AttributeOpt(Some(attribute_opt_0_built)), context);
30544 Ok(())
30545 }
30546
30547 #[parol_runtime::function_name::named]
30552 fn attribute_opt_1(&mut self) -> Result<()> {
30553 let context = function_name!();
30554 trace!("{}", self.trace_item_stack(context));
30555 self.push(ASTType::AttributeOpt(None), context);
30556 Ok(())
30557 }
30558
30559 #[parol_runtime::function_name::named]
30564 fn attribute_list(
30565 &mut self,
30566 _attribute_item: &ParseTreeType<'t>,
30567 _attribute_list_list: &ParseTreeType<'t>,
30568 _attribute_list_opt: &ParseTreeType<'t>,
30569 ) -> Result<()> {
30570 let context = function_name!();
30571 trace!("{}", self.trace_item_stack(context));
30572 let attribute_list_opt = pop_item!(self, attribute_list_opt, AttributeListOpt, context);
30573 let attribute_list_list =
30574 pop_and_reverse_item!(self, attribute_list_list, AttributeListList, context);
30575 let attribute_item = pop_item!(self, attribute_item, AttributeItem, context);
30576 let attribute_list_built = AttributeList {
30577 attribute_item: Box::new(attribute_item),
30578 attribute_list_list,
30579 attribute_list_opt,
30580 };
30581 self.user_grammar.attribute_list(&attribute_list_built)?;
30583 self.push(ASTType::AttributeList(attribute_list_built), context);
30584 Ok(())
30585 }
30586
30587 #[parol_runtime::function_name::named]
30592 fn attribute_list_list_0(
30593 &mut self,
30594 _comma: &ParseTreeType<'t>,
30595 _attribute_item: &ParseTreeType<'t>,
30596 _attribute_list_list: &ParseTreeType<'t>,
30597 ) -> Result<()> {
30598 let context = function_name!();
30599 trace!("{}", self.trace_item_stack(context));
30600 let mut attribute_list_list =
30601 pop_item!(self, attribute_list_list, AttributeListList, context);
30602 let attribute_item = pop_item!(self, attribute_item, AttributeItem, context);
30603 let comma = pop_item!(self, comma, Comma, context);
30604 let attribute_list_list_0_built = AttributeListList {
30605 attribute_item: Box::new(attribute_item),
30606 comma: Box::new(comma),
30607 };
30608 attribute_list_list.push(attribute_list_list_0_built);
30610 self.push(ASTType::AttributeListList(attribute_list_list), context);
30611 Ok(())
30612 }
30613
30614 #[parol_runtime::function_name::named]
30619 fn attribute_list_list_1(&mut self) -> Result<()> {
30620 let context = function_name!();
30621 trace!("{}", self.trace_item_stack(context));
30622 let attribute_list_list_1_built = Vec::new();
30623 self.push(
30624 ASTType::AttributeListList(attribute_list_list_1_built),
30625 context,
30626 );
30627 Ok(())
30628 }
30629
30630 #[parol_runtime::function_name::named]
30635 fn attribute_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
30636 let context = function_name!();
30637 trace!("{}", self.trace_item_stack(context));
30638 let comma = pop_item!(self, comma, Comma, context);
30639 let attribute_list_opt_0_built = AttributeListOpt {
30640 comma: Box::new(comma),
30641 };
30642 self.push(
30643 ASTType::AttributeListOpt(Some(attribute_list_opt_0_built)),
30644 context,
30645 );
30646 Ok(())
30647 }
30648
30649 #[parol_runtime::function_name::named]
30654 fn attribute_list_opt_1(&mut self) -> Result<()> {
30655 let context = function_name!();
30656 trace!("{}", self.trace_item_stack(context));
30657 self.push(ASTType::AttributeListOpt(None), context);
30658 Ok(())
30659 }
30660
30661 #[parol_runtime::function_name::named]
30666 fn attribute_item_0(&mut self, _identifier: &ParseTreeType<'t>) -> Result<()> {
30667 let context = function_name!();
30668 trace!("{}", self.trace_item_stack(context));
30669 let identifier = pop_item!(self, identifier, Identifier, context);
30670 let attribute_item_0_built = AttributeItemIdentifier {
30671 identifier: Box::new(identifier),
30672 };
30673 let attribute_item_0_built = AttributeItem::Identifier(attribute_item_0_built);
30674 self.user_grammar.attribute_item(&attribute_item_0_built)?;
30676 self.push(ASTType::AttributeItem(attribute_item_0_built), context);
30677 Ok(())
30678 }
30679
30680 #[parol_runtime::function_name::named]
30685 fn attribute_item_1(&mut self, _string_literal: &ParseTreeType<'t>) -> Result<()> {
30686 let context = function_name!();
30687 trace!("{}", self.trace_item_stack(context));
30688 let string_literal = pop_item!(self, string_literal, StringLiteral, context);
30689 let attribute_item_1_built = AttributeItemStringLiteral {
30690 string_literal: Box::new(string_literal),
30691 };
30692 let attribute_item_1_built = AttributeItem::StringLiteral(attribute_item_1_built);
30693 self.user_grammar.attribute_item(&attribute_item_1_built)?;
30695 self.push(ASTType::AttributeItem(attribute_item_1_built), context);
30696 Ok(())
30697 }
30698
30699 #[parol_runtime::function_name::named]
30704 fn let_declaration(
30705 &mut self,
30706 _let: &ParseTreeType<'t>,
30707 _identifier: &ParseTreeType<'t>,
30708 _colon: &ParseTreeType<'t>,
30709 _let_declaration_opt: &ParseTreeType<'t>,
30710 _array_type: &ParseTreeType<'t>,
30711 _equ: &ParseTreeType<'t>,
30712 _expression: &ParseTreeType<'t>,
30713 _semicolon: &ParseTreeType<'t>,
30714 ) -> Result<()> {
30715 let context = function_name!();
30716 trace!("{}", self.trace_item_stack(context));
30717 let semicolon = pop_item!(self, semicolon, Semicolon, context);
30718 let expression = pop_item!(self, expression, Expression, context);
30719 let equ = pop_item!(self, equ, Equ, context);
30720 let array_type = pop_item!(self, array_type, ArrayType, context);
30721 let let_declaration_opt = pop_item!(self, let_declaration_opt, LetDeclarationOpt, context);
30722 let colon = pop_item!(self, colon, Colon, context);
30723 let identifier = pop_item!(self, identifier, Identifier, context);
30724 let r#let = pop_item!(self, r#let, Let, context);
30725 let let_declaration_built = LetDeclaration {
30726 r#let: Box::new(r#let),
30727 identifier: Box::new(identifier),
30728 colon: Box::new(colon),
30729 let_declaration_opt,
30730 array_type: Box::new(array_type),
30731 equ: Box::new(equ),
30732 expression: Box::new(expression),
30733 semicolon: Box::new(semicolon),
30734 };
30735 self.user_grammar.let_declaration(&let_declaration_built)?;
30737 self.push(ASTType::LetDeclaration(let_declaration_built), context);
30738 Ok(())
30739 }
30740
30741 #[parol_runtime::function_name::named]
30746 fn let_declaration_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
30747 let context = function_name!();
30748 trace!("{}", self.trace_item_stack(context));
30749 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
30750 let let_declaration_opt_0_built = LetDeclarationOpt {
30751 clock_domain: Box::new(clock_domain),
30752 };
30753 self.push(
30754 ASTType::LetDeclarationOpt(Some(let_declaration_opt_0_built)),
30755 context,
30756 );
30757 Ok(())
30758 }
30759
30760 #[parol_runtime::function_name::named]
30765 fn let_declaration_opt_1(&mut self) -> Result<()> {
30766 let context = function_name!();
30767 trace!("{}", self.trace_item_stack(context));
30768 self.push(ASTType::LetDeclarationOpt(None), context);
30769 Ok(())
30770 }
30771
30772 #[parol_runtime::function_name::named]
30777 fn var_declaration(
30778 &mut self,
30779 _var: &ParseTreeType<'t>,
30780 _identifier: &ParseTreeType<'t>,
30781 _colon: &ParseTreeType<'t>,
30782 _var_declaration_opt: &ParseTreeType<'t>,
30783 _array_type: &ParseTreeType<'t>,
30784 _semicolon: &ParseTreeType<'t>,
30785 ) -> Result<()> {
30786 let context = function_name!();
30787 trace!("{}", self.trace_item_stack(context));
30788 let semicolon = pop_item!(self, semicolon, Semicolon, context);
30789 let array_type = pop_item!(self, array_type, ArrayType, context);
30790 let var_declaration_opt = pop_item!(self, var_declaration_opt, VarDeclarationOpt, context);
30791 let colon = pop_item!(self, colon, Colon, context);
30792 let identifier = pop_item!(self, identifier, Identifier, context);
30793 let var = pop_item!(self, var, Var, context);
30794 let var_declaration_built = VarDeclaration {
30795 var: Box::new(var),
30796 identifier: Box::new(identifier),
30797 colon: Box::new(colon),
30798 var_declaration_opt,
30799 array_type: Box::new(array_type),
30800 semicolon: Box::new(semicolon),
30801 };
30802 self.user_grammar.var_declaration(&var_declaration_built)?;
30804 self.push(ASTType::VarDeclaration(var_declaration_built), context);
30805 Ok(())
30806 }
30807
30808 #[parol_runtime::function_name::named]
30813 fn var_declaration_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
30814 let context = function_name!();
30815 trace!("{}", self.trace_item_stack(context));
30816 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
30817 let var_declaration_opt_0_built = VarDeclarationOpt {
30818 clock_domain: Box::new(clock_domain),
30819 };
30820 self.push(
30821 ASTType::VarDeclarationOpt(Some(var_declaration_opt_0_built)),
30822 context,
30823 );
30824 Ok(())
30825 }
30826
30827 #[parol_runtime::function_name::named]
30832 fn var_declaration_opt_1(&mut self) -> Result<()> {
30833 let context = function_name!();
30834 trace!("{}", self.trace_item_stack(context));
30835 self.push(ASTType::VarDeclarationOpt(None), context);
30836 Ok(())
30837 }
30838
30839 #[parol_runtime::function_name::named]
30844 fn const_declaration(
30845 &mut self,
30846 _const: &ParseTreeType<'t>,
30847 _identifier: &ParseTreeType<'t>,
30848 _colon: &ParseTreeType<'t>,
30849 _const_declaration_group: &ParseTreeType<'t>,
30850 _equ: &ParseTreeType<'t>,
30851 _expression: &ParseTreeType<'t>,
30852 _semicolon: &ParseTreeType<'t>,
30853 ) -> Result<()> {
30854 let context = function_name!();
30855 trace!("{}", self.trace_item_stack(context));
30856 let semicolon = pop_item!(self, semicolon, Semicolon, context);
30857 let expression = pop_item!(self, expression, Expression, context);
30858 let equ = pop_item!(self, equ, Equ, context);
30859 let const_declaration_group = pop_item!(
30860 self,
30861 const_declaration_group,
30862 ConstDeclarationGroup,
30863 context
30864 );
30865 let colon = pop_item!(self, colon, Colon, context);
30866 let identifier = pop_item!(self, identifier, Identifier, context);
30867 let r#const = pop_item!(self, r#const, Const, context);
30868 let const_declaration_built = ConstDeclaration {
30869 r#const: Box::new(r#const),
30870 identifier: Box::new(identifier),
30871 colon: Box::new(colon),
30872 const_declaration_group: Box::new(const_declaration_group),
30873 equ: Box::new(equ),
30874 expression: Box::new(expression),
30875 semicolon: Box::new(semicolon),
30876 };
30877 self.user_grammar
30879 .const_declaration(&const_declaration_built)?;
30880 self.push(ASTType::ConstDeclaration(const_declaration_built), context);
30881 Ok(())
30882 }
30883
30884 #[parol_runtime::function_name::named]
30889 fn const_declaration_group_0(&mut self, _array_type: &ParseTreeType<'t>) -> Result<()> {
30890 let context = function_name!();
30891 trace!("{}", self.trace_item_stack(context));
30892 let array_type = pop_item!(self, array_type, ArrayType, context);
30893 let const_declaration_group_0_built = ConstDeclarationGroupArrayType {
30894 array_type: Box::new(array_type),
30895 };
30896 let const_declaration_group_0_built =
30897 ConstDeclarationGroup::ArrayType(const_declaration_group_0_built);
30898 self.push(
30899 ASTType::ConstDeclarationGroup(const_declaration_group_0_built),
30900 context,
30901 );
30902 Ok(())
30903 }
30904
30905 #[parol_runtime::function_name::named]
30910 fn const_declaration_group_1(&mut self, _type: &ParseTreeType<'t>) -> Result<()> {
30911 let context = function_name!();
30912 trace!("{}", self.trace_item_stack(context));
30913 let r#type = pop_item!(self, r#type, Type, context);
30914 let const_declaration_group_1_built = ConstDeclarationGroupType {
30915 r#type: Box::new(r#type),
30916 };
30917 let const_declaration_group_1_built =
30918 ConstDeclarationGroup::Type(const_declaration_group_1_built);
30919 self.push(
30920 ASTType::ConstDeclarationGroup(const_declaration_group_1_built),
30921 context,
30922 );
30923 Ok(())
30924 }
30925
30926 #[parol_runtime::function_name::named]
30931 fn type_def_declaration(
30932 &mut self,
30933 _type: &ParseTreeType<'t>,
30934 _identifier: &ParseTreeType<'t>,
30935 _equ: &ParseTreeType<'t>,
30936 _array_type: &ParseTreeType<'t>,
30937 _semicolon: &ParseTreeType<'t>,
30938 ) -> Result<()> {
30939 let context = function_name!();
30940 trace!("{}", self.trace_item_stack(context));
30941 let semicolon = pop_item!(self, semicolon, Semicolon, context);
30942 let array_type = pop_item!(self, array_type, ArrayType, context);
30943 let equ = pop_item!(self, equ, Equ, context);
30944 let identifier = pop_item!(self, identifier, Identifier, context);
30945 let r#type = pop_item!(self, r#type, Type, context);
30946 let type_def_declaration_built = TypeDefDeclaration {
30947 r#type: Box::new(r#type),
30948 identifier: Box::new(identifier),
30949 equ: Box::new(equ),
30950 array_type: Box::new(array_type),
30951 semicolon: Box::new(semicolon),
30952 };
30953 self.user_grammar
30955 .type_def_declaration(&type_def_declaration_built)?;
30956 self.push(
30957 ASTType::TypeDefDeclaration(type_def_declaration_built),
30958 context,
30959 );
30960 Ok(())
30961 }
30962
30963 #[parol_runtime::function_name::named]
30968 fn always_ff_declaration(
30969 &mut self,
30970 _always_ff: &ParseTreeType<'t>,
30971 _always_ff_declaration_opt: &ParseTreeType<'t>,
30972 _statement_block: &ParseTreeType<'t>,
30973 ) -> Result<()> {
30974 let context = function_name!();
30975 trace!("{}", self.trace_item_stack(context));
30976 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
30977 let always_ff_declaration_opt = pop_item!(
30978 self,
30979 always_ff_declaration_opt,
30980 AlwaysFfDeclarationOpt,
30981 context
30982 );
30983 let always_ff = pop_item!(self, always_ff, AlwaysFf, context);
30984 let always_ff_declaration_built = AlwaysFfDeclaration {
30985 always_ff: Box::new(always_ff),
30986 always_ff_declaration_opt,
30987 statement_block: Box::new(statement_block),
30988 };
30989 self.user_grammar
30991 .always_ff_declaration(&always_ff_declaration_built)?;
30992 self.push(
30993 ASTType::AlwaysFfDeclaration(always_ff_declaration_built),
30994 context,
30995 );
30996 Ok(())
30997 }
30998
30999 #[parol_runtime::function_name::named]
31004 fn always_ff_declaration_opt_0(
31005 &mut self,
31006 _always_ff_event_list: &ParseTreeType<'t>,
31007 ) -> Result<()> {
31008 let context = function_name!();
31009 trace!("{}", self.trace_item_stack(context));
31010 let always_ff_event_list =
31011 pop_item!(self, always_ff_event_list, AlwaysFfEventList, context);
31012 let always_ff_declaration_opt_0_built = AlwaysFfDeclarationOpt {
31013 always_ff_event_list: Box::new(always_ff_event_list),
31014 };
31015 self.push(
31016 ASTType::AlwaysFfDeclarationOpt(Some(always_ff_declaration_opt_0_built)),
31017 context,
31018 );
31019 Ok(())
31020 }
31021
31022 #[parol_runtime::function_name::named]
31027 fn always_ff_declaration_opt_1(&mut self) -> Result<()> {
31028 let context = function_name!();
31029 trace!("{}", self.trace_item_stack(context));
31030 self.push(ASTType::AlwaysFfDeclarationOpt(None), context);
31031 Ok(())
31032 }
31033
31034 #[parol_runtime::function_name::named]
31039 fn always_ff_event_list(
31040 &mut self,
31041 _l_paren: &ParseTreeType<'t>,
31042 _always_ff_clock: &ParseTreeType<'t>,
31043 _always_ff_event_list_opt: &ParseTreeType<'t>,
31044 _r_paren: &ParseTreeType<'t>,
31045 ) -> Result<()> {
31046 let context = function_name!();
31047 trace!("{}", self.trace_item_stack(context));
31048 let r_paren = pop_item!(self, r_paren, RParen, context);
31049 let always_ff_event_list_opt = pop_item!(
31050 self,
31051 always_ff_event_list_opt,
31052 AlwaysFfEventListOpt,
31053 context
31054 );
31055 let always_ff_clock = pop_item!(self, always_ff_clock, AlwaysFfClock, context);
31056 let l_paren = pop_item!(self, l_paren, LParen, context);
31057 let always_ff_event_list_built = AlwaysFfEventList {
31058 l_paren: Box::new(l_paren),
31059 always_ff_clock: Box::new(always_ff_clock),
31060 always_ff_event_list_opt,
31061 r_paren: Box::new(r_paren),
31062 };
31063 self.user_grammar
31065 .always_ff_event_list(&always_ff_event_list_built)?;
31066 self.push(
31067 ASTType::AlwaysFfEventList(always_ff_event_list_built),
31068 context,
31069 );
31070 Ok(())
31071 }
31072
31073 #[parol_runtime::function_name::named]
31078 fn always_ff_event_list_opt_0(
31079 &mut self,
31080 _comma: &ParseTreeType<'t>,
31081 _always_ff_reset: &ParseTreeType<'t>,
31082 ) -> Result<()> {
31083 let context = function_name!();
31084 trace!("{}", self.trace_item_stack(context));
31085 let always_ff_reset = pop_item!(self, always_ff_reset, AlwaysFfReset, context);
31086 let comma = pop_item!(self, comma, Comma, context);
31087 let always_ff_event_list_opt_0_built = AlwaysFfEventListOpt {
31088 comma: Box::new(comma),
31089 always_ff_reset: Box::new(always_ff_reset),
31090 };
31091 self.push(
31092 ASTType::AlwaysFfEventListOpt(Some(always_ff_event_list_opt_0_built)),
31093 context,
31094 );
31095 Ok(())
31096 }
31097
31098 #[parol_runtime::function_name::named]
31103 fn always_ff_event_list_opt_1(&mut self) -> Result<()> {
31104 let context = function_name!();
31105 trace!("{}", self.trace_item_stack(context));
31106 self.push(ASTType::AlwaysFfEventListOpt(None), context);
31107 Ok(())
31108 }
31109
31110 #[parol_runtime::function_name::named]
31115 fn always_ff_clock(&mut self, _hierarchical_identifier: &ParseTreeType<'t>) -> Result<()> {
31116 let context = function_name!();
31117 trace!("{}", self.trace_item_stack(context));
31118 let hierarchical_identifier = pop_item!(
31119 self,
31120 hierarchical_identifier,
31121 HierarchicalIdentifier,
31122 context
31123 );
31124 let always_ff_clock_built = AlwaysFfClock {
31125 hierarchical_identifier: Box::new(hierarchical_identifier),
31126 };
31127 self.user_grammar.always_ff_clock(&always_ff_clock_built)?;
31129 self.push(ASTType::AlwaysFfClock(always_ff_clock_built), context);
31130 Ok(())
31131 }
31132
31133 #[parol_runtime::function_name::named]
31138 fn always_ff_reset(&mut self, _hierarchical_identifier: &ParseTreeType<'t>) -> Result<()> {
31139 let context = function_name!();
31140 trace!("{}", self.trace_item_stack(context));
31141 let hierarchical_identifier = pop_item!(
31142 self,
31143 hierarchical_identifier,
31144 HierarchicalIdentifier,
31145 context
31146 );
31147 let always_ff_reset_built = AlwaysFfReset {
31148 hierarchical_identifier: Box::new(hierarchical_identifier),
31149 };
31150 self.user_grammar.always_ff_reset(&always_ff_reset_built)?;
31152 self.push(ASTType::AlwaysFfReset(always_ff_reset_built), context);
31153 Ok(())
31154 }
31155
31156 #[parol_runtime::function_name::named]
31161 fn always_comb_declaration(
31162 &mut self,
31163 _always_comb: &ParseTreeType<'t>,
31164 _statement_block: &ParseTreeType<'t>,
31165 ) -> Result<()> {
31166 let context = function_name!();
31167 trace!("{}", self.trace_item_stack(context));
31168 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
31169 let always_comb = pop_item!(self, always_comb, AlwaysComb, context);
31170 let always_comb_declaration_built = AlwaysCombDeclaration {
31171 always_comb: Box::new(always_comb),
31172 statement_block: Box::new(statement_block),
31173 };
31174 self.user_grammar
31176 .always_comb_declaration(&always_comb_declaration_built)?;
31177 self.push(
31178 ASTType::AlwaysCombDeclaration(always_comb_declaration_built),
31179 context,
31180 );
31181 Ok(())
31182 }
31183
31184 #[parol_runtime::function_name::named]
31189 fn assign_declaration(
31190 &mut self,
31191 _assign: &ParseTreeType<'t>,
31192 _assign_destination: &ParseTreeType<'t>,
31193 _equ: &ParseTreeType<'t>,
31194 _expression: &ParseTreeType<'t>,
31195 _semicolon: &ParseTreeType<'t>,
31196 ) -> Result<()> {
31197 let context = function_name!();
31198 trace!("{}", self.trace_item_stack(context));
31199 let semicolon = pop_item!(self, semicolon, Semicolon, context);
31200 let expression = pop_item!(self, expression, Expression, context);
31201 let equ = pop_item!(self, equ, Equ, context);
31202 let assign_destination = pop_item!(self, assign_destination, AssignDestination, context);
31203 let assign = pop_item!(self, assign, Assign, context);
31204 let assign_declaration_built = AssignDeclaration {
31205 assign: Box::new(assign),
31206 assign_destination: Box::new(assign_destination),
31207 equ: Box::new(equ),
31208 expression: Box::new(expression),
31209 semicolon: Box::new(semicolon),
31210 };
31211 self.user_grammar
31213 .assign_declaration(&assign_declaration_built)?;
31214 self.push(
31215 ASTType::AssignDeclaration(assign_declaration_built),
31216 context,
31217 );
31218 Ok(())
31219 }
31220
31221 #[parol_runtime::function_name::named]
31226 fn assign_destination_0(&mut self, _hierarchical_identifier: &ParseTreeType<'t>) -> Result<()> {
31227 let context = function_name!();
31228 trace!("{}", self.trace_item_stack(context));
31229 let hierarchical_identifier = pop_item!(
31230 self,
31231 hierarchical_identifier,
31232 HierarchicalIdentifier,
31233 context
31234 );
31235 let assign_destination_0_built = AssignDestinationHierarchicalIdentifier {
31236 hierarchical_identifier: Box::new(hierarchical_identifier),
31237 };
31238 let assign_destination_0_built =
31239 AssignDestination::HierarchicalIdentifier(assign_destination_0_built);
31240 self.user_grammar
31242 .assign_destination(&assign_destination_0_built)?;
31243 self.push(
31244 ASTType::AssignDestination(assign_destination_0_built),
31245 context,
31246 );
31247 Ok(())
31248 }
31249
31250 #[parol_runtime::function_name::named]
31255 fn assign_destination_1(
31256 &mut self,
31257 _l_brace: &ParseTreeType<'t>,
31258 _assign_concatenation_list: &ParseTreeType<'t>,
31259 _r_brace: &ParseTreeType<'t>,
31260 ) -> Result<()> {
31261 let context = function_name!();
31262 trace!("{}", self.trace_item_stack(context));
31263 let r_brace = pop_item!(self, r_brace, RBrace, context);
31264 let assign_concatenation_list = pop_item!(
31265 self,
31266 assign_concatenation_list,
31267 AssignConcatenationList,
31268 context
31269 );
31270 let l_brace = pop_item!(self, l_brace, LBrace, context);
31271 let assign_destination_1_built = AssignDestinationLBraceAssignConcatenationListRBrace {
31272 l_brace: Box::new(l_brace),
31273 assign_concatenation_list: Box::new(assign_concatenation_list),
31274 r_brace: Box::new(r_brace),
31275 };
31276 let assign_destination_1_built =
31277 AssignDestination::LBraceAssignConcatenationListRBrace(assign_destination_1_built);
31278 self.user_grammar
31280 .assign_destination(&assign_destination_1_built)?;
31281 self.push(
31282 ASTType::AssignDestination(assign_destination_1_built),
31283 context,
31284 );
31285 Ok(())
31286 }
31287
31288 #[parol_runtime::function_name::named]
31293 fn assign_concatenation_list(
31294 &mut self,
31295 _assign_concatenation_item: &ParseTreeType<'t>,
31296 _assign_concatenation_list_list: &ParseTreeType<'t>,
31297 _assign_concatenation_list_opt: &ParseTreeType<'t>,
31298 ) -> Result<()> {
31299 let context = function_name!();
31300 trace!("{}", self.trace_item_stack(context));
31301 let assign_concatenation_list_opt = pop_item!(
31302 self,
31303 assign_concatenation_list_opt,
31304 AssignConcatenationListOpt,
31305 context
31306 );
31307 let assign_concatenation_list_list = pop_and_reverse_item!(
31308 self,
31309 assign_concatenation_list_list,
31310 AssignConcatenationListList,
31311 context
31312 );
31313 let assign_concatenation_item = pop_item!(
31314 self,
31315 assign_concatenation_item,
31316 AssignConcatenationItem,
31317 context
31318 );
31319 let assign_concatenation_list_built = AssignConcatenationList {
31320 assign_concatenation_item: Box::new(assign_concatenation_item),
31321 assign_concatenation_list_list,
31322 assign_concatenation_list_opt,
31323 };
31324 self.user_grammar
31326 .assign_concatenation_list(&assign_concatenation_list_built)?;
31327 self.push(
31328 ASTType::AssignConcatenationList(assign_concatenation_list_built),
31329 context,
31330 );
31331 Ok(())
31332 }
31333
31334 #[parol_runtime::function_name::named]
31339 fn assign_concatenation_list_list_0(
31340 &mut self,
31341 _comma: &ParseTreeType<'t>,
31342 _assign_concatenation_item: &ParseTreeType<'t>,
31343 _assign_concatenation_list_list: &ParseTreeType<'t>,
31344 ) -> Result<()> {
31345 let context = function_name!();
31346 trace!("{}", self.trace_item_stack(context));
31347 let mut assign_concatenation_list_list = pop_item!(
31348 self,
31349 assign_concatenation_list_list,
31350 AssignConcatenationListList,
31351 context
31352 );
31353 let assign_concatenation_item = pop_item!(
31354 self,
31355 assign_concatenation_item,
31356 AssignConcatenationItem,
31357 context
31358 );
31359 let comma = pop_item!(self, comma, Comma, context);
31360 let assign_concatenation_list_list_0_built = AssignConcatenationListList {
31361 assign_concatenation_item: Box::new(assign_concatenation_item),
31362 comma: Box::new(comma),
31363 };
31364 assign_concatenation_list_list.push(assign_concatenation_list_list_0_built);
31366 self.push(
31367 ASTType::AssignConcatenationListList(assign_concatenation_list_list),
31368 context,
31369 );
31370 Ok(())
31371 }
31372
31373 #[parol_runtime::function_name::named]
31378 fn assign_concatenation_list_list_1(&mut self) -> Result<()> {
31379 let context = function_name!();
31380 trace!("{}", self.trace_item_stack(context));
31381 let assign_concatenation_list_list_1_built = Vec::new();
31382 self.push(
31383 ASTType::AssignConcatenationListList(assign_concatenation_list_list_1_built),
31384 context,
31385 );
31386 Ok(())
31387 }
31388
31389 #[parol_runtime::function_name::named]
31394 fn assign_concatenation_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
31395 let context = function_name!();
31396 trace!("{}", self.trace_item_stack(context));
31397 let comma = pop_item!(self, comma, Comma, context);
31398 let assign_concatenation_list_opt_0_built = AssignConcatenationListOpt {
31399 comma: Box::new(comma),
31400 };
31401 self.push(
31402 ASTType::AssignConcatenationListOpt(Some(assign_concatenation_list_opt_0_built)),
31403 context,
31404 );
31405 Ok(())
31406 }
31407
31408 #[parol_runtime::function_name::named]
31413 fn assign_concatenation_list_opt_1(&mut self) -> Result<()> {
31414 let context = function_name!();
31415 trace!("{}", self.trace_item_stack(context));
31416 self.push(ASTType::AssignConcatenationListOpt(None), context);
31417 Ok(())
31418 }
31419
31420 #[parol_runtime::function_name::named]
31425 fn assign_concatenation_item(
31426 &mut self,
31427 _hierarchical_identifier: &ParseTreeType<'t>,
31428 ) -> Result<()> {
31429 let context = function_name!();
31430 trace!("{}", self.trace_item_stack(context));
31431 let hierarchical_identifier = pop_item!(
31432 self,
31433 hierarchical_identifier,
31434 HierarchicalIdentifier,
31435 context
31436 );
31437 let assign_concatenation_item_built = AssignConcatenationItem {
31438 hierarchical_identifier: Box::new(hierarchical_identifier),
31439 };
31440 self.user_grammar
31442 .assign_concatenation_item(&assign_concatenation_item_built)?;
31443 self.push(
31444 ASTType::AssignConcatenationItem(assign_concatenation_item_built),
31445 context,
31446 );
31447 Ok(())
31448 }
31449
31450 #[parol_runtime::function_name::named]
31455 fn connect_declaration(
31456 &mut self,
31457 _connect: &ParseTreeType<'t>,
31458 _hierarchical_identifier: &ParseTreeType<'t>,
31459 _diamond_operator: &ParseTreeType<'t>,
31460 _expression: &ParseTreeType<'t>,
31461 _semicolon: &ParseTreeType<'t>,
31462 ) -> Result<()> {
31463 let context = function_name!();
31464 trace!("{}", self.trace_item_stack(context));
31465 let semicolon = pop_item!(self, semicolon, Semicolon, context);
31466 let expression = pop_item!(self, expression, Expression, context);
31467 let diamond_operator = pop_item!(self, diamond_operator, DiamondOperator, context);
31468 let hierarchical_identifier = pop_item!(
31469 self,
31470 hierarchical_identifier,
31471 HierarchicalIdentifier,
31472 context
31473 );
31474 let connect = pop_item!(self, connect, Connect, context);
31475 let connect_declaration_built = ConnectDeclaration {
31476 connect: Box::new(connect),
31477 hierarchical_identifier: Box::new(hierarchical_identifier),
31478 diamond_operator: Box::new(diamond_operator),
31479 expression: Box::new(expression),
31480 semicolon: Box::new(semicolon),
31481 };
31482 self.user_grammar
31484 .connect_declaration(&connect_declaration_built)?;
31485 self.push(
31486 ASTType::ConnectDeclaration(connect_declaration_built),
31487 context,
31488 );
31489 Ok(())
31490 }
31491
31492 #[parol_runtime::function_name::named]
31497 fn modport_declaration(
31498 &mut self,
31499 _modport: &ParseTreeType<'t>,
31500 _identifier: &ParseTreeType<'t>,
31501 _l_brace: &ParseTreeType<'t>,
31502 _modport_declaration_opt: &ParseTreeType<'t>,
31503 _modport_declaration_opt0: &ParseTreeType<'t>,
31504 _r_brace: &ParseTreeType<'t>,
31505 ) -> Result<()> {
31506 let context = function_name!();
31507 trace!("{}", self.trace_item_stack(context));
31508 let r_brace = pop_item!(self, r_brace, RBrace, context);
31509 let modport_declaration_opt0 = pop_item!(
31510 self,
31511 modport_declaration_opt0,
31512 ModportDeclarationOpt0,
31513 context
31514 );
31515 let modport_declaration_opt = pop_item!(
31516 self,
31517 modport_declaration_opt,
31518 ModportDeclarationOpt,
31519 context
31520 );
31521 let l_brace = pop_item!(self, l_brace, LBrace, context);
31522 let identifier = pop_item!(self, identifier, Identifier, context);
31523 let modport = pop_item!(self, modport, Modport, context);
31524 let modport_declaration_built = ModportDeclaration {
31525 modport: Box::new(modport),
31526 identifier: Box::new(identifier),
31527 l_brace: Box::new(l_brace),
31528 modport_declaration_opt,
31529 modport_declaration_opt0,
31530 r_brace: Box::new(r_brace),
31531 };
31532 self.user_grammar
31534 .modport_declaration(&modport_declaration_built)?;
31535 self.push(
31536 ASTType::ModportDeclaration(modport_declaration_built),
31537 context,
31538 );
31539 Ok(())
31540 }
31541
31542 #[parol_runtime::function_name::named]
31547 fn modport_declaration_opt0_0(
31548 &mut self,
31549 _dot_dot: &ParseTreeType<'t>,
31550 _modport_default: &ParseTreeType<'t>,
31551 ) -> Result<()> {
31552 let context = function_name!();
31553 trace!("{}", self.trace_item_stack(context));
31554 let modport_default = pop_item!(self, modport_default, ModportDefault, context);
31555 let dot_dot = pop_item!(self, dot_dot, DotDot, context);
31556 let modport_declaration_opt0_0_built = ModportDeclarationOpt0 {
31557 dot_dot: Box::new(dot_dot),
31558 modport_default: Box::new(modport_default),
31559 };
31560 self.push(
31561 ASTType::ModportDeclarationOpt0(Some(modport_declaration_opt0_0_built)),
31562 context,
31563 );
31564 Ok(())
31565 }
31566
31567 #[parol_runtime::function_name::named]
31572 fn modport_declaration_opt0_1(&mut self) -> Result<()> {
31573 let context = function_name!();
31574 trace!("{}", self.trace_item_stack(context));
31575 self.push(ASTType::ModportDeclarationOpt0(None), context);
31576 Ok(())
31577 }
31578
31579 #[parol_runtime::function_name::named]
31584 fn modport_declaration_opt_0(&mut self, _modport_list: &ParseTreeType<'t>) -> Result<()> {
31585 let context = function_name!();
31586 trace!("{}", self.trace_item_stack(context));
31587 let modport_list = pop_item!(self, modport_list, ModportList, context);
31588 let modport_declaration_opt_0_built = ModportDeclarationOpt {
31589 modport_list: Box::new(modport_list),
31590 };
31591 self.push(
31592 ASTType::ModportDeclarationOpt(Some(modport_declaration_opt_0_built)),
31593 context,
31594 );
31595 Ok(())
31596 }
31597
31598 #[parol_runtime::function_name::named]
31603 fn modport_declaration_opt_1(&mut self) -> Result<()> {
31604 let context = function_name!();
31605 trace!("{}", self.trace_item_stack(context));
31606 self.push(ASTType::ModportDeclarationOpt(None), context);
31607 Ok(())
31608 }
31609
31610 #[parol_runtime::function_name::named]
31615 fn modport_list(
31616 &mut self,
31617 _modport_group: &ParseTreeType<'t>,
31618 _modport_list_list: &ParseTreeType<'t>,
31619 _modport_list_opt: &ParseTreeType<'t>,
31620 ) -> Result<()> {
31621 let context = function_name!();
31622 trace!("{}", self.trace_item_stack(context));
31623 let modport_list_opt = pop_item!(self, modport_list_opt, ModportListOpt, context);
31624 let modport_list_list =
31625 pop_and_reverse_item!(self, modport_list_list, ModportListList, context);
31626 let modport_group = pop_item!(self, modport_group, ModportGroup, context);
31627 let modport_list_built = ModportList {
31628 modport_group: Box::new(modport_group),
31629 modport_list_list,
31630 modport_list_opt,
31631 };
31632 self.user_grammar.modport_list(&modport_list_built)?;
31634 self.push(ASTType::ModportList(modport_list_built), context);
31635 Ok(())
31636 }
31637
31638 #[parol_runtime::function_name::named]
31643 fn modport_list_list_0(
31644 &mut self,
31645 _comma: &ParseTreeType<'t>,
31646 _modport_group: &ParseTreeType<'t>,
31647 _modport_list_list: &ParseTreeType<'t>,
31648 ) -> Result<()> {
31649 let context = function_name!();
31650 trace!("{}", self.trace_item_stack(context));
31651 let mut modport_list_list = pop_item!(self, modport_list_list, ModportListList, context);
31652 let modport_group = pop_item!(self, modport_group, ModportGroup, context);
31653 let comma = pop_item!(self, comma, Comma, context);
31654 let modport_list_list_0_built = ModportListList {
31655 modport_group: Box::new(modport_group),
31656 comma: Box::new(comma),
31657 };
31658 modport_list_list.push(modport_list_list_0_built);
31660 self.push(ASTType::ModportListList(modport_list_list), context);
31661 Ok(())
31662 }
31663
31664 #[parol_runtime::function_name::named]
31669 fn modport_list_list_1(&mut self) -> Result<()> {
31670 let context = function_name!();
31671 trace!("{}", self.trace_item_stack(context));
31672 let modport_list_list_1_built = Vec::new();
31673 self.push(ASTType::ModportListList(modport_list_list_1_built), context);
31674 Ok(())
31675 }
31676
31677 #[parol_runtime::function_name::named]
31682 fn modport_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
31683 let context = function_name!();
31684 trace!("{}", self.trace_item_stack(context));
31685 let comma = pop_item!(self, comma, Comma, context);
31686 let modport_list_opt_0_built = ModportListOpt {
31687 comma: Box::new(comma),
31688 };
31689 self.push(
31690 ASTType::ModportListOpt(Some(modport_list_opt_0_built)),
31691 context,
31692 );
31693 Ok(())
31694 }
31695
31696 #[parol_runtime::function_name::named]
31701 fn modport_list_opt_1(&mut self) -> Result<()> {
31702 let context = function_name!();
31703 trace!("{}", self.trace_item_stack(context));
31704 self.push(ASTType::ModportListOpt(None), context);
31705 Ok(())
31706 }
31707
31708 #[parol_runtime::function_name::named]
31713 fn modport_group(
31714 &mut self,
31715 _modport_group_list: &ParseTreeType<'t>,
31716 _modport_group_group: &ParseTreeType<'t>,
31717 ) -> Result<()> {
31718 let context = function_name!();
31719 trace!("{}", self.trace_item_stack(context));
31720 let modport_group_group = pop_item!(self, modport_group_group, ModportGroupGroup, context);
31721 let modport_group_list =
31722 pop_and_reverse_item!(self, modport_group_list, ModportGroupList, context);
31723 let modport_group_built = ModportGroup {
31724 modport_group_list,
31725 modport_group_group: Box::new(modport_group_group),
31726 };
31727 self.user_grammar.modport_group(&modport_group_built)?;
31729 self.push(ASTType::ModportGroup(modport_group_built), context);
31730 Ok(())
31731 }
31732
31733 #[parol_runtime::function_name::named]
31738 fn modport_group_group_0(
31739 &mut self,
31740 _l_brace: &ParseTreeType<'t>,
31741 _modport_list: &ParseTreeType<'t>,
31742 _r_brace: &ParseTreeType<'t>,
31743 ) -> Result<()> {
31744 let context = function_name!();
31745 trace!("{}", self.trace_item_stack(context));
31746 let r_brace = pop_item!(self, r_brace, RBrace, context);
31747 let modport_list = pop_item!(self, modport_list, ModportList, context);
31748 let l_brace = pop_item!(self, l_brace, LBrace, context);
31749 let modport_group_group_0_built = ModportGroupGroupLBraceModportListRBrace {
31750 l_brace: Box::new(l_brace),
31751 modport_list: Box::new(modport_list),
31752 r_brace: Box::new(r_brace),
31753 };
31754 let modport_group_group_0_built =
31755 ModportGroupGroup::LBraceModportListRBrace(modport_group_group_0_built);
31756 self.push(
31757 ASTType::ModportGroupGroup(modport_group_group_0_built),
31758 context,
31759 );
31760 Ok(())
31761 }
31762
31763 #[parol_runtime::function_name::named]
31768 fn modport_group_group_1(&mut self, _modport_item: &ParseTreeType<'t>) -> Result<()> {
31769 let context = function_name!();
31770 trace!("{}", self.trace_item_stack(context));
31771 let modport_item = pop_item!(self, modport_item, ModportItem, context);
31772 let modport_group_group_1_built = ModportGroupGroupModportItem {
31773 modport_item: Box::new(modport_item),
31774 };
31775 let modport_group_group_1_built =
31776 ModportGroupGroup::ModportItem(modport_group_group_1_built);
31777 self.push(
31778 ASTType::ModportGroupGroup(modport_group_group_1_built),
31779 context,
31780 );
31781 Ok(())
31782 }
31783
31784 #[parol_runtime::function_name::named]
31789 fn modport_group_list_0(
31790 &mut self,
31791 _attribute: &ParseTreeType<'t>,
31792 _modport_group_list: &ParseTreeType<'t>,
31793 ) -> Result<()> {
31794 let context = function_name!();
31795 trace!("{}", self.trace_item_stack(context));
31796 let mut modport_group_list = pop_item!(self, modport_group_list, ModportGroupList, context);
31797 let attribute = pop_item!(self, attribute, Attribute, context);
31798 let modport_group_list_0_built = ModportGroupList {
31799 attribute: Box::new(attribute),
31800 };
31801 modport_group_list.push(modport_group_list_0_built);
31803 self.push(ASTType::ModportGroupList(modport_group_list), context);
31804 Ok(())
31805 }
31806
31807 #[parol_runtime::function_name::named]
31812 fn modport_group_list_1(&mut self) -> Result<()> {
31813 let context = function_name!();
31814 trace!("{}", self.trace_item_stack(context));
31815 let modport_group_list_1_built = Vec::new();
31816 self.push(
31817 ASTType::ModportGroupList(modport_group_list_1_built),
31818 context,
31819 );
31820 Ok(())
31821 }
31822
31823 #[parol_runtime::function_name::named]
31828 fn modport_item(
31829 &mut self,
31830 _identifier: &ParseTreeType<'t>,
31831 _colon: &ParseTreeType<'t>,
31832 _direction: &ParseTreeType<'t>,
31833 ) -> Result<()> {
31834 let context = function_name!();
31835 trace!("{}", self.trace_item_stack(context));
31836 let direction = pop_item!(self, direction, Direction, context);
31837 let colon = pop_item!(self, colon, Colon, context);
31838 let identifier = pop_item!(self, identifier, Identifier, context);
31839 let modport_item_built = ModportItem {
31840 identifier: Box::new(identifier),
31841 colon: Box::new(colon),
31842 direction: Box::new(direction),
31843 };
31844 self.user_grammar.modport_item(&modport_item_built)?;
31846 self.push(ASTType::ModportItem(modport_item_built), context);
31847 Ok(())
31848 }
31849
31850 #[parol_runtime::function_name::named]
31855 fn modport_default_0(&mut self, _input: &ParseTreeType<'t>) -> Result<()> {
31856 let context = function_name!();
31857 trace!("{}", self.trace_item_stack(context));
31858 let input = pop_item!(self, input, Input, context);
31859 let modport_default_0_built = ModportDefaultInput {
31860 input: Box::new(input),
31861 };
31862 let modport_default_0_built = ModportDefault::Input(modport_default_0_built);
31863 self.user_grammar
31865 .modport_default(&modport_default_0_built)?;
31866 self.push(ASTType::ModportDefault(modport_default_0_built), context);
31867 Ok(())
31868 }
31869
31870 #[parol_runtime::function_name::named]
31875 fn modport_default_1(&mut self, _output: &ParseTreeType<'t>) -> Result<()> {
31876 let context = function_name!();
31877 trace!("{}", self.trace_item_stack(context));
31878 let output = pop_item!(self, output, Output, context);
31879 let modport_default_1_built = ModportDefaultOutput {
31880 output: Box::new(output),
31881 };
31882 let modport_default_1_built = ModportDefault::Output(modport_default_1_built);
31883 self.user_grammar
31885 .modport_default(&modport_default_1_built)?;
31886 self.push(ASTType::ModportDefault(modport_default_1_built), context);
31887 Ok(())
31888 }
31889
31890 #[parol_runtime::function_name::named]
31895 fn modport_default_2(
31896 &mut self,
31897 _same: &ParseTreeType<'t>,
31898 _l_paren: &ParseTreeType<'t>,
31899 _modport_default_list: &ParseTreeType<'t>,
31900 _r_paren: &ParseTreeType<'t>,
31901 ) -> Result<()> {
31902 let context = function_name!();
31903 trace!("{}", self.trace_item_stack(context));
31904 let r_paren = pop_item!(self, r_paren, RParen, context);
31905 let modport_default_list =
31906 pop_item!(self, modport_default_list, ModportDefaultList, context);
31907 let l_paren = pop_item!(self, l_paren, LParen, context);
31908 let same = pop_item!(self, same, Same, context);
31909 let modport_default_2_built = ModportDefaultSameLParenModportDefaultListRParen {
31910 same: Box::new(same),
31911 l_paren: Box::new(l_paren),
31912 modport_default_list: Box::new(modport_default_list),
31913 r_paren: Box::new(r_paren),
31914 };
31915 let modport_default_2_built =
31916 ModportDefault::SameLParenModportDefaultListRParen(modport_default_2_built);
31917 self.user_grammar
31919 .modport_default(&modport_default_2_built)?;
31920 self.push(ASTType::ModportDefault(modport_default_2_built), context);
31921 Ok(())
31922 }
31923
31924 #[parol_runtime::function_name::named]
31929 fn modport_default_3(
31930 &mut self,
31931 _converse: &ParseTreeType<'t>,
31932 _l_paren: &ParseTreeType<'t>,
31933 _modport_default_list: &ParseTreeType<'t>,
31934 _r_paren: &ParseTreeType<'t>,
31935 ) -> Result<()> {
31936 let context = function_name!();
31937 trace!("{}", self.trace_item_stack(context));
31938 let r_paren = pop_item!(self, r_paren, RParen, context);
31939 let modport_default_list =
31940 pop_item!(self, modport_default_list, ModportDefaultList, context);
31941 let l_paren = pop_item!(self, l_paren, LParen, context);
31942 let converse = pop_item!(self, converse, Converse, context);
31943 let modport_default_3_built = ModportDefaultConverseLParenModportDefaultListRParen {
31944 converse: Box::new(converse),
31945 l_paren: Box::new(l_paren),
31946 modport_default_list: Box::new(modport_default_list),
31947 r_paren: Box::new(r_paren),
31948 };
31949 let modport_default_3_built =
31950 ModportDefault::ConverseLParenModportDefaultListRParen(modport_default_3_built);
31951 self.user_grammar
31953 .modport_default(&modport_default_3_built)?;
31954 self.push(ASTType::ModportDefault(modport_default_3_built), context);
31955 Ok(())
31956 }
31957
31958 #[parol_runtime::function_name::named]
31963 fn modport_default_list(
31964 &mut self,
31965 _identifier: &ParseTreeType<'t>,
31966 _modport_default_list_list: &ParseTreeType<'t>,
31967 _modport_default_list_opt: &ParseTreeType<'t>,
31968 ) -> Result<()> {
31969 let context = function_name!();
31970 trace!("{}", self.trace_item_stack(context));
31971 let modport_default_list_opt = pop_item!(
31972 self,
31973 modport_default_list_opt,
31974 ModportDefaultListOpt,
31975 context
31976 );
31977 let modport_default_list_list = pop_and_reverse_item!(
31978 self,
31979 modport_default_list_list,
31980 ModportDefaultListList,
31981 context
31982 );
31983 let identifier = pop_item!(self, identifier, Identifier, context);
31984 let modport_default_list_built = ModportDefaultList {
31985 identifier: Box::new(identifier),
31986 modport_default_list_list,
31987 modport_default_list_opt,
31988 };
31989 self.user_grammar
31991 .modport_default_list(&modport_default_list_built)?;
31992 self.push(
31993 ASTType::ModportDefaultList(modport_default_list_built),
31994 context,
31995 );
31996 Ok(())
31997 }
31998
31999 #[parol_runtime::function_name::named]
32004 fn modport_default_list_list_0(
32005 &mut self,
32006 _comma: &ParseTreeType<'t>,
32007 _identifier: &ParseTreeType<'t>,
32008 _modport_default_list_list: &ParseTreeType<'t>,
32009 ) -> Result<()> {
32010 let context = function_name!();
32011 trace!("{}", self.trace_item_stack(context));
32012 let mut modport_default_list_list = pop_item!(
32013 self,
32014 modport_default_list_list,
32015 ModportDefaultListList,
32016 context
32017 );
32018 let identifier = pop_item!(self, identifier, Identifier, context);
32019 let comma = pop_item!(self, comma, Comma, context);
32020 let modport_default_list_list_0_built = ModportDefaultListList {
32021 identifier: Box::new(identifier),
32022 comma: Box::new(comma),
32023 };
32024 modport_default_list_list.push(modport_default_list_list_0_built);
32026 self.push(
32027 ASTType::ModportDefaultListList(modport_default_list_list),
32028 context,
32029 );
32030 Ok(())
32031 }
32032
32033 #[parol_runtime::function_name::named]
32038 fn modport_default_list_list_1(&mut self) -> Result<()> {
32039 let context = function_name!();
32040 trace!("{}", self.trace_item_stack(context));
32041 let modport_default_list_list_1_built = Vec::new();
32042 self.push(
32043 ASTType::ModportDefaultListList(modport_default_list_list_1_built),
32044 context,
32045 );
32046 Ok(())
32047 }
32048
32049 #[parol_runtime::function_name::named]
32054 fn modport_default_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
32055 let context = function_name!();
32056 trace!("{}", self.trace_item_stack(context));
32057 let comma = pop_item!(self, comma, Comma, context);
32058 let modport_default_list_opt_0_built = ModportDefaultListOpt {
32059 comma: Box::new(comma),
32060 };
32061 self.push(
32062 ASTType::ModportDefaultListOpt(Some(modport_default_list_opt_0_built)),
32063 context,
32064 );
32065 Ok(())
32066 }
32067
32068 #[parol_runtime::function_name::named]
32073 fn modport_default_list_opt_1(&mut self) -> Result<()> {
32074 let context = function_name!();
32075 trace!("{}", self.trace_item_stack(context));
32076 self.push(ASTType::ModportDefaultListOpt(None), context);
32077 Ok(())
32078 }
32079
32080 #[parol_runtime::function_name::named]
32085 fn enum_declaration(
32086 &mut self,
32087 _enum: &ParseTreeType<'t>,
32088 _identifier: &ParseTreeType<'t>,
32089 _enum_declaration_opt: &ParseTreeType<'t>,
32090 _l_brace: &ParseTreeType<'t>,
32091 _enum_list: &ParseTreeType<'t>,
32092 _r_brace: &ParseTreeType<'t>,
32093 ) -> Result<()> {
32094 let context = function_name!();
32095 trace!("{}", self.trace_item_stack(context));
32096 let r_brace = pop_item!(self, r_brace, RBrace, context);
32097 let enum_list = pop_item!(self, enum_list, EnumList, context);
32098 let l_brace = pop_item!(self, l_brace, LBrace, context);
32099 let enum_declaration_opt =
32100 pop_item!(self, enum_declaration_opt, EnumDeclarationOpt, context);
32101 let identifier = pop_item!(self, identifier, Identifier, context);
32102 let r#enum = pop_item!(self, r#enum, Enum, context);
32103 let enum_declaration_built = EnumDeclaration {
32104 r#enum: Box::new(r#enum),
32105 identifier: Box::new(identifier),
32106 enum_declaration_opt,
32107 l_brace: Box::new(l_brace),
32108 enum_list: Box::new(enum_list),
32109 r_brace: Box::new(r_brace),
32110 };
32111 self.user_grammar
32113 .enum_declaration(&enum_declaration_built)?;
32114 self.push(ASTType::EnumDeclaration(enum_declaration_built), context);
32115 Ok(())
32116 }
32117
32118 #[parol_runtime::function_name::named]
32123 fn enum_declaration_opt_0(
32124 &mut self,
32125 _colon: &ParseTreeType<'t>,
32126 _scalar_type: &ParseTreeType<'t>,
32127 ) -> Result<()> {
32128 let context = function_name!();
32129 trace!("{}", self.trace_item_stack(context));
32130 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
32131 let colon = pop_item!(self, colon, Colon, context);
32132 let enum_declaration_opt_0_built = EnumDeclarationOpt {
32133 colon: Box::new(colon),
32134 scalar_type: Box::new(scalar_type),
32135 };
32136 self.push(
32137 ASTType::EnumDeclarationOpt(Some(enum_declaration_opt_0_built)),
32138 context,
32139 );
32140 Ok(())
32141 }
32142
32143 #[parol_runtime::function_name::named]
32148 fn enum_declaration_opt_1(&mut self) -> Result<()> {
32149 let context = function_name!();
32150 trace!("{}", self.trace_item_stack(context));
32151 self.push(ASTType::EnumDeclarationOpt(None), context);
32152 Ok(())
32153 }
32154
32155 #[parol_runtime::function_name::named]
32160 fn enum_list(
32161 &mut self,
32162 _enum_group: &ParseTreeType<'t>,
32163 _enum_list_list: &ParseTreeType<'t>,
32164 _enum_list_opt: &ParseTreeType<'t>,
32165 ) -> Result<()> {
32166 let context = function_name!();
32167 trace!("{}", self.trace_item_stack(context));
32168 let enum_list_opt = pop_item!(self, enum_list_opt, EnumListOpt, context);
32169 let enum_list_list = pop_and_reverse_item!(self, enum_list_list, EnumListList, context);
32170 let enum_group = pop_item!(self, enum_group, EnumGroup, context);
32171 let enum_list_built = EnumList {
32172 enum_group: Box::new(enum_group),
32173 enum_list_list,
32174 enum_list_opt,
32175 };
32176 self.user_grammar.enum_list(&enum_list_built)?;
32178 self.push(ASTType::EnumList(enum_list_built), context);
32179 Ok(())
32180 }
32181
32182 #[parol_runtime::function_name::named]
32187 fn enum_list_list_0(
32188 &mut self,
32189 _comma: &ParseTreeType<'t>,
32190 _enum_group: &ParseTreeType<'t>,
32191 _enum_list_list: &ParseTreeType<'t>,
32192 ) -> Result<()> {
32193 let context = function_name!();
32194 trace!("{}", self.trace_item_stack(context));
32195 let mut enum_list_list = pop_item!(self, enum_list_list, EnumListList, context);
32196 let enum_group = pop_item!(self, enum_group, EnumGroup, context);
32197 let comma = pop_item!(self, comma, Comma, context);
32198 let enum_list_list_0_built = EnumListList {
32199 enum_group: Box::new(enum_group),
32200 comma: Box::new(comma),
32201 };
32202 enum_list_list.push(enum_list_list_0_built);
32204 self.push(ASTType::EnumListList(enum_list_list), context);
32205 Ok(())
32206 }
32207
32208 #[parol_runtime::function_name::named]
32213 fn enum_list_list_1(&mut self) -> Result<()> {
32214 let context = function_name!();
32215 trace!("{}", self.trace_item_stack(context));
32216 let enum_list_list_1_built = Vec::new();
32217 self.push(ASTType::EnumListList(enum_list_list_1_built), context);
32218 Ok(())
32219 }
32220
32221 #[parol_runtime::function_name::named]
32226 fn enum_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
32227 let context = function_name!();
32228 trace!("{}", self.trace_item_stack(context));
32229 let comma = pop_item!(self, comma, Comma, context);
32230 let enum_list_opt_0_built = EnumListOpt {
32231 comma: Box::new(comma),
32232 };
32233 self.push(ASTType::EnumListOpt(Some(enum_list_opt_0_built)), context);
32234 Ok(())
32235 }
32236
32237 #[parol_runtime::function_name::named]
32242 fn enum_list_opt_1(&mut self) -> Result<()> {
32243 let context = function_name!();
32244 trace!("{}", self.trace_item_stack(context));
32245 self.push(ASTType::EnumListOpt(None), context);
32246 Ok(())
32247 }
32248
32249 #[parol_runtime::function_name::named]
32254 fn enum_group(
32255 &mut self,
32256 _enum_group_list: &ParseTreeType<'t>,
32257 _enum_group_group: &ParseTreeType<'t>,
32258 ) -> Result<()> {
32259 let context = function_name!();
32260 trace!("{}", self.trace_item_stack(context));
32261 let enum_group_group = pop_item!(self, enum_group_group, EnumGroupGroup, context);
32262 let enum_group_list = pop_and_reverse_item!(self, enum_group_list, EnumGroupList, context);
32263 let enum_group_built = EnumGroup {
32264 enum_group_list,
32265 enum_group_group: Box::new(enum_group_group),
32266 };
32267 self.user_grammar.enum_group(&enum_group_built)?;
32269 self.push(ASTType::EnumGroup(enum_group_built), context);
32270 Ok(())
32271 }
32272
32273 #[parol_runtime::function_name::named]
32278 fn enum_group_group_0(
32279 &mut self,
32280 _l_brace: &ParseTreeType<'t>,
32281 _enum_list: &ParseTreeType<'t>,
32282 _r_brace: &ParseTreeType<'t>,
32283 ) -> Result<()> {
32284 let context = function_name!();
32285 trace!("{}", self.trace_item_stack(context));
32286 let r_brace = pop_item!(self, r_brace, RBrace, context);
32287 let enum_list = pop_item!(self, enum_list, EnumList, context);
32288 let l_brace = pop_item!(self, l_brace, LBrace, context);
32289 let enum_group_group_0_built = EnumGroupGroupLBraceEnumListRBrace {
32290 l_brace: Box::new(l_brace),
32291 enum_list: Box::new(enum_list),
32292 r_brace: Box::new(r_brace),
32293 };
32294 let enum_group_group_0_built =
32295 EnumGroupGroup::LBraceEnumListRBrace(enum_group_group_0_built);
32296 self.push(ASTType::EnumGroupGroup(enum_group_group_0_built), context);
32297 Ok(())
32298 }
32299
32300 #[parol_runtime::function_name::named]
32305 fn enum_group_group_1(&mut self, _enum_item: &ParseTreeType<'t>) -> Result<()> {
32306 let context = function_name!();
32307 trace!("{}", self.trace_item_stack(context));
32308 let enum_item = pop_item!(self, enum_item, EnumItem, context);
32309 let enum_group_group_1_built = EnumGroupGroupEnumItem {
32310 enum_item: Box::new(enum_item),
32311 };
32312 let enum_group_group_1_built = EnumGroupGroup::EnumItem(enum_group_group_1_built);
32313 self.push(ASTType::EnumGroupGroup(enum_group_group_1_built), context);
32314 Ok(())
32315 }
32316
32317 #[parol_runtime::function_name::named]
32322 fn enum_group_list_0(
32323 &mut self,
32324 _attribute: &ParseTreeType<'t>,
32325 _enum_group_list: &ParseTreeType<'t>,
32326 ) -> Result<()> {
32327 let context = function_name!();
32328 trace!("{}", self.trace_item_stack(context));
32329 let mut enum_group_list = pop_item!(self, enum_group_list, EnumGroupList, context);
32330 let attribute = pop_item!(self, attribute, Attribute, context);
32331 let enum_group_list_0_built = EnumGroupList {
32332 attribute: Box::new(attribute),
32333 };
32334 enum_group_list.push(enum_group_list_0_built);
32336 self.push(ASTType::EnumGroupList(enum_group_list), context);
32337 Ok(())
32338 }
32339
32340 #[parol_runtime::function_name::named]
32345 fn enum_group_list_1(&mut self) -> Result<()> {
32346 let context = function_name!();
32347 trace!("{}", self.trace_item_stack(context));
32348 let enum_group_list_1_built = Vec::new();
32349 self.push(ASTType::EnumGroupList(enum_group_list_1_built), context);
32350 Ok(())
32351 }
32352
32353 #[parol_runtime::function_name::named]
32358 fn enum_item(
32359 &mut self,
32360 _identifier: &ParseTreeType<'t>,
32361 _enum_item_opt: &ParseTreeType<'t>,
32362 ) -> Result<()> {
32363 let context = function_name!();
32364 trace!("{}", self.trace_item_stack(context));
32365 let enum_item_opt = pop_item!(self, enum_item_opt, EnumItemOpt, context);
32366 let identifier = pop_item!(self, identifier, Identifier, context);
32367 let enum_item_built = EnumItem {
32368 identifier: Box::new(identifier),
32369 enum_item_opt,
32370 };
32371 self.user_grammar.enum_item(&enum_item_built)?;
32373 self.push(ASTType::EnumItem(enum_item_built), context);
32374 Ok(())
32375 }
32376
32377 #[parol_runtime::function_name::named]
32382 fn enum_item_opt_0(
32383 &mut self,
32384 _equ: &ParseTreeType<'t>,
32385 _expression: &ParseTreeType<'t>,
32386 ) -> Result<()> {
32387 let context = function_name!();
32388 trace!("{}", self.trace_item_stack(context));
32389 let expression = pop_item!(self, expression, Expression, context);
32390 let equ = pop_item!(self, equ, Equ, context);
32391 let enum_item_opt_0_built = EnumItemOpt {
32392 equ: Box::new(equ),
32393 expression: Box::new(expression),
32394 };
32395 self.push(ASTType::EnumItemOpt(Some(enum_item_opt_0_built)), context);
32396 Ok(())
32397 }
32398
32399 #[parol_runtime::function_name::named]
32404 fn enum_item_opt_1(&mut self) -> Result<()> {
32405 let context = function_name!();
32406 trace!("{}", self.trace_item_stack(context));
32407 self.push(ASTType::EnumItemOpt(None), context);
32408 Ok(())
32409 }
32410
32411 #[parol_runtime::function_name::named]
32416 fn struct_union_0(&mut self, _struct: &ParseTreeType<'t>) -> Result<()> {
32417 let context = function_name!();
32418 trace!("{}", self.trace_item_stack(context));
32419 let r#struct = pop_item!(self, r#struct, Struct, context);
32420 let struct_union_0_built = StructUnionStruct {
32421 r#struct: Box::new(r#struct),
32422 };
32423 let struct_union_0_built = StructUnion::Struct(struct_union_0_built);
32424 self.user_grammar.struct_union(&struct_union_0_built)?;
32426 self.push(ASTType::StructUnion(struct_union_0_built), context);
32427 Ok(())
32428 }
32429
32430 #[parol_runtime::function_name::named]
32435 fn struct_union_1(&mut self, _union: &ParseTreeType<'t>) -> Result<()> {
32436 let context = function_name!();
32437 trace!("{}", self.trace_item_stack(context));
32438 let r#union = pop_item!(self, r#union, Union, context);
32439 let struct_union_1_built = StructUnionUnion {
32440 r#union: Box::new(r#union),
32441 };
32442 let struct_union_1_built = StructUnion::Union(struct_union_1_built);
32443 self.user_grammar.struct_union(&struct_union_1_built)?;
32445 self.push(ASTType::StructUnion(struct_union_1_built), context);
32446 Ok(())
32447 }
32448
32449 #[parol_runtime::function_name::named]
32454 fn struct_union_declaration(
32455 &mut self,
32456 _struct_union: &ParseTreeType<'t>,
32457 _identifier: &ParseTreeType<'t>,
32458 _struct_union_declaration_opt: &ParseTreeType<'t>,
32459 _l_brace: &ParseTreeType<'t>,
32460 _struct_union_list: &ParseTreeType<'t>,
32461 _r_brace: &ParseTreeType<'t>,
32462 ) -> Result<()> {
32463 let context = function_name!();
32464 trace!("{}", self.trace_item_stack(context));
32465 let r_brace = pop_item!(self, r_brace, RBrace, context);
32466 let struct_union_list = pop_item!(self, struct_union_list, StructUnionList, context);
32467 let l_brace = pop_item!(self, l_brace, LBrace, context);
32468 let struct_union_declaration_opt = pop_item!(
32469 self,
32470 struct_union_declaration_opt,
32471 StructUnionDeclarationOpt,
32472 context
32473 );
32474 let identifier = pop_item!(self, identifier, Identifier, context);
32475 let struct_union = pop_item!(self, struct_union, StructUnion, context);
32476 let struct_union_declaration_built = StructUnionDeclaration {
32477 struct_union: Box::new(struct_union),
32478 identifier: Box::new(identifier),
32479 struct_union_declaration_opt,
32480 l_brace: Box::new(l_brace),
32481 struct_union_list: Box::new(struct_union_list),
32482 r_brace: Box::new(r_brace),
32483 };
32484 self.user_grammar
32486 .struct_union_declaration(&struct_union_declaration_built)?;
32487 self.push(
32488 ASTType::StructUnionDeclaration(struct_union_declaration_built),
32489 context,
32490 );
32491 Ok(())
32492 }
32493
32494 #[parol_runtime::function_name::named]
32499 fn struct_union_declaration_opt_0(
32500 &mut self,
32501 _with_generic_parameter: &ParseTreeType<'t>,
32502 ) -> Result<()> {
32503 let context = function_name!();
32504 trace!("{}", self.trace_item_stack(context));
32505 let with_generic_parameter =
32506 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
32507 let struct_union_declaration_opt_0_built = StructUnionDeclarationOpt {
32508 with_generic_parameter: Box::new(with_generic_parameter),
32509 };
32510 self.push(
32511 ASTType::StructUnionDeclarationOpt(Some(struct_union_declaration_opt_0_built)),
32512 context,
32513 );
32514 Ok(())
32515 }
32516
32517 #[parol_runtime::function_name::named]
32522 fn struct_union_declaration_opt_1(&mut self) -> Result<()> {
32523 let context = function_name!();
32524 trace!("{}", self.trace_item_stack(context));
32525 self.push(ASTType::StructUnionDeclarationOpt(None), context);
32526 Ok(())
32527 }
32528
32529 #[parol_runtime::function_name::named]
32534 fn struct_union_list(
32535 &mut self,
32536 _struct_union_group: &ParseTreeType<'t>,
32537 _struct_union_list_list: &ParseTreeType<'t>,
32538 _struct_union_list_opt: &ParseTreeType<'t>,
32539 ) -> Result<()> {
32540 let context = function_name!();
32541 trace!("{}", self.trace_item_stack(context));
32542 let struct_union_list_opt =
32543 pop_item!(self, struct_union_list_opt, StructUnionListOpt, context);
32544 let struct_union_list_list =
32545 pop_and_reverse_item!(self, struct_union_list_list, StructUnionListList, context);
32546 let struct_union_group = pop_item!(self, struct_union_group, StructUnionGroup, context);
32547 let struct_union_list_built = StructUnionList {
32548 struct_union_group: Box::new(struct_union_group),
32549 struct_union_list_list,
32550 struct_union_list_opt,
32551 };
32552 self.user_grammar
32554 .struct_union_list(&struct_union_list_built)?;
32555 self.push(ASTType::StructUnionList(struct_union_list_built), context);
32556 Ok(())
32557 }
32558
32559 #[parol_runtime::function_name::named]
32564 fn struct_union_list_list_0(
32565 &mut self,
32566 _comma: &ParseTreeType<'t>,
32567 _struct_union_group: &ParseTreeType<'t>,
32568 _struct_union_list_list: &ParseTreeType<'t>,
32569 ) -> Result<()> {
32570 let context = function_name!();
32571 trace!("{}", self.trace_item_stack(context));
32572 let mut struct_union_list_list =
32573 pop_item!(self, struct_union_list_list, StructUnionListList, context);
32574 let struct_union_group = pop_item!(self, struct_union_group, StructUnionGroup, context);
32575 let comma = pop_item!(self, comma, Comma, context);
32576 let struct_union_list_list_0_built = StructUnionListList {
32577 struct_union_group: Box::new(struct_union_group),
32578 comma: Box::new(comma),
32579 };
32580 struct_union_list_list.push(struct_union_list_list_0_built);
32582 self.push(
32583 ASTType::StructUnionListList(struct_union_list_list),
32584 context,
32585 );
32586 Ok(())
32587 }
32588
32589 #[parol_runtime::function_name::named]
32594 fn struct_union_list_list_1(&mut self) -> Result<()> {
32595 let context = function_name!();
32596 trace!("{}", self.trace_item_stack(context));
32597 let struct_union_list_list_1_built = Vec::new();
32598 self.push(
32599 ASTType::StructUnionListList(struct_union_list_list_1_built),
32600 context,
32601 );
32602 Ok(())
32603 }
32604
32605 #[parol_runtime::function_name::named]
32610 fn struct_union_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
32611 let context = function_name!();
32612 trace!("{}", self.trace_item_stack(context));
32613 let comma = pop_item!(self, comma, Comma, context);
32614 let struct_union_list_opt_0_built = StructUnionListOpt {
32615 comma: Box::new(comma),
32616 };
32617 self.push(
32618 ASTType::StructUnionListOpt(Some(struct_union_list_opt_0_built)),
32619 context,
32620 );
32621 Ok(())
32622 }
32623
32624 #[parol_runtime::function_name::named]
32629 fn struct_union_list_opt_1(&mut self) -> Result<()> {
32630 let context = function_name!();
32631 trace!("{}", self.trace_item_stack(context));
32632 self.push(ASTType::StructUnionListOpt(None), context);
32633 Ok(())
32634 }
32635
32636 #[parol_runtime::function_name::named]
32641 fn struct_union_group(
32642 &mut self,
32643 _struct_union_group_list: &ParseTreeType<'t>,
32644 _struct_union_group_group: &ParseTreeType<'t>,
32645 ) -> Result<()> {
32646 let context = function_name!();
32647 trace!("{}", self.trace_item_stack(context));
32648 let struct_union_group_group = pop_item!(
32649 self,
32650 struct_union_group_group,
32651 StructUnionGroupGroup,
32652 context
32653 );
32654 let struct_union_group_list =
32655 pop_and_reverse_item!(self, struct_union_group_list, StructUnionGroupList, context);
32656 let struct_union_group_built = StructUnionGroup {
32657 struct_union_group_list,
32658 struct_union_group_group: Box::new(struct_union_group_group),
32659 };
32660 self.user_grammar
32662 .struct_union_group(&struct_union_group_built)?;
32663 self.push(ASTType::StructUnionGroup(struct_union_group_built), context);
32664 Ok(())
32665 }
32666
32667 #[parol_runtime::function_name::named]
32672 fn struct_union_group_group_0(
32673 &mut self,
32674 _l_brace: &ParseTreeType<'t>,
32675 _struct_union_list: &ParseTreeType<'t>,
32676 _r_brace: &ParseTreeType<'t>,
32677 ) -> Result<()> {
32678 let context = function_name!();
32679 trace!("{}", self.trace_item_stack(context));
32680 let r_brace = pop_item!(self, r_brace, RBrace, context);
32681 let struct_union_list = pop_item!(self, struct_union_list, StructUnionList, context);
32682 let l_brace = pop_item!(self, l_brace, LBrace, context);
32683 let struct_union_group_group_0_built = StructUnionGroupGroupLBraceStructUnionListRBrace {
32684 l_brace: Box::new(l_brace),
32685 struct_union_list: Box::new(struct_union_list),
32686 r_brace: Box::new(r_brace),
32687 };
32688 let struct_union_group_group_0_built =
32689 StructUnionGroupGroup::LBraceStructUnionListRBrace(struct_union_group_group_0_built);
32690 self.push(
32691 ASTType::StructUnionGroupGroup(struct_union_group_group_0_built),
32692 context,
32693 );
32694 Ok(())
32695 }
32696
32697 #[parol_runtime::function_name::named]
32702 fn struct_union_group_group_1(&mut self, _struct_union_item: &ParseTreeType<'t>) -> Result<()> {
32703 let context = function_name!();
32704 trace!("{}", self.trace_item_stack(context));
32705 let struct_union_item = pop_item!(self, struct_union_item, StructUnionItem, context);
32706 let struct_union_group_group_1_built = StructUnionGroupGroupStructUnionItem {
32707 struct_union_item: Box::new(struct_union_item),
32708 };
32709 let struct_union_group_group_1_built =
32710 StructUnionGroupGroup::StructUnionItem(struct_union_group_group_1_built);
32711 self.push(
32712 ASTType::StructUnionGroupGroup(struct_union_group_group_1_built),
32713 context,
32714 );
32715 Ok(())
32716 }
32717
32718 #[parol_runtime::function_name::named]
32723 fn struct_union_group_list_0(
32724 &mut self,
32725 _attribute: &ParseTreeType<'t>,
32726 _struct_union_group_list: &ParseTreeType<'t>,
32727 ) -> Result<()> {
32728 let context = function_name!();
32729 trace!("{}", self.trace_item_stack(context));
32730 let mut struct_union_group_list =
32731 pop_item!(self, struct_union_group_list, StructUnionGroupList, context);
32732 let attribute = pop_item!(self, attribute, Attribute, context);
32733 let struct_union_group_list_0_built = StructUnionGroupList {
32734 attribute: Box::new(attribute),
32735 };
32736 struct_union_group_list.push(struct_union_group_list_0_built);
32738 self.push(
32739 ASTType::StructUnionGroupList(struct_union_group_list),
32740 context,
32741 );
32742 Ok(())
32743 }
32744
32745 #[parol_runtime::function_name::named]
32750 fn struct_union_group_list_1(&mut self) -> Result<()> {
32751 let context = function_name!();
32752 trace!("{}", self.trace_item_stack(context));
32753 let struct_union_group_list_1_built = Vec::new();
32754 self.push(
32755 ASTType::StructUnionGroupList(struct_union_group_list_1_built),
32756 context,
32757 );
32758 Ok(())
32759 }
32760
32761 #[parol_runtime::function_name::named]
32766 fn struct_union_item(
32767 &mut self,
32768 _identifier: &ParseTreeType<'t>,
32769 _colon: &ParseTreeType<'t>,
32770 _scalar_type: &ParseTreeType<'t>,
32771 ) -> Result<()> {
32772 let context = function_name!();
32773 trace!("{}", self.trace_item_stack(context));
32774 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
32775 let colon = pop_item!(self, colon, Colon, context);
32776 let identifier = pop_item!(self, identifier, Identifier, context);
32777 let struct_union_item_built = StructUnionItem {
32778 identifier: Box::new(identifier),
32779 colon: Box::new(colon),
32780 scalar_type: Box::new(scalar_type),
32781 };
32782 self.user_grammar
32784 .struct_union_item(&struct_union_item_built)?;
32785 self.push(ASTType::StructUnionItem(struct_union_item_built), context);
32786 Ok(())
32787 }
32788
32789 #[parol_runtime::function_name::named]
32794 fn initial_declaration(
32795 &mut self,
32796 _initial: &ParseTreeType<'t>,
32797 _statement_block: &ParseTreeType<'t>,
32798 ) -> Result<()> {
32799 let context = function_name!();
32800 trace!("{}", self.trace_item_stack(context));
32801 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
32802 let initial = pop_item!(self, initial, Initial, context);
32803 let initial_declaration_built = InitialDeclaration {
32804 initial: Box::new(initial),
32805 statement_block: Box::new(statement_block),
32806 };
32807 self.user_grammar
32809 .initial_declaration(&initial_declaration_built)?;
32810 self.push(
32811 ASTType::InitialDeclaration(initial_declaration_built),
32812 context,
32813 );
32814 Ok(())
32815 }
32816
32817 #[parol_runtime::function_name::named]
32822 fn final_declaration(
32823 &mut self,
32824 _final: &ParseTreeType<'t>,
32825 _statement_block: &ParseTreeType<'t>,
32826 ) -> Result<()> {
32827 let context = function_name!();
32828 trace!("{}", self.trace_item_stack(context));
32829 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
32830 let r#final = pop_item!(self, r#final, Final, context);
32831 let final_declaration_built = FinalDeclaration {
32832 r#final: Box::new(r#final),
32833 statement_block: Box::new(statement_block),
32834 };
32835 self.user_grammar
32837 .final_declaration(&final_declaration_built)?;
32838 self.push(ASTType::FinalDeclaration(final_declaration_built), context);
32839 Ok(())
32840 }
32841
32842 #[parol_runtime::function_name::named]
32847 fn inst_declaration(
32848 &mut self,
32849 _inst: &ParseTreeType<'t>,
32850 _component_instantiation: &ParseTreeType<'t>,
32851 _semicolon: &ParseTreeType<'t>,
32852 ) -> Result<()> {
32853 let context = function_name!();
32854 trace!("{}", self.trace_item_stack(context));
32855 let semicolon = pop_item!(self, semicolon, Semicolon, context);
32856 let component_instantiation = pop_item!(
32857 self,
32858 component_instantiation,
32859 ComponentInstantiation,
32860 context
32861 );
32862 let inst = pop_item!(self, inst, Inst, context);
32863 let inst_declaration_built = InstDeclaration {
32864 inst: Box::new(inst),
32865 component_instantiation: Box::new(component_instantiation),
32866 semicolon: Box::new(semicolon),
32867 };
32868 self.user_grammar
32870 .inst_declaration(&inst_declaration_built)?;
32871 self.push(ASTType::InstDeclaration(inst_declaration_built), context);
32872 Ok(())
32873 }
32874
32875 #[parol_runtime::function_name::named]
32880 fn bind_declaration(
32881 &mut self,
32882 _bind: &ParseTreeType<'t>,
32883 _scoped_identifier: &ParseTreeType<'t>,
32884 _l_t_minus: &ParseTreeType<'t>,
32885 _component_instantiation: &ParseTreeType<'t>,
32886 _semicolon: &ParseTreeType<'t>,
32887 ) -> Result<()> {
32888 let context = function_name!();
32889 trace!("{}", self.trace_item_stack(context));
32890 let semicolon = pop_item!(self, semicolon, Semicolon, context);
32891 let component_instantiation = pop_item!(
32892 self,
32893 component_instantiation,
32894 ComponentInstantiation,
32895 context
32896 );
32897 let l_t_minus = pop_item!(self, l_t_minus, LTMinus, context);
32898 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
32899 let bind = pop_item!(self, bind, Bind, context);
32900 let bind_declaration_built = BindDeclaration {
32901 bind: Box::new(bind),
32902 scoped_identifier: Box::new(scoped_identifier),
32903 l_t_minus: Box::new(l_t_minus),
32904 component_instantiation: Box::new(component_instantiation),
32905 semicolon: Box::new(semicolon),
32906 };
32907 self.user_grammar
32909 .bind_declaration(&bind_declaration_built)?;
32910 self.push(ASTType::BindDeclaration(bind_declaration_built), context);
32911 Ok(())
32912 }
32913
32914 #[parol_runtime::function_name::named]
32919 fn component_instantiation(
32920 &mut self,
32921 _identifier: &ParseTreeType<'t>,
32922 _colon: &ParseTreeType<'t>,
32923 _component_instantiation_opt: &ParseTreeType<'t>,
32924 _scoped_identifier: &ParseTreeType<'t>,
32925 _component_instantiation_opt0: &ParseTreeType<'t>,
32926 _component_instantiation_opt1: &ParseTreeType<'t>,
32927 _component_instantiation_opt2: &ParseTreeType<'t>,
32928 ) -> Result<()> {
32929 let context = function_name!();
32930 trace!("{}", self.trace_item_stack(context));
32931 let component_instantiation_opt2 = pop_item!(
32932 self,
32933 component_instantiation_opt2,
32934 ComponentInstantiationOpt2,
32935 context
32936 );
32937 let component_instantiation_opt1 = pop_item!(
32938 self,
32939 component_instantiation_opt1,
32940 ComponentInstantiationOpt1,
32941 context
32942 );
32943 let component_instantiation_opt0 = pop_item!(
32944 self,
32945 component_instantiation_opt0,
32946 ComponentInstantiationOpt0,
32947 context
32948 );
32949 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
32950 let component_instantiation_opt = pop_item!(
32951 self,
32952 component_instantiation_opt,
32953 ComponentInstantiationOpt,
32954 context
32955 );
32956 let colon = pop_item!(self, colon, Colon, context);
32957 let identifier = pop_item!(self, identifier, Identifier, context);
32958 let component_instantiation_built = ComponentInstantiation {
32959 identifier: Box::new(identifier),
32960 colon: Box::new(colon),
32961 component_instantiation_opt,
32962 scoped_identifier: Box::new(scoped_identifier),
32963 component_instantiation_opt0,
32964 component_instantiation_opt1,
32965 component_instantiation_opt2,
32966 };
32967 self.user_grammar
32969 .component_instantiation(&component_instantiation_built)?;
32970 self.push(
32971 ASTType::ComponentInstantiation(component_instantiation_built),
32972 context,
32973 );
32974 Ok(())
32975 }
32976
32977 #[parol_runtime::function_name::named]
32982 fn component_instantiation_opt2_0(&mut self, _inst_port: &ParseTreeType<'t>) -> Result<()> {
32983 let context = function_name!();
32984 trace!("{}", self.trace_item_stack(context));
32985 let inst_port = pop_item!(self, inst_port, InstPort, context);
32986 let component_instantiation_opt2_0_built = ComponentInstantiationOpt2 {
32987 inst_port: Box::new(inst_port),
32988 };
32989 self.push(
32990 ASTType::ComponentInstantiationOpt2(Some(component_instantiation_opt2_0_built)),
32991 context,
32992 );
32993 Ok(())
32994 }
32995
32996 #[parol_runtime::function_name::named]
33001 fn component_instantiation_opt2_1(&mut self) -> Result<()> {
33002 let context = function_name!();
33003 trace!("{}", self.trace_item_stack(context));
33004 self.push(ASTType::ComponentInstantiationOpt2(None), context);
33005 Ok(())
33006 }
33007
33008 #[parol_runtime::function_name::named]
33013 fn component_instantiation_opt1_0(
33014 &mut self,
33015 _inst_parameter: &ParseTreeType<'t>,
33016 ) -> Result<()> {
33017 let context = function_name!();
33018 trace!("{}", self.trace_item_stack(context));
33019 let inst_parameter = pop_item!(self, inst_parameter, InstParameter, context);
33020 let component_instantiation_opt1_0_built = ComponentInstantiationOpt1 {
33021 inst_parameter: Box::new(inst_parameter),
33022 };
33023 self.push(
33024 ASTType::ComponentInstantiationOpt1(Some(component_instantiation_opt1_0_built)),
33025 context,
33026 );
33027 Ok(())
33028 }
33029
33030 #[parol_runtime::function_name::named]
33035 fn component_instantiation_opt1_1(&mut self) -> Result<()> {
33036 let context = function_name!();
33037 trace!("{}", self.trace_item_stack(context));
33038 self.push(ASTType::ComponentInstantiationOpt1(None), context);
33039 Ok(())
33040 }
33041
33042 #[parol_runtime::function_name::named]
33047 fn component_instantiation_opt0_0(&mut self, _array: &ParseTreeType<'t>) -> Result<()> {
33048 let context = function_name!();
33049 trace!("{}", self.trace_item_stack(context));
33050 let array = pop_item!(self, array, Array, context);
33051 let component_instantiation_opt0_0_built = ComponentInstantiationOpt0 {
33052 array: Box::new(array),
33053 };
33054 self.push(
33055 ASTType::ComponentInstantiationOpt0(Some(component_instantiation_opt0_0_built)),
33056 context,
33057 );
33058 Ok(())
33059 }
33060
33061 #[parol_runtime::function_name::named]
33066 fn component_instantiation_opt0_1(&mut self) -> Result<()> {
33067 let context = function_name!();
33068 trace!("{}", self.trace_item_stack(context));
33069 self.push(ASTType::ComponentInstantiationOpt0(None), context);
33070 Ok(())
33071 }
33072
33073 #[parol_runtime::function_name::named]
33078 fn component_instantiation_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
33079 let context = function_name!();
33080 trace!("{}", self.trace_item_stack(context));
33081 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
33082 let component_instantiation_opt_0_built = ComponentInstantiationOpt {
33083 clock_domain: Box::new(clock_domain),
33084 };
33085 self.push(
33086 ASTType::ComponentInstantiationOpt(Some(component_instantiation_opt_0_built)),
33087 context,
33088 );
33089 Ok(())
33090 }
33091
33092 #[parol_runtime::function_name::named]
33097 fn component_instantiation_opt_1(&mut self) -> Result<()> {
33098 let context = function_name!();
33099 trace!("{}", self.trace_item_stack(context));
33100 self.push(ASTType::ComponentInstantiationOpt(None), context);
33101 Ok(())
33102 }
33103
33104 #[parol_runtime::function_name::named]
33109 fn inst_parameter(
33110 &mut self,
33111 _hash: &ParseTreeType<'t>,
33112 _l_paren: &ParseTreeType<'t>,
33113 _inst_parameter_opt: &ParseTreeType<'t>,
33114 _r_paren: &ParseTreeType<'t>,
33115 ) -> Result<()> {
33116 let context = function_name!();
33117 trace!("{}", self.trace_item_stack(context));
33118 let r_paren = pop_item!(self, r_paren, RParen, context);
33119 let inst_parameter_opt = pop_item!(self, inst_parameter_opt, InstParameterOpt, context);
33120 let l_paren = pop_item!(self, l_paren, LParen, context);
33121 let hash = pop_item!(self, hash, Hash, context);
33122 let inst_parameter_built = InstParameter {
33123 hash: Box::new(hash),
33124 l_paren: Box::new(l_paren),
33125 inst_parameter_opt,
33126 r_paren: Box::new(r_paren),
33127 };
33128 self.user_grammar.inst_parameter(&inst_parameter_built)?;
33130 self.push(ASTType::InstParameter(inst_parameter_built), context);
33131 Ok(())
33132 }
33133
33134 #[parol_runtime::function_name::named]
33139 fn inst_parameter_opt_0(&mut self, _inst_parameter_list: &ParseTreeType<'t>) -> Result<()> {
33140 let context = function_name!();
33141 trace!("{}", self.trace_item_stack(context));
33142 let inst_parameter_list = pop_item!(self, inst_parameter_list, InstParameterList, context);
33143 let inst_parameter_opt_0_built = InstParameterOpt {
33144 inst_parameter_list: Box::new(inst_parameter_list),
33145 };
33146 self.push(
33147 ASTType::InstParameterOpt(Some(inst_parameter_opt_0_built)),
33148 context,
33149 );
33150 Ok(())
33151 }
33152
33153 #[parol_runtime::function_name::named]
33158 fn inst_parameter_opt_1(&mut self) -> Result<()> {
33159 let context = function_name!();
33160 trace!("{}", self.trace_item_stack(context));
33161 self.push(ASTType::InstParameterOpt(None), context);
33162 Ok(())
33163 }
33164
33165 #[parol_runtime::function_name::named]
33170 fn inst_parameter_list(
33171 &mut self,
33172 _inst_parameter_group: &ParseTreeType<'t>,
33173 _inst_parameter_list_list: &ParseTreeType<'t>,
33174 _inst_parameter_list_opt: &ParseTreeType<'t>,
33175 ) -> Result<()> {
33176 let context = function_name!();
33177 trace!("{}", self.trace_item_stack(context));
33178 let inst_parameter_list_opt =
33179 pop_item!(self, inst_parameter_list_opt, InstParameterListOpt, context);
33180 let inst_parameter_list_list = pop_and_reverse_item!(
33181 self,
33182 inst_parameter_list_list,
33183 InstParameterListList,
33184 context
33185 );
33186 let inst_parameter_group =
33187 pop_item!(self, inst_parameter_group, InstParameterGroup, context);
33188 let inst_parameter_list_built = InstParameterList {
33189 inst_parameter_group: Box::new(inst_parameter_group),
33190 inst_parameter_list_list,
33191 inst_parameter_list_opt,
33192 };
33193 self.user_grammar
33195 .inst_parameter_list(&inst_parameter_list_built)?;
33196 self.push(
33197 ASTType::InstParameterList(inst_parameter_list_built),
33198 context,
33199 );
33200 Ok(())
33201 }
33202
33203 #[parol_runtime::function_name::named]
33208 fn inst_parameter_list_list_0(
33209 &mut self,
33210 _comma: &ParseTreeType<'t>,
33211 _inst_parameter_group: &ParseTreeType<'t>,
33212 _inst_parameter_list_list: &ParseTreeType<'t>,
33213 ) -> Result<()> {
33214 let context = function_name!();
33215 trace!("{}", self.trace_item_stack(context));
33216 let mut inst_parameter_list_list = pop_item!(
33217 self,
33218 inst_parameter_list_list,
33219 InstParameterListList,
33220 context
33221 );
33222 let inst_parameter_group =
33223 pop_item!(self, inst_parameter_group, InstParameterGroup, context);
33224 let comma = pop_item!(self, comma, Comma, context);
33225 let inst_parameter_list_list_0_built = InstParameterListList {
33226 inst_parameter_group: Box::new(inst_parameter_group),
33227 comma: Box::new(comma),
33228 };
33229 inst_parameter_list_list.push(inst_parameter_list_list_0_built);
33231 self.push(
33232 ASTType::InstParameterListList(inst_parameter_list_list),
33233 context,
33234 );
33235 Ok(())
33236 }
33237
33238 #[parol_runtime::function_name::named]
33243 fn inst_parameter_list_list_1(&mut self) -> Result<()> {
33244 let context = function_name!();
33245 trace!("{}", self.trace_item_stack(context));
33246 let inst_parameter_list_list_1_built = Vec::new();
33247 self.push(
33248 ASTType::InstParameterListList(inst_parameter_list_list_1_built),
33249 context,
33250 );
33251 Ok(())
33252 }
33253
33254 #[parol_runtime::function_name::named]
33259 fn inst_parameter_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
33260 let context = function_name!();
33261 trace!("{}", self.trace_item_stack(context));
33262 let comma = pop_item!(self, comma, Comma, context);
33263 let inst_parameter_list_opt_0_built = InstParameterListOpt {
33264 comma: Box::new(comma),
33265 };
33266 self.push(
33267 ASTType::InstParameterListOpt(Some(inst_parameter_list_opt_0_built)),
33268 context,
33269 );
33270 Ok(())
33271 }
33272
33273 #[parol_runtime::function_name::named]
33278 fn inst_parameter_list_opt_1(&mut self) -> Result<()> {
33279 let context = function_name!();
33280 trace!("{}", self.trace_item_stack(context));
33281 self.push(ASTType::InstParameterListOpt(None), context);
33282 Ok(())
33283 }
33284
33285 #[parol_runtime::function_name::named]
33290 fn inst_parameter_group(
33291 &mut self,
33292 _inst_parameter_group_list: &ParseTreeType<'t>,
33293 _inst_parameter_group_group: &ParseTreeType<'t>,
33294 ) -> Result<()> {
33295 let context = function_name!();
33296 trace!("{}", self.trace_item_stack(context));
33297 let inst_parameter_group_group = pop_item!(
33298 self,
33299 inst_parameter_group_group,
33300 InstParameterGroupGroup,
33301 context
33302 );
33303 let inst_parameter_group_list = pop_and_reverse_item!(
33304 self,
33305 inst_parameter_group_list,
33306 InstParameterGroupList,
33307 context
33308 );
33309 let inst_parameter_group_built = InstParameterGroup {
33310 inst_parameter_group_list,
33311 inst_parameter_group_group: Box::new(inst_parameter_group_group),
33312 };
33313 self.user_grammar
33315 .inst_parameter_group(&inst_parameter_group_built)?;
33316 self.push(
33317 ASTType::InstParameterGroup(inst_parameter_group_built),
33318 context,
33319 );
33320 Ok(())
33321 }
33322
33323 #[parol_runtime::function_name::named]
33328 fn inst_parameter_group_group_0(
33329 &mut self,
33330 _l_brace: &ParseTreeType<'t>,
33331 _inst_parameter_list: &ParseTreeType<'t>,
33332 _r_brace: &ParseTreeType<'t>,
33333 ) -> Result<()> {
33334 let context = function_name!();
33335 trace!("{}", self.trace_item_stack(context));
33336 let r_brace = pop_item!(self, r_brace, RBrace, context);
33337 let inst_parameter_list = pop_item!(self, inst_parameter_list, InstParameterList, context);
33338 let l_brace = pop_item!(self, l_brace, LBrace, context);
33339 let inst_parameter_group_group_0_built =
33340 InstParameterGroupGroupLBraceInstParameterListRBrace {
33341 l_brace: Box::new(l_brace),
33342 inst_parameter_list: Box::new(inst_parameter_list),
33343 r_brace: Box::new(r_brace),
33344 };
33345 let inst_parameter_group_group_0_built =
33346 InstParameterGroupGroup::LBraceInstParameterListRBrace(
33347 inst_parameter_group_group_0_built,
33348 );
33349 self.push(
33350 ASTType::InstParameterGroupGroup(inst_parameter_group_group_0_built),
33351 context,
33352 );
33353 Ok(())
33354 }
33355
33356 #[parol_runtime::function_name::named]
33361 fn inst_parameter_group_group_1(
33362 &mut self,
33363 _inst_parameter_item: &ParseTreeType<'t>,
33364 ) -> Result<()> {
33365 let context = function_name!();
33366 trace!("{}", self.trace_item_stack(context));
33367 let inst_parameter_item = pop_item!(self, inst_parameter_item, InstParameterItem, context);
33368 let inst_parameter_group_group_1_built = InstParameterGroupGroupInstParameterItem {
33369 inst_parameter_item: Box::new(inst_parameter_item),
33370 };
33371 let inst_parameter_group_group_1_built =
33372 InstParameterGroupGroup::InstParameterItem(inst_parameter_group_group_1_built);
33373 self.push(
33374 ASTType::InstParameterGroupGroup(inst_parameter_group_group_1_built),
33375 context,
33376 );
33377 Ok(())
33378 }
33379
33380 #[parol_runtime::function_name::named]
33385 fn inst_parameter_group_list_0(
33386 &mut self,
33387 _attribute: &ParseTreeType<'t>,
33388 _inst_parameter_group_list: &ParseTreeType<'t>,
33389 ) -> Result<()> {
33390 let context = function_name!();
33391 trace!("{}", self.trace_item_stack(context));
33392 let mut inst_parameter_group_list = pop_item!(
33393 self,
33394 inst_parameter_group_list,
33395 InstParameterGroupList,
33396 context
33397 );
33398 let attribute = pop_item!(self, attribute, Attribute, context);
33399 let inst_parameter_group_list_0_built = InstParameterGroupList {
33400 attribute: Box::new(attribute),
33401 };
33402 inst_parameter_group_list.push(inst_parameter_group_list_0_built);
33404 self.push(
33405 ASTType::InstParameterGroupList(inst_parameter_group_list),
33406 context,
33407 );
33408 Ok(())
33409 }
33410
33411 #[parol_runtime::function_name::named]
33416 fn inst_parameter_group_list_1(&mut self) -> Result<()> {
33417 let context = function_name!();
33418 trace!("{}", self.trace_item_stack(context));
33419 let inst_parameter_group_list_1_built = Vec::new();
33420 self.push(
33421 ASTType::InstParameterGroupList(inst_parameter_group_list_1_built),
33422 context,
33423 );
33424 Ok(())
33425 }
33426
33427 #[parol_runtime::function_name::named]
33432 fn inst_parameter_item(
33433 &mut self,
33434 _identifier: &ParseTreeType<'t>,
33435 _inst_parameter_item_opt: &ParseTreeType<'t>,
33436 ) -> Result<()> {
33437 let context = function_name!();
33438 trace!("{}", self.trace_item_stack(context));
33439 let inst_parameter_item_opt =
33440 pop_item!(self, inst_parameter_item_opt, InstParameterItemOpt, context);
33441 let identifier = pop_item!(self, identifier, Identifier, context);
33442 let inst_parameter_item_built = InstParameterItem {
33443 identifier: Box::new(identifier),
33444 inst_parameter_item_opt,
33445 };
33446 self.user_grammar
33448 .inst_parameter_item(&inst_parameter_item_built)?;
33449 self.push(
33450 ASTType::InstParameterItem(inst_parameter_item_built),
33451 context,
33452 );
33453 Ok(())
33454 }
33455
33456 #[parol_runtime::function_name::named]
33461 fn inst_parameter_item_opt_0(
33462 &mut self,
33463 _colon: &ParseTreeType<'t>,
33464 _expression: &ParseTreeType<'t>,
33465 ) -> Result<()> {
33466 let context = function_name!();
33467 trace!("{}", self.trace_item_stack(context));
33468 let expression = pop_item!(self, expression, Expression, context);
33469 let colon = pop_item!(self, colon, Colon, context);
33470 let inst_parameter_item_opt_0_built = InstParameterItemOpt {
33471 colon: Box::new(colon),
33472 expression: Box::new(expression),
33473 };
33474 self.push(
33475 ASTType::InstParameterItemOpt(Some(inst_parameter_item_opt_0_built)),
33476 context,
33477 );
33478 Ok(())
33479 }
33480
33481 #[parol_runtime::function_name::named]
33486 fn inst_parameter_item_opt_1(&mut self) -> Result<()> {
33487 let context = function_name!();
33488 trace!("{}", self.trace_item_stack(context));
33489 self.push(ASTType::InstParameterItemOpt(None), context);
33490 Ok(())
33491 }
33492
33493 #[parol_runtime::function_name::named]
33498 fn inst_port(
33499 &mut self,
33500 _l_paren: &ParseTreeType<'t>,
33501 _inst_port_opt: &ParseTreeType<'t>,
33502 _r_paren: &ParseTreeType<'t>,
33503 ) -> Result<()> {
33504 let context = function_name!();
33505 trace!("{}", self.trace_item_stack(context));
33506 let r_paren = pop_item!(self, r_paren, RParen, context);
33507 let inst_port_opt = pop_item!(self, inst_port_opt, InstPortOpt, context);
33508 let l_paren = pop_item!(self, l_paren, LParen, context);
33509 let inst_port_built = InstPort {
33510 l_paren: Box::new(l_paren),
33511 inst_port_opt,
33512 r_paren: Box::new(r_paren),
33513 };
33514 self.user_grammar.inst_port(&inst_port_built)?;
33516 self.push(ASTType::InstPort(inst_port_built), context);
33517 Ok(())
33518 }
33519
33520 #[parol_runtime::function_name::named]
33525 fn inst_port_opt_0(&mut self, _inst_port_list: &ParseTreeType<'t>) -> Result<()> {
33526 let context = function_name!();
33527 trace!("{}", self.trace_item_stack(context));
33528 let inst_port_list = pop_item!(self, inst_port_list, InstPortList, context);
33529 let inst_port_opt_0_built = InstPortOpt {
33530 inst_port_list: Box::new(inst_port_list),
33531 };
33532 self.push(ASTType::InstPortOpt(Some(inst_port_opt_0_built)), context);
33533 Ok(())
33534 }
33535
33536 #[parol_runtime::function_name::named]
33541 fn inst_port_opt_1(&mut self) -> Result<()> {
33542 let context = function_name!();
33543 trace!("{}", self.trace_item_stack(context));
33544 self.push(ASTType::InstPortOpt(None), context);
33545 Ok(())
33546 }
33547
33548 #[parol_runtime::function_name::named]
33553 fn inst_port_list(
33554 &mut self,
33555 _inst_port_group: &ParseTreeType<'t>,
33556 _inst_port_list_list: &ParseTreeType<'t>,
33557 _inst_port_list_opt: &ParseTreeType<'t>,
33558 ) -> Result<()> {
33559 let context = function_name!();
33560 trace!("{}", self.trace_item_stack(context));
33561 let inst_port_list_opt = pop_item!(self, inst_port_list_opt, InstPortListOpt, context);
33562 let inst_port_list_list =
33563 pop_and_reverse_item!(self, inst_port_list_list, InstPortListList, context);
33564 let inst_port_group = pop_item!(self, inst_port_group, InstPortGroup, context);
33565 let inst_port_list_built = InstPortList {
33566 inst_port_group: Box::new(inst_port_group),
33567 inst_port_list_list,
33568 inst_port_list_opt,
33569 };
33570 self.user_grammar.inst_port_list(&inst_port_list_built)?;
33572 self.push(ASTType::InstPortList(inst_port_list_built), context);
33573 Ok(())
33574 }
33575
33576 #[parol_runtime::function_name::named]
33581 fn inst_port_list_list_0(
33582 &mut self,
33583 _comma: &ParseTreeType<'t>,
33584 _inst_port_group: &ParseTreeType<'t>,
33585 _inst_port_list_list: &ParseTreeType<'t>,
33586 ) -> Result<()> {
33587 let context = function_name!();
33588 trace!("{}", self.trace_item_stack(context));
33589 let mut inst_port_list_list =
33590 pop_item!(self, inst_port_list_list, InstPortListList, context);
33591 let inst_port_group = pop_item!(self, inst_port_group, InstPortGroup, context);
33592 let comma = pop_item!(self, comma, Comma, context);
33593 let inst_port_list_list_0_built = InstPortListList {
33594 inst_port_group: Box::new(inst_port_group),
33595 comma: Box::new(comma),
33596 };
33597 inst_port_list_list.push(inst_port_list_list_0_built);
33599 self.push(ASTType::InstPortListList(inst_port_list_list), context);
33600 Ok(())
33601 }
33602
33603 #[parol_runtime::function_name::named]
33608 fn inst_port_list_list_1(&mut self) -> Result<()> {
33609 let context = function_name!();
33610 trace!("{}", self.trace_item_stack(context));
33611 let inst_port_list_list_1_built = Vec::new();
33612 self.push(
33613 ASTType::InstPortListList(inst_port_list_list_1_built),
33614 context,
33615 );
33616 Ok(())
33617 }
33618
33619 #[parol_runtime::function_name::named]
33624 fn inst_port_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
33625 let context = function_name!();
33626 trace!("{}", self.trace_item_stack(context));
33627 let comma = pop_item!(self, comma, Comma, context);
33628 let inst_port_list_opt_0_built = InstPortListOpt {
33629 comma: Box::new(comma),
33630 };
33631 self.push(
33632 ASTType::InstPortListOpt(Some(inst_port_list_opt_0_built)),
33633 context,
33634 );
33635 Ok(())
33636 }
33637
33638 #[parol_runtime::function_name::named]
33643 fn inst_port_list_opt_1(&mut self) -> Result<()> {
33644 let context = function_name!();
33645 trace!("{}", self.trace_item_stack(context));
33646 self.push(ASTType::InstPortListOpt(None), context);
33647 Ok(())
33648 }
33649
33650 #[parol_runtime::function_name::named]
33655 fn inst_port_group(
33656 &mut self,
33657 _inst_port_group_list: &ParseTreeType<'t>,
33658 _inst_port_group_group: &ParseTreeType<'t>,
33659 ) -> Result<()> {
33660 let context = function_name!();
33661 trace!("{}", self.trace_item_stack(context));
33662 let inst_port_group_group =
33663 pop_item!(self, inst_port_group_group, InstPortGroupGroup, context);
33664 let inst_port_group_list =
33665 pop_and_reverse_item!(self, inst_port_group_list, InstPortGroupList, context);
33666 let inst_port_group_built = InstPortGroup {
33667 inst_port_group_list,
33668 inst_port_group_group: Box::new(inst_port_group_group),
33669 };
33670 self.user_grammar.inst_port_group(&inst_port_group_built)?;
33672 self.push(ASTType::InstPortGroup(inst_port_group_built), context);
33673 Ok(())
33674 }
33675
33676 #[parol_runtime::function_name::named]
33681 fn inst_port_group_group_0(
33682 &mut self,
33683 _l_brace: &ParseTreeType<'t>,
33684 _inst_port_list: &ParseTreeType<'t>,
33685 _r_brace: &ParseTreeType<'t>,
33686 ) -> Result<()> {
33687 let context = function_name!();
33688 trace!("{}", self.trace_item_stack(context));
33689 let r_brace = pop_item!(self, r_brace, RBrace, context);
33690 let inst_port_list = pop_item!(self, inst_port_list, InstPortList, context);
33691 let l_brace = pop_item!(self, l_brace, LBrace, context);
33692 let inst_port_group_group_0_built = InstPortGroupGroupLBraceInstPortListRBrace {
33693 l_brace: Box::new(l_brace),
33694 inst_port_list: Box::new(inst_port_list),
33695 r_brace: Box::new(r_brace),
33696 };
33697 let inst_port_group_group_0_built =
33698 InstPortGroupGroup::LBraceInstPortListRBrace(inst_port_group_group_0_built);
33699 self.push(
33700 ASTType::InstPortGroupGroup(inst_port_group_group_0_built),
33701 context,
33702 );
33703 Ok(())
33704 }
33705
33706 #[parol_runtime::function_name::named]
33711 fn inst_port_group_group_1(&mut self, _inst_port_item: &ParseTreeType<'t>) -> Result<()> {
33712 let context = function_name!();
33713 trace!("{}", self.trace_item_stack(context));
33714 let inst_port_item = pop_item!(self, inst_port_item, InstPortItem, context);
33715 let inst_port_group_group_1_built = InstPortGroupGroupInstPortItem {
33716 inst_port_item: Box::new(inst_port_item),
33717 };
33718 let inst_port_group_group_1_built =
33719 InstPortGroupGroup::InstPortItem(inst_port_group_group_1_built);
33720 self.push(
33721 ASTType::InstPortGroupGroup(inst_port_group_group_1_built),
33722 context,
33723 );
33724 Ok(())
33725 }
33726
33727 #[parol_runtime::function_name::named]
33732 fn inst_port_group_list_0(
33733 &mut self,
33734 _attribute: &ParseTreeType<'t>,
33735 _inst_port_group_list: &ParseTreeType<'t>,
33736 ) -> Result<()> {
33737 let context = function_name!();
33738 trace!("{}", self.trace_item_stack(context));
33739 let mut inst_port_group_list =
33740 pop_item!(self, inst_port_group_list, InstPortGroupList, context);
33741 let attribute = pop_item!(self, attribute, Attribute, context);
33742 let inst_port_group_list_0_built = InstPortGroupList {
33743 attribute: Box::new(attribute),
33744 };
33745 inst_port_group_list.push(inst_port_group_list_0_built);
33747 self.push(ASTType::InstPortGroupList(inst_port_group_list), context);
33748 Ok(())
33749 }
33750
33751 #[parol_runtime::function_name::named]
33756 fn inst_port_group_list_1(&mut self) -> Result<()> {
33757 let context = function_name!();
33758 trace!("{}", self.trace_item_stack(context));
33759 let inst_port_group_list_1_built = Vec::new();
33760 self.push(
33761 ASTType::InstPortGroupList(inst_port_group_list_1_built),
33762 context,
33763 );
33764 Ok(())
33765 }
33766
33767 #[parol_runtime::function_name::named]
33772 fn inst_port_item(
33773 &mut self,
33774 _identifier: &ParseTreeType<'t>,
33775 _inst_port_item_opt: &ParseTreeType<'t>,
33776 ) -> Result<()> {
33777 let context = function_name!();
33778 trace!("{}", self.trace_item_stack(context));
33779 let inst_port_item_opt = pop_item!(self, inst_port_item_opt, InstPortItemOpt, context);
33780 let identifier = pop_item!(self, identifier, Identifier, context);
33781 let inst_port_item_built = InstPortItem {
33782 identifier: Box::new(identifier),
33783 inst_port_item_opt,
33784 };
33785 self.user_grammar.inst_port_item(&inst_port_item_built)?;
33787 self.push(ASTType::InstPortItem(inst_port_item_built), context);
33788 Ok(())
33789 }
33790
33791 #[parol_runtime::function_name::named]
33796 fn inst_port_item_opt_0(
33797 &mut self,
33798 _colon: &ParseTreeType<'t>,
33799 _expression: &ParseTreeType<'t>,
33800 ) -> Result<()> {
33801 let context = function_name!();
33802 trace!("{}", self.trace_item_stack(context));
33803 let expression = pop_item!(self, expression, Expression, context);
33804 let colon = pop_item!(self, colon, Colon, context);
33805 let inst_port_item_opt_0_built = InstPortItemOpt {
33806 colon: Box::new(colon),
33807 expression: Box::new(expression),
33808 };
33809 self.push(
33810 ASTType::InstPortItemOpt(Some(inst_port_item_opt_0_built)),
33811 context,
33812 );
33813 Ok(())
33814 }
33815
33816 #[parol_runtime::function_name::named]
33821 fn inst_port_item_opt_1(&mut self) -> Result<()> {
33822 let context = function_name!();
33823 trace!("{}", self.trace_item_stack(context));
33824 self.push(ASTType::InstPortItemOpt(None), context);
33825 Ok(())
33826 }
33827
33828 #[parol_runtime::function_name::named]
33833 fn with_parameter(
33834 &mut self,
33835 _hash: &ParseTreeType<'t>,
33836 _l_paren: &ParseTreeType<'t>,
33837 _with_parameter_opt: &ParseTreeType<'t>,
33838 _r_paren: &ParseTreeType<'t>,
33839 ) -> Result<()> {
33840 let context = function_name!();
33841 trace!("{}", self.trace_item_stack(context));
33842 let r_paren = pop_item!(self, r_paren, RParen, context);
33843 let with_parameter_opt = pop_item!(self, with_parameter_opt, WithParameterOpt, context);
33844 let l_paren = pop_item!(self, l_paren, LParen, context);
33845 let hash = pop_item!(self, hash, Hash, context);
33846 let with_parameter_built = WithParameter {
33847 hash: Box::new(hash),
33848 l_paren: Box::new(l_paren),
33849 with_parameter_opt,
33850 r_paren: Box::new(r_paren),
33851 };
33852 self.user_grammar.with_parameter(&with_parameter_built)?;
33854 self.push(ASTType::WithParameter(with_parameter_built), context);
33855 Ok(())
33856 }
33857
33858 #[parol_runtime::function_name::named]
33863 fn with_parameter_opt_0(&mut self, _with_parameter_list: &ParseTreeType<'t>) -> Result<()> {
33864 let context = function_name!();
33865 trace!("{}", self.trace_item_stack(context));
33866 let with_parameter_list = pop_item!(self, with_parameter_list, WithParameterList, context);
33867 let with_parameter_opt_0_built = WithParameterOpt {
33868 with_parameter_list: Box::new(with_parameter_list),
33869 };
33870 self.push(
33871 ASTType::WithParameterOpt(Some(with_parameter_opt_0_built)),
33872 context,
33873 );
33874 Ok(())
33875 }
33876
33877 #[parol_runtime::function_name::named]
33882 fn with_parameter_opt_1(&mut self) -> Result<()> {
33883 let context = function_name!();
33884 trace!("{}", self.trace_item_stack(context));
33885 self.push(ASTType::WithParameterOpt(None), context);
33886 Ok(())
33887 }
33888
33889 #[parol_runtime::function_name::named]
33894 fn with_parameter_list(
33895 &mut self,
33896 _with_parameter_group: &ParseTreeType<'t>,
33897 _with_parameter_list_list: &ParseTreeType<'t>,
33898 _with_parameter_list_opt: &ParseTreeType<'t>,
33899 ) -> Result<()> {
33900 let context = function_name!();
33901 trace!("{}", self.trace_item_stack(context));
33902 let with_parameter_list_opt =
33903 pop_item!(self, with_parameter_list_opt, WithParameterListOpt, context);
33904 let with_parameter_list_list = pop_and_reverse_item!(
33905 self,
33906 with_parameter_list_list,
33907 WithParameterListList,
33908 context
33909 );
33910 let with_parameter_group =
33911 pop_item!(self, with_parameter_group, WithParameterGroup, context);
33912 let with_parameter_list_built = WithParameterList {
33913 with_parameter_group: Box::new(with_parameter_group),
33914 with_parameter_list_list,
33915 with_parameter_list_opt,
33916 };
33917 self.user_grammar
33919 .with_parameter_list(&with_parameter_list_built)?;
33920 self.push(
33921 ASTType::WithParameterList(with_parameter_list_built),
33922 context,
33923 );
33924 Ok(())
33925 }
33926
33927 #[parol_runtime::function_name::named]
33932 fn with_parameter_list_list_0(
33933 &mut self,
33934 _comma: &ParseTreeType<'t>,
33935 _with_parameter_group: &ParseTreeType<'t>,
33936 _with_parameter_list_list: &ParseTreeType<'t>,
33937 ) -> Result<()> {
33938 let context = function_name!();
33939 trace!("{}", self.trace_item_stack(context));
33940 let mut with_parameter_list_list = pop_item!(
33941 self,
33942 with_parameter_list_list,
33943 WithParameterListList,
33944 context
33945 );
33946 let with_parameter_group =
33947 pop_item!(self, with_parameter_group, WithParameterGroup, context);
33948 let comma = pop_item!(self, comma, Comma, context);
33949 let with_parameter_list_list_0_built = WithParameterListList {
33950 with_parameter_group: Box::new(with_parameter_group),
33951 comma: Box::new(comma),
33952 };
33953 with_parameter_list_list.push(with_parameter_list_list_0_built);
33955 self.push(
33956 ASTType::WithParameterListList(with_parameter_list_list),
33957 context,
33958 );
33959 Ok(())
33960 }
33961
33962 #[parol_runtime::function_name::named]
33967 fn with_parameter_list_list_1(&mut self) -> Result<()> {
33968 let context = function_name!();
33969 trace!("{}", self.trace_item_stack(context));
33970 let with_parameter_list_list_1_built = Vec::new();
33971 self.push(
33972 ASTType::WithParameterListList(with_parameter_list_list_1_built),
33973 context,
33974 );
33975 Ok(())
33976 }
33977
33978 #[parol_runtime::function_name::named]
33983 fn with_parameter_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
33984 let context = function_name!();
33985 trace!("{}", self.trace_item_stack(context));
33986 let comma = pop_item!(self, comma, Comma, context);
33987 let with_parameter_list_opt_0_built = WithParameterListOpt {
33988 comma: Box::new(comma),
33989 };
33990 self.push(
33991 ASTType::WithParameterListOpt(Some(with_parameter_list_opt_0_built)),
33992 context,
33993 );
33994 Ok(())
33995 }
33996
33997 #[parol_runtime::function_name::named]
34002 fn with_parameter_list_opt_1(&mut self) -> Result<()> {
34003 let context = function_name!();
34004 trace!("{}", self.trace_item_stack(context));
34005 self.push(ASTType::WithParameterListOpt(None), context);
34006 Ok(())
34007 }
34008
34009 #[parol_runtime::function_name::named]
34014 fn with_parameter_group(
34015 &mut self,
34016 _with_parameter_group_list: &ParseTreeType<'t>,
34017 _with_parameter_group_group: &ParseTreeType<'t>,
34018 ) -> Result<()> {
34019 let context = function_name!();
34020 trace!("{}", self.trace_item_stack(context));
34021 let with_parameter_group_group = pop_item!(
34022 self,
34023 with_parameter_group_group,
34024 WithParameterGroupGroup,
34025 context
34026 );
34027 let with_parameter_group_list = pop_and_reverse_item!(
34028 self,
34029 with_parameter_group_list,
34030 WithParameterGroupList,
34031 context
34032 );
34033 let with_parameter_group_built = WithParameterGroup {
34034 with_parameter_group_list,
34035 with_parameter_group_group: Box::new(with_parameter_group_group),
34036 };
34037 self.user_grammar
34039 .with_parameter_group(&with_parameter_group_built)?;
34040 self.push(
34041 ASTType::WithParameterGroup(with_parameter_group_built),
34042 context,
34043 );
34044 Ok(())
34045 }
34046
34047 #[parol_runtime::function_name::named]
34052 fn with_parameter_group_group_0(
34053 &mut self,
34054 _l_brace: &ParseTreeType<'t>,
34055 _with_parameter_list: &ParseTreeType<'t>,
34056 _r_brace: &ParseTreeType<'t>,
34057 ) -> Result<()> {
34058 let context = function_name!();
34059 trace!("{}", self.trace_item_stack(context));
34060 let r_brace = pop_item!(self, r_brace, RBrace, context);
34061 let with_parameter_list = pop_item!(self, with_parameter_list, WithParameterList, context);
34062 let l_brace = pop_item!(self, l_brace, LBrace, context);
34063 let with_parameter_group_group_0_built =
34064 WithParameterGroupGroupLBraceWithParameterListRBrace {
34065 l_brace: Box::new(l_brace),
34066 with_parameter_list: Box::new(with_parameter_list),
34067 r_brace: Box::new(r_brace),
34068 };
34069 let with_parameter_group_group_0_built =
34070 WithParameterGroupGroup::LBraceWithParameterListRBrace(
34071 with_parameter_group_group_0_built,
34072 );
34073 self.push(
34074 ASTType::WithParameterGroupGroup(with_parameter_group_group_0_built),
34075 context,
34076 );
34077 Ok(())
34078 }
34079
34080 #[parol_runtime::function_name::named]
34085 fn with_parameter_group_group_1(
34086 &mut self,
34087 _with_parameter_item: &ParseTreeType<'t>,
34088 ) -> Result<()> {
34089 let context = function_name!();
34090 trace!("{}", self.trace_item_stack(context));
34091 let with_parameter_item = pop_item!(self, with_parameter_item, WithParameterItem, context);
34092 let with_parameter_group_group_1_built = WithParameterGroupGroupWithParameterItem {
34093 with_parameter_item: Box::new(with_parameter_item),
34094 };
34095 let with_parameter_group_group_1_built =
34096 WithParameterGroupGroup::WithParameterItem(with_parameter_group_group_1_built);
34097 self.push(
34098 ASTType::WithParameterGroupGroup(with_parameter_group_group_1_built),
34099 context,
34100 );
34101 Ok(())
34102 }
34103
34104 #[parol_runtime::function_name::named]
34109 fn with_parameter_group_list_0(
34110 &mut self,
34111 _attribute: &ParseTreeType<'t>,
34112 _with_parameter_group_list: &ParseTreeType<'t>,
34113 ) -> Result<()> {
34114 let context = function_name!();
34115 trace!("{}", self.trace_item_stack(context));
34116 let mut with_parameter_group_list = pop_item!(
34117 self,
34118 with_parameter_group_list,
34119 WithParameterGroupList,
34120 context
34121 );
34122 let attribute = pop_item!(self, attribute, Attribute, context);
34123 let with_parameter_group_list_0_built = WithParameterGroupList {
34124 attribute: Box::new(attribute),
34125 };
34126 with_parameter_group_list.push(with_parameter_group_list_0_built);
34128 self.push(
34129 ASTType::WithParameterGroupList(with_parameter_group_list),
34130 context,
34131 );
34132 Ok(())
34133 }
34134
34135 #[parol_runtime::function_name::named]
34140 fn with_parameter_group_list_1(&mut self) -> Result<()> {
34141 let context = function_name!();
34142 trace!("{}", self.trace_item_stack(context));
34143 let with_parameter_group_list_1_built = Vec::new();
34144 self.push(
34145 ASTType::WithParameterGroupList(with_parameter_group_list_1_built),
34146 context,
34147 );
34148 Ok(())
34149 }
34150
34151 #[parol_runtime::function_name::named]
34156 fn with_parameter_item(
34157 &mut self,
34158 _with_parameter_item_group: &ParseTreeType<'t>,
34159 _identifier: &ParseTreeType<'t>,
34160 _colon: &ParseTreeType<'t>,
34161 _with_parameter_item_group0: &ParseTreeType<'t>,
34162 _with_parameter_item_opt: &ParseTreeType<'t>,
34163 ) -> Result<()> {
34164 let context = function_name!();
34165 trace!("{}", self.trace_item_stack(context));
34166 let with_parameter_item_opt =
34167 pop_item!(self, with_parameter_item_opt, WithParameterItemOpt, context);
34168 let with_parameter_item_group0 = pop_item!(
34169 self,
34170 with_parameter_item_group0,
34171 WithParameterItemGroup0,
34172 context
34173 );
34174 let colon = pop_item!(self, colon, Colon, context);
34175 let identifier = pop_item!(self, identifier, Identifier, context);
34176 let with_parameter_item_group = pop_item!(
34177 self,
34178 with_parameter_item_group,
34179 WithParameterItemGroup,
34180 context
34181 );
34182 let with_parameter_item_built = WithParameterItem {
34183 with_parameter_item_group: Box::new(with_parameter_item_group),
34184 identifier: Box::new(identifier),
34185 colon: Box::new(colon),
34186 with_parameter_item_group0: Box::new(with_parameter_item_group0),
34187 with_parameter_item_opt,
34188 };
34189 self.user_grammar
34191 .with_parameter_item(&with_parameter_item_built)?;
34192 self.push(
34193 ASTType::WithParameterItem(with_parameter_item_built),
34194 context,
34195 );
34196 Ok(())
34197 }
34198
34199 #[parol_runtime::function_name::named]
34204 fn with_parameter_item_group0_0(&mut self, _array_type: &ParseTreeType<'t>) -> Result<()> {
34205 let context = function_name!();
34206 trace!("{}", self.trace_item_stack(context));
34207 let array_type = pop_item!(self, array_type, ArrayType, context);
34208 let with_parameter_item_group0_0_built = WithParameterItemGroup0ArrayType {
34209 array_type: Box::new(array_type),
34210 };
34211 let with_parameter_item_group0_0_built =
34212 WithParameterItemGroup0::ArrayType(with_parameter_item_group0_0_built);
34213 self.push(
34214 ASTType::WithParameterItemGroup0(with_parameter_item_group0_0_built),
34215 context,
34216 );
34217 Ok(())
34218 }
34219
34220 #[parol_runtime::function_name::named]
34225 fn with_parameter_item_group0_1(&mut self, _type: &ParseTreeType<'t>) -> Result<()> {
34226 let context = function_name!();
34227 trace!("{}", self.trace_item_stack(context));
34228 let r#type = pop_item!(self, r#type, Type, context);
34229 let with_parameter_item_group0_1_built = WithParameterItemGroup0Type {
34230 r#type: Box::new(r#type),
34231 };
34232 let with_parameter_item_group0_1_built =
34233 WithParameterItemGroup0::Type(with_parameter_item_group0_1_built);
34234 self.push(
34235 ASTType::WithParameterItemGroup0(with_parameter_item_group0_1_built),
34236 context,
34237 );
34238 Ok(())
34239 }
34240
34241 #[parol_runtime::function_name::named]
34246 fn with_parameter_item_group_0(&mut self, _param: &ParseTreeType<'t>) -> Result<()> {
34247 let context = function_name!();
34248 trace!("{}", self.trace_item_stack(context));
34249 let param = pop_item!(self, param, Param, context);
34250 let with_parameter_item_group_0_built = WithParameterItemGroupParam {
34251 param: Box::new(param),
34252 };
34253 let with_parameter_item_group_0_built =
34254 WithParameterItemGroup::Param(with_parameter_item_group_0_built);
34255 self.push(
34256 ASTType::WithParameterItemGroup(with_parameter_item_group_0_built),
34257 context,
34258 );
34259 Ok(())
34260 }
34261
34262 #[parol_runtime::function_name::named]
34267 fn with_parameter_item_group_1(&mut self, _const: &ParseTreeType<'t>) -> Result<()> {
34268 let context = function_name!();
34269 trace!("{}", self.trace_item_stack(context));
34270 let r#const = pop_item!(self, r#const, Const, context);
34271 let with_parameter_item_group_1_built = WithParameterItemGroupConst {
34272 r#const: Box::new(r#const),
34273 };
34274 let with_parameter_item_group_1_built =
34275 WithParameterItemGroup::Const(with_parameter_item_group_1_built);
34276 self.push(
34277 ASTType::WithParameterItemGroup(with_parameter_item_group_1_built),
34278 context,
34279 );
34280 Ok(())
34281 }
34282
34283 #[parol_runtime::function_name::named]
34288 fn with_parameter_item_opt_0(
34289 &mut self,
34290 _equ: &ParseTreeType<'t>,
34291 _expression: &ParseTreeType<'t>,
34292 ) -> Result<()> {
34293 let context = function_name!();
34294 trace!("{}", self.trace_item_stack(context));
34295 let expression = pop_item!(self, expression, Expression, context);
34296 let equ = pop_item!(self, equ, Equ, context);
34297 let with_parameter_item_opt_0_built = WithParameterItemOpt {
34298 equ: Box::new(equ),
34299 expression: Box::new(expression),
34300 };
34301 self.push(
34302 ASTType::WithParameterItemOpt(Some(with_parameter_item_opt_0_built)),
34303 context,
34304 );
34305 Ok(())
34306 }
34307
34308 #[parol_runtime::function_name::named]
34313 fn with_parameter_item_opt_1(&mut self) -> Result<()> {
34314 let context = function_name!();
34315 trace!("{}", self.trace_item_stack(context));
34316 self.push(ASTType::WithParameterItemOpt(None), context);
34317 Ok(())
34318 }
34319
34320 #[parol_runtime::function_name::named]
34325 fn generic_bound_0(&mut self, _type: &ParseTreeType<'t>) -> Result<()> {
34326 let context = function_name!();
34327 trace!("{}", self.trace_item_stack(context));
34328 let r#type = pop_item!(self, r#type, Type, context);
34329 let generic_bound_0_built = GenericBoundType {
34330 r#type: Box::new(r#type),
34331 };
34332 let generic_bound_0_built = GenericBound::Type(generic_bound_0_built);
34333 self.user_grammar.generic_bound(&generic_bound_0_built)?;
34335 self.push(ASTType::GenericBound(generic_bound_0_built), context);
34336 Ok(())
34337 }
34338
34339 #[parol_runtime::function_name::named]
34344 fn generic_bound_1(
34345 &mut self,
34346 _inst: &ParseTreeType<'t>,
34347 _scoped_identifier: &ParseTreeType<'t>,
34348 ) -> Result<()> {
34349 let context = function_name!();
34350 trace!("{}", self.trace_item_stack(context));
34351 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
34352 let inst = pop_item!(self, inst, Inst, context);
34353 let generic_bound_1_built = GenericBoundInstScopedIdentifier {
34354 inst: Box::new(inst),
34355 scoped_identifier: Box::new(scoped_identifier),
34356 };
34357 let generic_bound_1_built = GenericBound::InstScopedIdentifier(generic_bound_1_built);
34358 self.user_grammar.generic_bound(&generic_bound_1_built)?;
34360 self.push(ASTType::GenericBound(generic_bound_1_built), context);
34361 Ok(())
34362 }
34363
34364 #[parol_runtime::function_name::named]
34369 fn generic_bound_2(&mut self, _generic_proto_bound: &ParseTreeType<'t>) -> Result<()> {
34370 let context = function_name!();
34371 trace!("{}", self.trace_item_stack(context));
34372 let generic_proto_bound = pop_item!(self, generic_proto_bound, GenericProtoBound, context);
34373 let generic_bound_2_built = GenericBoundGenericProtoBound {
34374 generic_proto_bound: Box::new(generic_proto_bound),
34375 };
34376 let generic_bound_2_built = GenericBound::GenericProtoBound(generic_bound_2_built);
34377 self.user_grammar.generic_bound(&generic_bound_2_built)?;
34379 self.push(ASTType::GenericBound(generic_bound_2_built), context);
34380 Ok(())
34381 }
34382
34383 #[parol_runtime::function_name::named]
34388 fn with_generic_parameter(
34389 &mut self,
34390 _colon_colon_l_angle: &ParseTreeType<'t>,
34391 _with_generic_parameter_list: &ParseTreeType<'t>,
34392 _r_angle: &ParseTreeType<'t>,
34393 ) -> Result<()> {
34394 let context = function_name!();
34395 trace!("{}", self.trace_item_stack(context));
34396 let r_angle = pop_item!(self, r_angle, RAngle, context);
34397 let with_generic_parameter_list = pop_item!(
34398 self,
34399 with_generic_parameter_list,
34400 WithGenericParameterList,
34401 context
34402 );
34403 let colon_colon_l_angle = pop_item!(self, colon_colon_l_angle, ColonColonLAngle, context);
34404 let with_generic_parameter_built = WithGenericParameter {
34405 colon_colon_l_angle: Box::new(colon_colon_l_angle),
34406 with_generic_parameter_list: Box::new(with_generic_parameter_list),
34407 r_angle: Box::new(r_angle),
34408 };
34409 self.user_grammar
34411 .with_generic_parameter(&with_generic_parameter_built)?;
34412 self.push(
34413 ASTType::WithGenericParameter(with_generic_parameter_built),
34414 context,
34415 );
34416 Ok(())
34417 }
34418
34419 #[parol_runtime::function_name::named]
34424 fn with_generic_parameter_list(
34425 &mut self,
34426 _with_generic_parameter_item: &ParseTreeType<'t>,
34427 _with_generic_parameter_list_list: &ParseTreeType<'t>,
34428 _with_generic_parameter_list_opt: &ParseTreeType<'t>,
34429 ) -> Result<()> {
34430 let context = function_name!();
34431 trace!("{}", self.trace_item_stack(context));
34432 let with_generic_parameter_list_opt = pop_item!(
34433 self,
34434 with_generic_parameter_list_opt,
34435 WithGenericParameterListOpt,
34436 context
34437 );
34438 let with_generic_parameter_list_list = pop_and_reverse_item!(
34439 self,
34440 with_generic_parameter_list_list,
34441 WithGenericParameterListList,
34442 context
34443 );
34444 let with_generic_parameter_item = pop_item!(
34445 self,
34446 with_generic_parameter_item,
34447 WithGenericParameterItem,
34448 context
34449 );
34450 let with_generic_parameter_list_built = WithGenericParameterList {
34451 with_generic_parameter_item: Box::new(with_generic_parameter_item),
34452 with_generic_parameter_list_list,
34453 with_generic_parameter_list_opt,
34454 };
34455 self.user_grammar
34457 .with_generic_parameter_list(&with_generic_parameter_list_built)?;
34458 self.push(
34459 ASTType::WithGenericParameterList(with_generic_parameter_list_built),
34460 context,
34461 );
34462 Ok(())
34463 }
34464
34465 #[parol_runtime::function_name::named]
34470 fn with_generic_parameter_list_list_0(
34471 &mut self,
34472 _comma: &ParseTreeType<'t>,
34473 _with_generic_parameter_item: &ParseTreeType<'t>,
34474 _with_generic_parameter_list_list: &ParseTreeType<'t>,
34475 ) -> Result<()> {
34476 let context = function_name!();
34477 trace!("{}", self.trace_item_stack(context));
34478 let mut with_generic_parameter_list_list = pop_item!(
34479 self,
34480 with_generic_parameter_list_list,
34481 WithGenericParameterListList,
34482 context
34483 );
34484 let with_generic_parameter_item = pop_item!(
34485 self,
34486 with_generic_parameter_item,
34487 WithGenericParameterItem,
34488 context
34489 );
34490 let comma = pop_item!(self, comma, Comma, context);
34491 let with_generic_parameter_list_list_0_built = WithGenericParameterListList {
34492 with_generic_parameter_item: Box::new(with_generic_parameter_item),
34493 comma: Box::new(comma),
34494 };
34495 with_generic_parameter_list_list.push(with_generic_parameter_list_list_0_built);
34497 self.push(
34498 ASTType::WithGenericParameterListList(with_generic_parameter_list_list),
34499 context,
34500 );
34501 Ok(())
34502 }
34503
34504 #[parol_runtime::function_name::named]
34509 fn with_generic_parameter_list_list_1(&mut self) -> Result<()> {
34510 let context = function_name!();
34511 trace!("{}", self.trace_item_stack(context));
34512 let with_generic_parameter_list_list_1_built = Vec::new();
34513 self.push(
34514 ASTType::WithGenericParameterListList(with_generic_parameter_list_list_1_built),
34515 context,
34516 );
34517 Ok(())
34518 }
34519
34520 #[parol_runtime::function_name::named]
34525 fn with_generic_parameter_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
34526 let context = function_name!();
34527 trace!("{}", self.trace_item_stack(context));
34528 let comma = pop_item!(self, comma, Comma, context);
34529 let with_generic_parameter_list_opt_0_built = WithGenericParameterListOpt {
34530 comma: Box::new(comma),
34531 };
34532 self.push(
34533 ASTType::WithGenericParameterListOpt(Some(with_generic_parameter_list_opt_0_built)),
34534 context,
34535 );
34536 Ok(())
34537 }
34538
34539 #[parol_runtime::function_name::named]
34544 fn with_generic_parameter_list_opt_1(&mut self) -> Result<()> {
34545 let context = function_name!();
34546 trace!("{}", self.trace_item_stack(context));
34547 self.push(ASTType::WithGenericParameterListOpt(None), context);
34548 Ok(())
34549 }
34550
34551 #[parol_runtime::function_name::named]
34556 fn with_generic_parameter_item(
34557 &mut self,
34558 _identifier: &ParseTreeType<'t>,
34559 _colon: &ParseTreeType<'t>,
34560 _generic_bound: &ParseTreeType<'t>,
34561 _with_generic_parameter_item_opt: &ParseTreeType<'t>,
34562 ) -> Result<()> {
34563 let context = function_name!();
34564 trace!("{}", self.trace_item_stack(context));
34565 let with_generic_parameter_item_opt = pop_item!(
34566 self,
34567 with_generic_parameter_item_opt,
34568 WithGenericParameterItemOpt,
34569 context
34570 );
34571 let generic_bound = pop_item!(self, generic_bound, GenericBound, context);
34572 let colon = pop_item!(self, colon, Colon, context);
34573 let identifier = pop_item!(self, identifier, Identifier, context);
34574 let with_generic_parameter_item_built = WithGenericParameterItem {
34575 identifier: Box::new(identifier),
34576 colon: Box::new(colon),
34577 generic_bound: Box::new(generic_bound),
34578 with_generic_parameter_item_opt,
34579 };
34580 self.user_grammar
34582 .with_generic_parameter_item(&with_generic_parameter_item_built)?;
34583 self.push(
34584 ASTType::WithGenericParameterItem(with_generic_parameter_item_built),
34585 context,
34586 );
34587 Ok(())
34588 }
34589
34590 #[parol_runtime::function_name::named]
34595 fn with_generic_parameter_item_opt_0(
34596 &mut self,
34597 _equ: &ParseTreeType<'t>,
34598 _with_generic_argument_item: &ParseTreeType<'t>,
34599 ) -> Result<()> {
34600 let context = function_name!();
34601 trace!("{}", self.trace_item_stack(context));
34602 let with_generic_argument_item = pop_item!(
34603 self,
34604 with_generic_argument_item,
34605 WithGenericArgumentItem,
34606 context
34607 );
34608 let equ = pop_item!(self, equ, Equ, context);
34609 let with_generic_parameter_item_opt_0_built = WithGenericParameterItemOpt {
34610 equ: Box::new(equ),
34611 with_generic_argument_item: Box::new(with_generic_argument_item),
34612 };
34613 self.push(
34614 ASTType::WithGenericParameterItemOpt(Some(with_generic_parameter_item_opt_0_built)),
34615 context,
34616 );
34617 Ok(())
34618 }
34619
34620 #[parol_runtime::function_name::named]
34625 fn with_generic_parameter_item_opt_1(&mut self) -> Result<()> {
34626 let context = function_name!();
34627 trace!("{}", self.trace_item_stack(context));
34628 self.push(ASTType::WithGenericParameterItemOpt(None), context);
34629 Ok(())
34630 }
34631
34632 #[parol_runtime::function_name::named]
34637 fn generic_proto_bound_0(&mut self, _scoped_identifier: &ParseTreeType<'t>) -> Result<()> {
34638 let context = function_name!();
34639 trace!("{}", self.trace_item_stack(context));
34640 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
34641 let generic_proto_bound_0_built = GenericProtoBoundScopedIdentifier {
34642 scoped_identifier: Box::new(scoped_identifier),
34643 };
34644 let generic_proto_bound_0_built =
34645 GenericProtoBound::ScopedIdentifier(generic_proto_bound_0_built);
34646 self.user_grammar
34648 .generic_proto_bound(&generic_proto_bound_0_built)?;
34649 self.push(
34650 ASTType::GenericProtoBound(generic_proto_bound_0_built),
34651 context,
34652 );
34653 Ok(())
34654 }
34655
34656 #[parol_runtime::function_name::named]
34661 fn generic_proto_bound_1(&mut self, _fixed_type: &ParseTreeType<'t>) -> Result<()> {
34662 let context = function_name!();
34663 trace!("{}", self.trace_item_stack(context));
34664 let fixed_type = pop_item!(self, fixed_type, FixedType, context);
34665 let generic_proto_bound_1_built = GenericProtoBoundFixedType {
34666 fixed_type: Box::new(fixed_type),
34667 };
34668 let generic_proto_bound_1_built = GenericProtoBound::FixedType(generic_proto_bound_1_built);
34669 self.user_grammar
34671 .generic_proto_bound(&generic_proto_bound_1_built)?;
34672 self.push(
34673 ASTType::GenericProtoBound(generic_proto_bound_1_built),
34674 context,
34675 );
34676 Ok(())
34677 }
34678
34679 #[parol_runtime::function_name::named]
34684 fn with_generic_argument(
34685 &mut self,
34686 _colon_colon_l_angle: &ParseTreeType<'t>,
34687 _with_generic_argument_opt: &ParseTreeType<'t>,
34688 _r_angle: &ParseTreeType<'t>,
34689 ) -> Result<()> {
34690 let context = function_name!();
34691 trace!("{}", self.trace_item_stack(context));
34692 let r_angle = pop_item!(self, r_angle, RAngle, context);
34693 let with_generic_argument_opt = pop_item!(
34694 self,
34695 with_generic_argument_opt,
34696 WithGenericArgumentOpt,
34697 context
34698 );
34699 let colon_colon_l_angle = pop_item!(self, colon_colon_l_angle, ColonColonLAngle, context);
34700 let with_generic_argument_built = WithGenericArgument {
34701 colon_colon_l_angle: Box::new(colon_colon_l_angle),
34702 with_generic_argument_opt,
34703 r_angle: Box::new(r_angle),
34704 };
34705 self.user_grammar
34707 .with_generic_argument(&with_generic_argument_built)?;
34708 self.push(
34709 ASTType::WithGenericArgument(with_generic_argument_built),
34710 context,
34711 );
34712 Ok(())
34713 }
34714
34715 #[parol_runtime::function_name::named]
34720 fn with_generic_argument_opt_0(
34721 &mut self,
34722 _with_generic_argument_list: &ParseTreeType<'t>,
34723 ) -> Result<()> {
34724 let context = function_name!();
34725 trace!("{}", self.trace_item_stack(context));
34726 let with_generic_argument_list = pop_item!(
34727 self,
34728 with_generic_argument_list,
34729 WithGenericArgumentList,
34730 context
34731 );
34732 let with_generic_argument_opt_0_built = WithGenericArgumentOpt {
34733 with_generic_argument_list: Box::new(with_generic_argument_list),
34734 };
34735 self.push(
34736 ASTType::WithGenericArgumentOpt(Some(with_generic_argument_opt_0_built)),
34737 context,
34738 );
34739 Ok(())
34740 }
34741
34742 #[parol_runtime::function_name::named]
34747 fn with_generic_argument_opt_1(&mut self) -> Result<()> {
34748 let context = function_name!();
34749 trace!("{}", self.trace_item_stack(context));
34750 self.push(ASTType::WithGenericArgumentOpt(None), context);
34751 Ok(())
34752 }
34753
34754 #[parol_runtime::function_name::named]
34759 fn with_generic_argument_list(
34760 &mut self,
34761 _with_generic_argument_item: &ParseTreeType<'t>,
34762 _with_generic_argument_list_list: &ParseTreeType<'t>,
34763 _with_generic_argument_list_opt: &ParseTreeType<'t>,
34764 ) -> Result<()> {
34765 let context = function_name!();
34766 trace!("{}", self.trace_item_stack(context));
34767 let with_generic_argument_list_opt = pop_item!(
34768 self,
34769 with_generic_argument_list_opt,
34770 WithGenericArgumentListOpt,
34771 context
34772 );
34773 let with_generic_argument_list_list = pop_and_reverse_item!(
34774 self,
34775 with_generic_argument_list_list,
34776 WithGenericArgumentListList,
34777 context
34778 );
34779 let with_generic_argument_item = pop_item!(
34780 self,
34781 with_generic_argument_item,
34782 WithGenericArgumentItem,
34783 context
34784 );
34785 let with_generic_argument_list_built = WithGenericArgumentList {
34786 with_generic_argument_item: Box::new(with_generic_argument_item),
34787 with_generic_argument_list_list,
34788 with_generic_argument_list_opt,
34789 };
34790 self.user_grammar
34792 .with_generic_argument_list(&with_generic_argument_list_built)?;
34793 self.push(
34794 ASTType::WithGenericArgumentList(with_generic_argument_list_built),
34795 context,
34796 );
34797 Ok(())
34798 }
34799
34800 #[parol_runtime::function_name::named]
34805 fn with_generic_argument_list_list_0(
34806 &mut self,
34807 _comma: &ParseTreeType<'t>,
34808 _with_generic_argument_item: &ParseTreeType<'t>,
34809 _with_generic_argument_list_list: &ParseTreeType<'t>,
34810 ) -> Result<()> {
34811 let context = function_name!();
34812 trace!("{}", self.trace_item_stack(context));
34813 let mut with_generic_argument_list_list = pop_item!(
34814 self,
34815 with_generic_argument_list_list,
34816 WithGenericArgumentListList,
34817 context
34818 );
34819 let with_generic_argument_item = pop_item!(
34820 self,
34821 with_generic_argument_item,
34822 WithGenericArgumentItem,
34823 context
34824 );
34825 let comma = pop_item!(self, comma, Comma, context);
34826 let with_generic_argument_list_list_0_built = WithGenericArgumentListList {
34827 with_generic_argument_item: Box::new(with_generic_argument_item),
34828 comma: Box::new(comma),
34829 };
34830 with_generic_argument_list_list.push(with_generic_argument_list_list_0_built);
34832 self.push(
34833 ASTType::WithGenericArgumentListList(with_generic_argument_list_list),
34834 context,
34835 );
34836 Ok(())
34837 }
34838
34839 #[parol_runtime::function_name::named]
34844 fn with_generic_argument_list_list_1(&mut self) -> Result<()> {
34845 let context = function_name!();
34846 trace!("{}", self.trace_item_stack(context));
34847 let with_generic_argument_list_list_1_built = Vec::new();
34848 self.push(
34849 ASTType::WithGenericArgumentListList(with_generic_argument_list_list_1_built),
34850 context,
34851 );
34852 Ok(())
34853 }
34854
34855 #[parol_runtime::function_name::named]
34860 fn with_generic_argument_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
34861 let context = function_name!();
34862 trace!("{}", self.trace_item_stack(context));
34863 let comma = pop_item!(self, comma, Comma, context);
34864 let with_generic_argument_list_opt_0_built = WithGenericArgumentListOpt {
34865 comma: Box::new(comma),
34866 };
34867 self.push(
34868 ASTType::WithGenericArgumentListOpt(Some(with_generic_argument_list_opt_0_built)),
34869 context,
34870 );
34871 Ok(())
34872 }
34873
34874 #[parol_runtime::function_name::named]
34879 fn with_generic_argument_list_opt_1(&mut self) -> Result<()> {
34880 let context = function_name!();
34881 trace!("{}", self.trace_item_stack(context));
34882 self.push(ASTType::WithGenericArgumentListOpt(None), context);
34883 Ok(())
34884 }
34885
34886 #[parol_runtime::function_name::named]
34891 fn with_generic_argument_item_0(
34892 &mut self,
34893 _generic_arg_identifier: &ParseTreeType<'t>,
34894 ) -> Result<()> {
34895 let context = function_name!();
34896 trace!("{}", self.trace_item_stack(context));
34897 let generic_arg_identifier =
34898 pop_item!(self, generic_arg_identifier, GenericArgIdentifier, context);
34899 let with_generic_argument_item_0_built = WithGenericArgumentItemGenericArgIdentifier {
34900 generic_arg_identifier: Box::new(generic_arg_identifier),
34901 };
34902 let with_generic_argument_item_0_built =
34903 WithGenericArgumentItem::GenericArgIdentifier(with_generic_argument_item_0_built);
34904 self.user_grammar
34906 .with_generic_argument_item(&with_generic_argument_item_0_built)?;
34907 self.push(
34908 ASTType::WithGenericArgumentItem(with_generic_argument_item_0_built),
34909 context,
34910 );
34911 Ok(())
34912 }
34913
34914 #[parol_runtime::function_name::named]
34919 fn with_generic_argument_item_1(&mut self, _fixed_type: &ParseTreeType<'t>) -> Result<()> {
34920 let context = function_name!();
34921 trace!("{}", self.trace_item_stack(context));
34922 let fixed_type = pop_item!(self, fixed_type, FixedType, context);
34923 let with_generic_argument_item_1_built = WithGenericArgumentItemFixedType {
34924 fixed_type: Box::new(fixed_type),
34925 };
34926 let with_generic_argument_item_1_built =
34927 WithGenericArgumentItem::FixedType(with_generic_argument_item_1_built);
34928 self.user_grammar
34930 .with_generic_argument_item(&with_generic_argument_item_1_built)?;
34931 self.push(
34932 ASTType::WithGenericArgumentItem(with_generic_argument_item_1_built),
34933 context,
34934 );
34935 Ok(())
34936 }
34937
34938 #[parol_runtime::function_name::named]
34943 fn with_generic_argument_item_2(&mut self, _number: &ParseTreeType<'t>) -> Result<()> {
34944 let context = function_name!();
34945 trace!("{}", self.trace_item_stack(context));
34946 let number = pop_item!(self, number, Number, context);
34947 let with_generic_argument_item_2_built = WithGenericArgumentItemNumber {
34948 number: Box::new(number),
34949 };
34950 let with_generic_argument_item_2_built =
34951 WithGenericArgumentItem::Number(with_generic_argument_item_2_built);
34952 self.user_grammar
34954 .with_generic_argument_item(&with_generic_argument_item_2_built)?;
34955 self.push(
34956 ASTType::WithGenericArgumentItem(with_generic_argument_item_2_built),
34957 context,
34958 );
34959 Ok(())
34960 }
34961
34962 #[parol_runtime::function_name::named]
34967 fn with_generic_argument_item_3(&mut self, _boolean_literal: &ParseTreeType<'t>) -> Result<()> {
34968 let context = function_name!();
34969 trace!("{}", self.trace_item_stack(context));
34970 let boolean_literal = pop_item!(self, boolean_literal, BooleanLiteral, context);
34971 let with_generic_argument_item_3_built = WithGenericArgumentItemBooleanLiteral {
34972 boolean_literal: Box::new(boolean_literal),
34973 };
34974 let with_generic_argument_item_3_built =
34975 WithGenericArgumentItem::BooleanLiteral(with_generic_argument_item_3_built);
34976 self.user_grammar
34978 .with_generic_argument_item(&with_generic_argument_item_3_built)?;
34979 self.push(
34980 ASTType::WithGenericArgumentItem(with_generic_argument_item_3_built),
34981 context,
34982 );
34983 Ok(())
34984 }
34985
34986 #[parol_runtime::function_name::named]
34991 fn port_declaration(
34992 &mut self,
34993 _l_paren: &ParseTreeType<'t>,
34994 _port_declaration_opt: &ParseTreeType<'t>,
34995 _r_paren: &ParseTreeType<'t>,
34996 ) -> Result<()> {
34997 let context = function_name!();
34998 trace!("{}", self.trace_item_stack(context));
34999 let r_paren = pop_item!(self, r_paren, RParen, context);
35000 let port_declaration_opt =
35001 pop_item!(self, port_declaration_opt, PortDeclarationOpt, context);
35002 let l_paren = pop_item!(self, l_paren, LParen, context);
35003 let port_declaration_built = PortDeclaration {
35004 l_paren: Box::new(l_paren),
35005 port_declaration_opt,
35006 r_paren: Box::new(r_paren),
35007 };
35008 self.user_grammar
35010 .port_declaration(&port_declaration_built)?;
35011 self.push(ASTType::PortDeclaration(port_declaration_built), context);
35012 Ok(())
35013 }
35014
35015 #[parol_runtime::function_name::named]
35020 fn port_declaration_opt_0(&mut self, _port_declaration_list: &ParseTreeType<'t>) -> Result<()> {
35021 let context = function_name!();
35022 trace!("{}", self.trace_item_stack(context));
35023 let port_declaration_list =
35024 pop_item!(self, port_declaration_list, PortDeclarationList, context);
35025 let port_declaration_opt_0_built = PortDeclarationOpt {
35026 port_declaration_list: Box::new(port_declaration_list),
35027 };
35028 self.push(
35029 ASTType::PortDeclarationOpt(Some(port_declaration_opt_0_built)),
35030 context,
35031 );
35032 Ok(())
35033 }
35034
35035 #[parol_runtime::function_name::named]
35040 fn port_declaration_opt_1(&mut self) -> Result<()> {
35041 let context = function_name!();
35042 trace!("{}", self.trace_item_stack(context));
35043 self.push(ASTType::PortDeclarationOpt(None), context);
35044 Ok(())
35045 }
35046
35047 #[parol_runtime::function_name::named]
35052 fn port_declaration_list(
35053 &mut self,
35054 _port_declaration_group: &ParseTreeType<'t>,
35055 _port_declaration_list_list: &ParseTreeType<'t>,
35056 _port_declaration_list_opt: &ParseTreeType<'t>,
35057 ) -> Result<()> {
35058 let context = function_name!();
35059 trace!("{}", self.trace_item_stack(context));
35060 let port_declaration_list_opt = pop_item!(
35061 self,
35062 port_declaration_list_opt,
35063 PortDeclarationListOpt,
35064 context
35065 );
35066 let port_declaration_list_list = pop_and_reverse_item!(
35067 self,
35068 port_declaration_list_list,
35069 PortDeclarationListList,
35070 context
35071 );
35072 let port_declaration_group =
35073 pop_item!(self, port_declaration_group, PortDeclarationGroup, context);
35074 let port_declaration_list_built = PortDeclarationList {
35075 port_declaration_group: Box::new(port_declaration_group),
35076 port_declaration_list_list,
35077 port_declaration_list_opt,
35078 };
35079 self.user_grammar
35081 .port_declaration_list(&port_declaration_list_built)?;
35082 self.push(
35083 ASTType::PortDeclarationList(port_declaration_list_built),
35084 context,
35085 );
35086 Ok(())
35087 }
35088
35089 #[parol_runtime::function_name::named]
35094 fn port_declaration_list_list_0(
35095 &mut self,
35096 _comma: &ParseTreeType<'t>,
35097 _port_declaration_group: &ParseTreeType<'t>,
35098 _port_declaration_list_list: &ParseTreeType<'t>,
35099 ) -> Result<()> {
35100 let context = function_name!();
35101 trace!("{}", self.trace_item_stack(context));
35102 let mut port_declaration_list_list = pop_item!(
35103 self,
35104 port_declaration_list_list,
35105 PortDeclarationListList,
35106 context
35107 );
35108 let port_declaration_group =
35109 pop_item!(self, port_declaration_group, PortDeclarationGroup, context);
35110 let comma = pop_item!(self, comma, Comma, context);
35111 let port_declaration_list_list_0_built = PortDeclarationListList {
35112 port_declaration_group: Box::new(port_declaration_group),
35113 comma: Box::new(comma),
35114 };
35115 port_declaration_list_list.push(port_declaration_list_list_0_built);
35117 self.push(
35118 ASTType::PortDeclarationListList(port_declaration_list_list),
35119 context,
35120 );
35121 Ok(())
35122 }
35123
35124 #[parol_runtime::function_name::named]
35129 fn port_declaration_list_list_1(&mut self) -> Result<()> {
35130 let context = function_name!();
35131 trace!("{}", self.trace_item_stack(context));
35132 let port_declaration_list_list_1_built = Vec::new();
35133 self.push(
35134 ASTType::PortDeclarationListList(port_declaration_list_list_1_built),
35135 context,
35136 );
35137 Ok(())
35138 }
35139
35140 #[parol_runtime::function_name::named]
35145 fn port_declaration_list_opt_0(&mut self, _comma: &ParseTreeType<'t>) -> Result<()> {
35146 let context = function_name!();
35147 trace!("{}", self.trace_item_stack(context));
35148 let comma = pop_item!(self, comma, Comma, context);
35149 let port_declaration_list_opt_0_built = PortDeclarationListOpt {
35150 comma: Box::new(comma),
35151 };
35152 self.push(
35153 ASTType::PortDeclarationListOpt(Some(port_declaration_list_opt_0_built)),
35154 context,
35155 );
35156 Ok(())
35157 }
35158
35159 #[parol_runtime::function_name::named]
35164 fn port_declaration_list_opt_1(&mut self) -> Result<()> {
35165 let context = function_name!();
35166 trace!("{}", self.trace_item_stack(context));
35167 self.push(ASTType::PortDeclarationListOpt(None), context);
35168 Ok(())
35169 }
35170
35171 #[parol_runtime::function_name::named]
35176 fn port_declaration_group(
35177 &mut self,
35178 _port_declaration_group_list: &ParseTreeType<'t>,
35179 _port_declaration_group_group: &ParseTreeType<'t>,
35180 ) -> Result<()> {
35181 let context = function_name!();
35182 trace!("{}", self.trace_item_stack(context));
35183 let port_declaration_group_group = pop_item!(
35184 self,
35185 port_declaration_group_group,
35186 PortDeclarationGroupGroup,
35187 context
35188 );
35189 let port_declaration_group_list = pop_and_reverse_item!(
35190 self,
35191 port_declaration_group_list,
35192 PortDeclarationGroupList,
35193 context
35194 );
35195 let port_declaration_group_built = PortDeclarationGroup {
35196 port_declaration_group_list,
35197 port_declaration_group_group: Box::new(port_declaration_group_group),
35198 };
35199 self.user_grammar
35201 .port_declaration_group(&port_declaration_group_built)?;
35202 self.push(
35203 ASTType::PortDeclarationGroup(port_declaration_group_built),
35204 context,
35205 );
35206 Ok(())
35207 }
35208
35209 #[parol_runtime::function_name::named]
35214 fn port_declaration_group_group_0(
35215 &mut self,
35216 _l_brace: &ParseTreeType<'t>,
35217 _port_declaration_list: &ParseTreeType<'t>,
35218 _r_brace: &ParseTreeType<'t>,
35219 ) -> Result<()> {
35220 let context = function_name!();
35221 trace!("{}", self.trace_item_stack(context));
35222 let r_brace = pop_item!(self, r_brace, RBrace, context);
35223 let port_declaration_list =
35224 pop_item!(self, port_declaration_list, PortDeclarationList, context);
35225 let l_brace = pop_item!(self, l_brace, LBrace, context);
35226 let port_declaration_group_group_0_built =
35227 PortDeclarationGroupGroupLBracePortDeclarationListRBrace {
35228 l_brace: Box::new(l_brace),
35229 port_declaration_list: Box::new(port_declaration_list),
35230 r_brace: Box::new(r_brace),
35231 };
35232 let port_declaration_group_group_0_built =
35233 PortDeclarationGroupGroup::LBracePortDeclarationListRBrace(
35234 port_declaration_group_group_0_built,
35235 );
35236 self.push(
35237 ASTType::PortDeclarationGroupGroup(port_declaration_group_group_0_built),
35238 context,
35239 );
35240 Ok(())
35241 }
35242
35243 #[parol_runtime::function_name::named]
35248 fn port_declaration_group_group_1(
35249 &mut self,
35250 _port_declaration_item: &ParseTreeType<'t>,
35251 ) -> Result<()> {
35252 let context = function_name!();
35253 trace!("{}", self.trace_item_stack(context));
35254 let port_declaration_item =
35255 pop_item!(self, port_declaration_item, PortDeclarationItem, context);
35256 let port_declaration_group_group_1_built = PortDeclarationGroupGroupPortDeclarationItem {
35257 port_declaration_item: Box::new(port_declaration_item),
35258 };
35259 let port_declaration_group_group_1_built =
35260 PortDeclarationGroupGroup::PortDeclarationItem(port_declaration_group_group_1_built);
35261 self.push(
35262 ASTType::PortDeclarationGroupGroup(port_declaration_group_group_1_built),
35263 context,
35264 );
35265 Ok(())
35266 }
35267
35268 #[parol_runtime::function_name::named]
35273 fn port_declaration_group_list_0(
35274 &mut self,
35275 _attribute: &ParseTreeType<'t>,
35276 _port_declaration_group_list: &ParseTreeType<'t>,
35277 ) -> Result<()> {
35278 let context = function_name!();
35279 trace!("{}", self.trace_item_stack(context));
35280 let mut port_declaration_group_list = pop_item!(
35281 self,
35282 port_declaration_group_list,
35283 PortDeclarationGroupList,
35284 context
35285 );
35286 let attribute = pop_item!(self, attribute, Attribute, context);
35287 let port_declaration_group_list_0_built = PortDeclarationGroupList {
35288 attribute: Box::new(attribute),
35289 };
35290 port_declaration_group_list.push(port_declaration_group_list_0_built);
35292 self.push(
35293 ASTType::PortDeclarationGroupList(port_declaration_group_list),
35294 context,
35295 );
35296 Ok(())
35297 }
35298
35299 #[parol_runtime::function_name::named]
35304 fn port_declaration_group_list_1(&mut self) -> Result<()> {
35305 let context = function_name!();
35306 trace!("{}", self.trace_item_stack(context));
35307 let port_declaration_group_list_1_built = Vec::new();
35308 self.push(
35309 ASTType::PortDeclarationGroupList(port_declaration_group_list_1_built),
35310 context,
35311 );
35312 Ok(())
35313 }
35314
35315 #[parol_runtime::function_name::named]
35320 fn port_declaration_item(
35321 &mut self,
35322 _identifier: &ParseTreeType<'t>,
35323 _colon: &ParseTreeType<'t>,
35324 _port_declaration_item_group: &ParseTreeType<'t>,
35325 ) -> Result<()> {
35326 let context = function_name!();
35327 trace!("{}", self.trace_item_stack(context));
35328 let port_declaration_item_group = pop_item!(
35329 self,
35330 port_declaration_item_group,
35331 PortDeclarationItemGroup,
35332 context
35333 );
35334 let colon = pop_item!(self, colon, Colon, context);
35335 let identifier = pop_item!(self, identifier, Identifier, context);
35336 let port_declaration_item_built = PortDeclarationItem {
35337 identifier: Box::new(identifier),
35338 colon: Box::new(colon),
35339 port_declaration_item_group: Box::new(port_declaration_item_group),
35340 };
35341 self.user_grammar
35343 .port_declaration_item(&port_declaration_item_built)?;
35344 self.push(
35345 ASTType::PortDeclarationItem(port_declaration_item_built),
35346 context,
35347 );
35348 Ok(())
35349 }
35350
35351 #[parol_runtime::function_name::named]
35356 fn port_declaration_item_group_0(
35357 &mut self,
35358 _port_type_concrete: &ParseTreeType<'t>,
35359 ) -> Result<()> {
35360 let context = function_name!();
35361 trace!("{}", self.trace_item_stack(context));
35362 let port_type_concrete = pop_item!(self, port_type_concrete, PortTypeConcrete, context);
35363 let port_declaration_item_group_0_built = PortDeclarationItemGroupPortTypeConcrete {
35364 port_type_concrete: Box::new(port_type_concrete),
35365 };
35366 let port_declaration_item_group_0_built =
35367 PortDeclarationItemGroup::PortTypeConcrete(port_declaration_item_group_0_built);
35368 self.push(
35369 ASTType::PortDeclarationItemGroup(port_declaration_item_group_0_built),
35370 context,
35371 );
35372 Ok(())
35373 }
35374
35375 #[parol_runtime::function_name::named]
35380 fn port_declaration_item_group_1(
35381 &mut self,
35382 _port_type_abstract: &ParseTreeType<'t>,
35383 ) -> Result<()> {
35384 let context = function_name!();
35385 trace!("{}", self.trace_item_stack(context));
35386 let port_type_abstract = pop_item!(self, port_type_abstract, PortTypeAbstract, context);
35387 let port_declaration_item_group_1_built = PortDeclarationItemGroupPortTypeAbstract {
35388 port_type_abstract: Box::new(port_type_abstract),
35389 };
35390 let port_declaration_item_group_1_built =
35391 PortDeclarationItemGroup::PortTypeAbstract(port_declaration_item_group_1_built);
35392 self.push(
35393 ASTType::PortDeclarationItemGroup(port_declaration_item_group_1_built),
35394 context,
35395 );
35396 Ok(())
35397 }
35398
35399 #[parol_runtime::function_name::named]
35404 fn port_type_concrete(
35405 &mut self,
35406 _direction: &ParseTreeType<'t>,
35407 _port_type_concrete_opt: &ParseTreeType<'t>,
35408 _array_type: &ParseTreeType<'t>,
35409 _port_type_concrete_opt0: &ParseTreeType<'t>,
35410 ) -> Result<()> {
35411 let context = function_name!();
35412 trace!("{}", self.trace_item_stack(context));
35413 let port_type_concrete_opt0 =
35414 pop_item!(self, port_type_concrete_opt0, PortTypeConcreteOpt0, context);
35415 let array_type = pop_item!(self, array_type, ArrayType, context);
35416 let port_type_concrete_opt =
35417 pop_item!(self, port_type_concrete_opt, PortTypeConcreteOpt, context);
35418 let direction = pop_item!(self, direction, Direction, context);
35419 let port_type_concrete_built = PortTypeConcrete {
35420 direction: Box::new(direction),
35421 port_type_concrete_opt,
35422 array_type: Box::new(array_type),
35423 port_type_concrete_opt0,
35424 };
35425 self.user_grammar
35427 .port_type_concrete(&port_type_concrete_built)?;
35428 self.push(ASTType::PortTypeConcrete(port_type_concrete_built), context);
35429 Ok(())
35430 }
35431
35432 #[parol_runtime::function_name::named]
35437 fn port_type_concrete_opt0_0(
35438 &mut self,
35439 _equ: &ParseTreeType<'t>,
35440 _port_default_value: &ParseTreeType<'t>,
35441 ) -> Result<()> {
35442 let context = function_name!();
35443 trace!("{}", self.trace_item_stack(context));
35444 let port_default_value = pop_item!(self, port_default_value, PortDefaultValue, context);
35445 let equ = pop_item!(self, equ, Equ, context);
35446 let port_type_concrete_opt0_0_built = PortTypeConcreteOpt0 {
35447 equ: Box::new(equ),
35448 port_default_value: Box::new(port_default_value),
35449 };
35450 self.push(
35451 ASTType::PortTypeConcreteOpt0(Some(port_type_concrete_opt0_0_built)),
35452 context,
35453 );
35454 Ok(())
35455 }
35456
35457 #[parol_runtime::function_name::named]
35462 fn port_type_concrete_opt0_1(&mut self) -> Result<()> {
35463 let context = function_name!();
35464 trace!("{}", self.trace_item_stack(context));
35465 self.push(ASTType::PortTypeConcreteOpt0(None), context);
35466 Ok(())
35467 }
35468
35469 #[parol_runtime::function_name::named]
35474 fn port_type_concrete_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
35475 let context = function_name!();
35476 trace!("{}", self.trace_item_stack(context));
35477 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
35478 let port_type_concrete_opt_0_built = PortTypeConcreteOpt {
35479 clock_domain: Box::new(clock_domain),
35480 };
35481 self.push(
35482 ASTType::PortTypeConcreteOpt(Some(port_type_concrete_opt_0_built)),
35483 context,
35484 );
35485 Ok(())
35486 }
35487
35488 #[parol_runtime::function_name::named]
35493 fn port_type_concrete_opt_1(&mut self) -> Result<()> {
35494 let context = function_name!();
35495 trace!("{}", self.trace_item_stack(context));
35496 self.push(ASTType::PortTypeConcreteOpt(None), context);
35497 Ok(())
35498 }
35499
35500 #[parol_runtime::function_name::named]
35505 fn port_default_value(&mut self, _expression: &ParseTreeType<'t>) -> Result<()> {
35506 let context = function_name!();
35507 trace!("{}", self.trace_item_stack(context));
35508 let expression = pop_item!(self, expression, Expression, context);
35509 let port_default_value_built = PortDefaultValue {
35510 expression: Box::new(expression),
35511 };
35512 self.user_grammar
35514 .port_default_value(&port_default_value_built)?;
35515 self.push(ASTType::PortDefaultValue(port_default_value_built), context);
35516 Ok(())
35517 }
35518
35519 #[parol_runtime::function_name::named]
35524 fn port_type_abstract(
35525 &mut self,
35526 _port_type_abstract_opt: &ParseTreeType<'t>,
35527 _interface: &ParseTreeType<'t>,
35528 _port_type_abstract_opt0: &ParseTreeType<'t>,
35529 _port_type_abstract_opt1: &ParseTreeType<'t>,
35530 ) -> Result<()> {
35531 let context = function_name!();
35532 trace!("{}", self.trace_item_stack(context));
35533 let port_type_abstract_opt1 =
35534 pop_item!(self, port_type_abstract_opt1, PortTypeAbstractOpt1, context);
35535 let port_type_abstract_opt0 =
35536 pop_item!(self, port_type_abstract_opt0, PortTypeAbstractOpt0, context);
35537 let interface = pop_item!(self, interface, Interface, context);
35538 let port_type_abstract_opt =
35539 pop_item!(self, port_type_abstract_opt, PortTypeAbstractOpt, context);
35540 let port_type_abstract_built = PortTypeAbstract {
35541 port_type_abstract_opt,
35542 interface: Box::new(interface),
35543 port_type_abstract_opt0,
35544 port_type_abstract_opt1,
35545 };
35546 self.user_grammar
35548 .port_type_abstract(&port_type_abstract_built)?;
35549 self.push(ASTType::PortTypeAbstract(port_type_abstract_built), context);
35550 Ok(())
35551 }
35552
35553 #[parol_runtime::function_name::named]
35558 fn port_type_abstract_opt1_0(&mut self, _array: &ParseTreeType<'t>) -> Result<()> {
35559 let context = function_name!();
35560 trace!("{}", self.trace_item_stack(context));
35561 let array = pop_item!(self, array, Array, context);
35562 let port_type_abstract_opt1_0_built = PortTypeAbstractOpt1 {
35563 array: Box::new(array),
35564 };
35565 self.push(
35566 ASTType::PortTypeAbstractOpt1(Some(port_type_abstract_opt1_0_built)),
35567 context,
35568 );
35569 Ok(())
35570 }
35571
35572 #[parol_runtime::function_name::named]
35577 fn port_type_abstract_opt1_1(&mut self) -> Result<()> {
35578 let context = function_name!();
35579 trace!("{}", self.trace_item_stack(context));
35580 self.push(ASTType::PortTypeAbstractOpt1(None), context);
35581 Ok(())
35582 }
35583
35584 #[parol_runtime::function_name::named]
35589 fn port_type_abstract_opt0_0(
35590 &mut self,
35591 _colon_colon: &ParseTreeType<'t>,
35592 _identifier: &ParseTreeType<'t>,
35593 ) -> Result<()> {
35594 let context = function_name!();
35595 trace!("{}", self.trace_item_stack(context));
35596 let identifier = pop_item!(self, identifier, Identifier, context);
35597 let colon_colon = pop_item!(self, colon_colon, ColonColon, context);
35598 let port_type_abstract_opt0_0_built = PortTypeAbstractOpt0 {
35599 colon_colon: Box::new(colon_colon),
35600 identifier: Box::new(identifier),
35601 };
35602 self.push(
35603 ASTType::PortTypeAbstractOpt0(Some(port_type_abstract_opt0_0_built)),
35604 context,
35605 );
35606 Ok(())
35607 }
35608
35609 #[parol_runtime::function_name::named]
35614 fn port_type_abstract_opt0_1(&mut self) -> Result<()> {
35615 let context = function_name!();
35616 trace!("{}", self.trace_item_stack(context));
35617 self.push(ASTType::PortTypeAbstractOpt0(None), context);
35618 Ok(())
35619 }
35620
35621 #[parol_runtime::function_name::named]
35626 fn port_type_abstract_opt_0(&mut self, _clock_domain: &ParseTreeType<'t>) -> Result<()> {
35627 let context = function_name!();
35628 trace!("{}", self.trace_item_stack(context));
35629 let clock_domain = pop_item!(self, clock_domain, ClockDomain, context);
35630 let port_type_abstract_opt_0_built = PortTypeAbstractOpt {
35631 clock_domain: Box::new(clock_domain),
35632 };
35633 self.push(
35634 ASTType::PortTypeAbstractOpt(Some(port_type_abstract_opt_0_built)),
35635 context,
35636 );
35637 Ok(())
35638 }
35639
35640 #[parol_runtime::function_name::named]
35645 fn port_type_abstract_opt_1(&mut self) -> Result<()> {
35646 let context = function_name!();
35647 trace!("{}", self.trace_item_stack(context));
35648 self.push(ASTType::PortTypeAbstractOpt(None), context);
35649 Ok(())
35650 }
35651
35652 #[parol_runtime::function_name::named]
35657 fn direction_0(&mut self, _input: &ParseTreeType<'t>) -> Result<()> {
35658 let context = function_name!();
35659 trace!("{}", self.trace_item_stack(context));
35660 let input = pop_item!(self, input, Input, context);
35661 let direction_0_built = DirectionInput {
35662 input: Box::new(input),
35663 };
35664 let direction_0_built = Direction::Input(direction_0_built);
35665 self.user_grammar.direction(&direction_0_built)?;
35667 self.push(ASTType::Direction(direction_0_built), context);
35668 Ok(())
35669 }
35670
35671 #[parol_runtime::function_name::named]
35676 fn direction_1(&mut self, _output: &ParseTreeType<'t>) -> Result<()> {
35677 let context = function_name!();
35678 trace!("{}", self.trace_item_stack(context));
35679 let output = pop_item!(self, output, Output, context);
35680 let direction_1_built = DirectionOutput {
35681 output: Box::new(output),
35682 };
35683 let direction_1_built = Direction::Output(direction_1_built);
35684 self.user_grammar.direction(&direction_1_built)?;
35686 self.push(ASTType::Direction(direction_1_built), context);
35687 Ok(())
35688 }
35689
35690 #[parol_runtime::function_name::named]
35695 fn direction_2(&mut self, _inout: &ParseTreeType<'t>) -> Result<()> {
35696 let context = function_name!();
35697 trace!("{}", self.trace_item_stack(context));
35698 let inout = pop_item!(self, inout, Inout, context);
35699 let direction_2_built = DirectionInout {
35700 inout: Box::new(inout),
35701 };
35702 let direction_2_built = Direction::Inout(direction_2_built);
35703 self.user_grammar.direction(&direction_2_built)?;
35705 self.push(ASTType::Direction(direction_2_built), context);
35706 Ok(())
35707 }
35708
35709 #[parol_runtime::function_name::named]
35714 fn direction_3(&mut self, _modport: &ParseTreeType<'t>) -> Result<()> {
35715 let context = function_name!();
35716 trace!("{}", self.trace_item_stack(context));
35717 let modport = pop_item!(self, modport, Modport, context);
35718 let direction_3_built = DirectionModport {
35719 modport: Box::new(modport),
35720 };
35721 let direction_3_built = Direction::Modport(direction_3_built);
35722 self.user_grammar.direction(&direction_3_built)?;
35724 self.push(ASTType::Direction(direction_3_built), context);
35725 Ok(())
35726 }
35727
35728 #[parol_runtime::function_name::named]
35733 fn direction_4(&mut self, _import: &ParseTreeType<'t>) -> Result<()> {
35734 let context = function_name!();
35735 trace!("{}", self.trace_item_stack(context));
35736 let import = pop_item!(self, import, Import, context);
35737 let direction_4_built = DirectionImport {
35738 import: Box::new(import),
35739 };
35740 let direction_4_built = Direction::Import(direction_4_built);
35741 self.user_grammar.direction(&direction_4_built)?;
35743 self.push(ASTType::Direction(direction_4_built), context);
35744 Ok(())
35745 }
35746
35747 #[parol_runtime::function_name::named]
35752 fn function_declaration(
35753 &mut self,
35754 _function: &ParseTreeType<'t>,
35755 _identifier: &ParseTreeType<'t>,
35756 _function_declaration_opt: &ParseTreeType<'t>,
35757 _function_declaration_opt0: &ParseTreeType<'t>,
35758 _function_declaration_opt1: &ParseTreeType<'t>,
35759 _statement_block: &ParseTreeType<'t>,
35760 ) -> Result<()> {
35761 let context = function_name!();
35762 trace!("{}", self.trace_item_stack(context));
35763 let statement_block = pop_item!(self, statement_block, StatementBlock, context);
35764 let function_declaration_opt1 = pop_item!(
35765 self,
35766 function_declaration_opt1,
35767 FunctionDeclarationOpt1,
35768 context
35769 );
35770 let function_declaration_opt0 = pop_item!(
35771 self,
35772 function_declaration_opt0,
35773 FunctionDeclarationOpt0,
35774 context
35775 );
35776 let function_declaration_opt = pop_item!(
35777 self,
35778 function_declaration_opt,
35779 FunctionDeclarationOpt,
35780 context
35781 );
35782 let identifier = pop_item!(self, identifier, Identifier, context);
35783 let function = pop_item!(self, function, Function, context);
35784 let function_declaration_built = FunctionDeclaration {
35785 function: Box::new(function),
35786 identifier: Box::new(identifier),
35787 function_declaration_opt,
35788 function_declaration_opt0,
35789 function_declaration_opt1,
35790 statement_block: Box::new(statement_block),
35791 };
35792 self.user_grammar
35794 .function_declaration(&function_declaration_built)?;
35795 self.push(
35796 ASTType::FunctionDeclaration(function_declaration_built),
35797 context,
35798 );
35799 Ok(())
35800 }
35801
35802 #[parol_runtime::function_name::named]
35807 fn function_declaration_opt1_0(
35808 &mut self,
35809 _minus_g_t: &ParseTreeType<'t>,
35810 _scalar_type: &ParseTreeType<'t>,
35811 ) -> Result<()> {
35812 let context = function_name!();
35813 trace!("{}", self.trace_item_stack(context));
35814 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
35815 let minus_g_t = pop_item!(self, minus_g_t, MinusGT, context);
35816 let function_declaration_opt1_0_built = FunctionDeclarationOpt1 {
35817 minus_g_t: Box::new(minus_g_t),
35818 scalar_type: Box::new(scalar_type),
35819 };
35820 self.push(
35821 ASTType::FunctionDeclarationOpt1(Some(function_declaration_opt1_0_built)),
35822 context,
35823 );
35824 Ok(())
35825 }
35826
35827 #[parol_runtime::function_name::named]
35832 fn function_declaration_opt1_1(&mut self) -> Result<()> {
35833 let context = function_name!();
35834 trace!("{}", self.trace_item_stack(context));
35835 self.push(ASTType::FunctionDeclarationOpt1(None), context);
35836 Ok(())
35837 }
35838
35839 #[parol_runtime::function_name::named]
35844 fn function_declaration_opt0_0(&mut self, _port_declaration: &ParseTreeType<'t>) -> Result<()> {
35845 let context = function_name!();
35846 trace!("{}", self.trace_item_stack(context));
35847 let port_declaration = pop_item!(self, port_declaration, PortDeclaration, context);
35848 let function_declaration_opt0_0_built = FunctionDeclarationOpt0 {
35849 port_declaration: Box::new(port_declaration),
35850 };
35851 self.push(
35852 ASTType::FunctionDeclarationOpt0(Some(function_declaration_opt0_0_built)),
35853 context,
35854 );
35855 Ok(())
35856 }
35857
35858 #[parol_runtime::function_name::named]
35863 fn function_declaration_opt0_1(&mut self) -> Result<()> {
35864 let context = function_name!();
35865 trace!("{}", self.trace_item_stack(context));
35866 self.push(ASTType::FunctionDeclarationOpt0(None), context);
35867 Ok(())
35868 }
35869
35870 #[parol_runtime::function_name::named]
35875 fn function_declaration_opt_0(
35876 &mut self,
35877 _with_generic_parameter: &ParseTreeType<'t>,
35878 ) -> Result<()> {
35879 let context = function_name!();
35880 trace!("{}", self.trace_item_stack(context));
35881 let with_generic_parameter =
35882 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
35883 let function_declaration_opt_0_built = FunctionDeclarationOpt {
35884 with_generic_parameter: Box::new(with_generic_parameter),
35885 };
35886 self.push(
35887 ASTType::FunctionDeclarationOpt(Some(function_declaration_opt_0_built)),
35888 context,
35889 );
35890 Ok(())
35891 }
35892
35893 #[parol_runtime::function_name::named]
35898 fn function_declaration_opt_1(&mut self) -> Result<()> {
35899 let context = function_name!();
35900 trace!("{}", self.trace_item_stack(context));
35901 self.push(ASTType::FunctionDeclarationOpt(None), context);
35902 Ok(())
35903 }
35904
35905 #[parol_runtime::function_name::named]
35910 fn import_declaration(
35911 &mut self,
35912 _import: &ParseTreeType<'t>,
35913 _scoped_identifier: &ParseTreeType<'t>,
35914 _import_declaration_opt: &ParseTreeType<'t>,
35915 _semicolon: &ParseTreeType<'t>,
35916 ) -> Result<()> {
35917 let context = function_name!();
35918 trace!("{}", self.trace_item_stack(context));
35919 let semicolon = pop_item!(self, semicolon, Semicolon, context);
35920 let import_declaration_opt =
35921 pop_item!(self, import_declaration_opt, ImportDeclarationOpt, context);
35922 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
35923 let import = pop_item!(self, import, Import, context);
35924 let import_declaration_built = ImportDeclaration {
35925 import: Box::new(import),
35926 scoped_identifier: Box::new(scoped_identifier),
35927 import_declaration_opt,
35928 semicolon: Box::new(semicolon),
35929 };
35930 self.user_grammar
35932 .import_declaration(&import_declaration_built)?;
35933 self.push(
35934 ASTType::ImportDeclaration(import_declaration_built),
35935 context,
35936 );
35937 Ok(())
35938 }
35939
35940 #[parol_runtime::function_name::named]
35945 fn import_declaration_opt_0(
35946 &mut self,
35947 _colon_colon: &ParseTreeType<'t>,
35948 _star: &ParseTreeType<'t>,
35949 ) -> Result<()> {
35950 let context = function_name!();
35951 trace!("{}", self.trace_item_stack(context));
35952 let star = pop_item!(self, star, Star, context);
35953 let colon_colon = pop_item!(self, colon_colon, ColonColon, context);
35954 let import_declaration_opt_0_built = ImportDeclarationOpt {
35955 colon_colon: Box::new(colon_colon),
35956 star: Box::new(star),
35957 };
35958 self.push(
35959 ASTType::ImportDeclarationOpt(Some(import_declaration_opt_0_built)),
35960 context,
35961 );
35962 Ok(())
35963 }
35964
35965 #[parol_runtime::function_name::named]
35970 fn import_declaration_opt_1(&mut self) -> Result<()> {
35971 let context = function_name!();
35972 trace!("{}", self.trace_item_stack(context));
35973 self.push(ASTType::ImportDeclarationOpt(None), context);
35974 Ok(())
35975 }
35976
35977 #[parol_runtime::function_name::named]
35982 fn unsafe_block(
35983 &mut self,
35984 _unsafe: &ParseTreeType<'t>,
35985 _l_paren: &ParseTreeType<'t>,
35986 _identifier: &ParseTreeType<'t>,
35987 _r_paren: &ParseTreeType<'t>,
35988 _l_brace: &ParseTreeType<'t>,
35989 _unsafe_block_list: &ParseTreeType<'t>,
35990 _r_brace: &ParseTreeType<'t>,
35991 ) -> Result<()> {
35992 let context = function_name!();
35993 trace!("{}", self.trace_item_stack(context));
35994 let r_brace = pop_item!(self, r_brace, RBrace, context);
35995 let unsafe_block_list =
35996 pop_and_reverse_item!(self, unsafe_block_list, UnsafeBlockList, context);
35997 let l_brace = pop_item!(self, l_brace, LBrace, context);
35998 let r_paren = pop_item!(self, r_paren, RParen, context);
35999 let identifier = pop_item!(self, identifier, Identifier, context);
36000 let l_paren = pop_item!(self, l_paren, LParen, context);
36001 let r#unsafe = pop_item!(self, r#unsafe, Unsafe, context);
36002 let unsafe_block_built = UnsafeBlock {
36003 r#unsafe: Box::new(r#unsafe),
36004 l_paren: Box::new(l_paren),
36005 identifier: Box::new(identifier),
36006 r_paren: Box::new(r_paren),
36007 l_brace: Box::new(l_brace),
36008 unsafe_block_list,
36009 r_brace: Box::new(r_brace),
36010 };
36011 self.user_grammar.unsafe_block(&unsafe_block_built)?;
36013 self.push(ASTType::UnsafeBlock(unsafe_block_built), context);
36014 Ok(())
36015 }
36016
36017 #[parol_runtime::function_name::named]
36022 fn unsafe_block_list_0(
36023 &mut self,
36024 _generate_group: &ParseTreeType<'t>,
36025 _unsafe_block_list: &ParseTreeType<'t>,
36026 ) -> Result<()> {
36027 let context = function_name!();
36028 trace!("{}", self.trace_item_stack(context));
36029 let mut unsafe_block_list = pop_item!(self, unsafe_block_list, UnsafeBlockList, context);
36030 let generate_group = pop_item!(self, generate_group, GenerateGroup, context);
36031 let unsafe_block_list_0_built = UnsafeBlockList {
36032 generate_group: Box::new(generate_group),
36033 };
36034 unsafe_block_list.push(unsafe_block_list_0_built);
36036 self.push(ASTType::UnsafeBlockList(unsafe_block_list), context);
36037 Ok(())
36038 }
36039
36040 #[parol_runtime::function_name::named]
36045 fn unsafe_block_list_1(&mut self) -> Result<()> {
36046 let context = function_name!();
36047 trace!("{}", self.trace_item_stack(context));
36048 let unsafe_block_list_1_built = Vec::new();
36049 self.push(ASTType::UnsafeBlockList(unsafe_block_list_1_built), context);
36050 Ok(())
36051 }
36052
36053 #[parol_runtime::function_name::named]
36058 fn module_declaration(
36059 &mut self,
36060 _module: &ParseTreeType<'t>,
36061 _identifier: &ParseTreeType<'t>,
36062 _module_declaration_opt: &ParseTreeType<'t>,
36063 _module_declaration_opt0: &ParseTreeType<'t>,
36064 _module_declaration_opt1: &ParseTreeType<'t>,
36065 _module_declaration_opt2: &ParseTreeType<'t>,
36066 _l_brace: &ParseTreeType<'t>,
36067 _module_declaration_list: &ParseTreeType<'t>,
36068 _r_brace: &ParseTreeType<'t>,
36069 ) -> Result<()> {
36070 let context = function_name!();
36071 trace!("{}", self.trace_item_stack(context));
36072 let r_brace = pop_item!(self, r_brace, RBrace, context);
36073 let module_declaration_list = pop_and_reverse_item!(
36074 self,
36075 module_declaration_list,
36076 ModuleDeclarationList,
36077 context
36078 );
36079 let l_brace = pop_item!(self, l_brace, LBrace, context);
36080 let module_declaration_opt2 = pop_item!(
36081 self,
36082 module_declaration_opt2,
36083 ModuleDeclarationOpt2,
36084 context
36085 );
36086 let module_declaration_opt1 = pop_item!(
36087 self,
36088 module_declaration_opt1,
36089 ModuleDeclarationOpt1,
36090 context
36091 );
36092 let module_declaration_opt0 = pop_item!(
36093 self,
36094 module_declaration_opt0,
36095 ModuleDeclarationOpt0,
36096 context
36097 );
36098 let module_declaration_opt =
36099 pop_item!(self, module_declaration_opt, ModuleDeclarationOpt, context);
36100 let identifier = pop_item!(self, identifier, Identifier, context);
36101 let module = pop_item!(self, module, Module, context);
36102 let module_declaration_built = ModuleDeclaration {
36103 module: Box::new(module),
36104 identifier: Box::new(identifier),
36105 module_declaration_opt,
36106 module_declaration_opt0,
36107 module_declaration_opt1,
36108 module_declaration_opt2,
36109 l_brace: Box::new(l_brace),
36110 module_declaration_list,
36111 r_brace: Box::new(r_brace),
36112 };
36113 self.user_grammar
36115 .module_declaration(&module_declaration_built)?;
36116 self.push(
36117 ASTType::ModuleDeclaration(module_declaration_built),
36118 context,
36119 );
36120 Ok(())
36121 }
36122
36123 #[parol_runtime::function_name::named]
36128 fn module_declaration_list_0(
36129 &mut self,
36130 _module_group: &ParseTreeType<'t>,
36131 _module_declaration_list: &ParseTreeType<'t>,
36132 ) -> Result<()> {
36133 let context = function_name!();
36134 trace!("{}", self.trace_item_stack(context));
36135 let mut module_declaration_list = pop_item!(
36136 self,
36137 module_declaration_list,
36138 ModuleDeclarationList,
36139 context
36140 );
36141 let module_group = pop_item!(self, module_group, ModuleGroup, context);
36142 let module_declaration_list_0_built = ModuleDeclarationList {
36143 module_group: Box::new(module_group),
36144 };
36145 module_declaration_list.push(module_declaration_list_0_built);
36147 self.push(
36148 ASTType::ModuleDeclarationList(module_declaration_list),
36149 context,
36150 );
36151 Ok(())
36152 }
36153
36154 #[parol_runtime::function_name::named]
36159 fn module_declaration_list_1(&mut self) -> Result<()> {
36160 let context = function_name!();
36161 trace!("{}", self.trace_item_stack(context));
36162 let module_declaration_list_1_built = Vec::new();
36163 self.push(
36164 ASTType::ModuleDeclarationList(module_declaration_list_1_built),
36165 context,
36166 );
36167 Ok(())
36168 }
36169
36170 #[parol_runtime::function_name::named]
36175 fn module_declaration_opt2_0(&mut self, _port_declaration: &ParseTreeType<'t>) -> Result<()> {
36176 let context = function_name!();
36177 trace!("{}", self.trace_item_stack(context));
36178 let port_declaration = pop_item!(self, port_declaration, PortDeclaration, context);
36179 let module_declaration_opt2_0_built = ModuleDeclarationOpt2 {
36180 port_declaration: Box::new(port_declaration),
36181 };
36182 self.push(
36183 ASTType::ModuleDeclarationOpt2(Some(module_declaration_opt2_0_built)),
36184 context,
36185 );
36186 Ok(())
36187 }
36188
36189 #[parol_runtime::function_name::named]
36194 fn module_declaration_opt2_1(&mut self) -> Result<()> {
36195 let context = function_name!();
36196 trace!("{}", self.trace_item_stack(context));
36197 self.push(ASTType::ModuleDeclarationOpt2(None), context);
36198 Ok(())
36199 }
36200
36201 #[parol_runtime::function_name::named]
36206 fn module_declaration_opt1_0(&mut self, _with_parameter: &ParseTreeType<'t>) -> Result<()> {
36207 let context = function_name!();
36208 trace!("{}", self.trace_item_stack(context));
36209 let with_parameter = pop_item!(self, with_parameter, WithParameter, context);
36210 let module_declaration_opt1_0_built = ModuleDeclarationOpt1 {
36211 with_parameter: Box::new(with_parameter),
36212 };
36213 self.push(
36214 ASTType::ModuleDeclarationOpt1(Some(module_declaration_opt1_0_built)),
36215 context,
36216 );
36217 Ok(())
36218 }
36219
36220 #[parol_runtime::function_name::named]
36225 fn module_declaration_opt1_1(&mut self) -> Result<()> {
36226 let context = function_name!();
36227 trace!("{}", self.trace_item_stack(context));
36228 self.push(ASTType::ModuleDeclarationOpt1(None), context);
36229 Ok(())
36230 }
36231
36232 #[parol_runtime::function_name::named]
36237 fn module_declaration_opt0_0(
36238 &mut self,
36239 _for: &ParseTreeType<'t>,
36240 _scoped_identifier: &ParseTreeType<'t>,
36241 ) -> Result<()> {
36242 let context = function_name!();
36243 trace!("{}", self.trace_item_stack(context));
36244 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
36245 let r#for = pop_item!(self, r#for, For, context);
36246 let module_declaration_opt0_0_built = ModuleDeclarationOpt0 {
36247 r#for: Box::new(r#for),
36248 scoped_identifier: Box::new(scoped_identifier),
36249 };
36250 self.push(
36251 ASTType::ModuleDeclarationOpt0(Some(module_declaration_opt0_0_built)),
36252 context,
36253 );
36254 Ok(())
36255 }
36256
36257 #[parol_runtime::function_name::named]
36262 fn module_declaration_opt0_1(&mut self) -> Result<()> {
36263 let context = function_name!();
36264 trace!("{}", self.trace_item_stack(context));
36265 self.push(ASTType::ModuleDeclarationOpt0(None), context);
36266 Ok(())
36267 }
36268
36269 #[parol_runtime::function_name::named]
36274 fn module_declaration_opt_0(
36275 &mut self,
36276 _with_generic_parameter: &ParseTreeType<'t>,
36277 ) -> Result<()> {
36278 let context = function_name!();
36279 trace!("{}", self.trace_item_stack(context));
36280 let with_generic_parameter =
36281 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
36282 let module_declaration_opt_0_built = ModuleDeclarationOpt {
36283 with_generic_parameter: Box::new(with_generic_parameter),
36284 };
36285 self.push(
36286 ASTType::ModuleDeclarationOpt(Some(module_declaration_opt_0_built)),
36287 context,
36288 );
36289 Ok(())
36290 }
36291
36292 #[parol_runtime::function_name::named]
36297 fn module_declaration_opt_1(&mut self) -> Result<()> {
36298 let context = function_name!();
36299 trace!("{}", self.trace_item_stack(context));
36300 self.push(ASTType::ModuleDeclarationOpt(None), context);
36301 Ok(())
36302 }
36303
36304 #[parol_runtime::function_name::named]
36309 fn module_group(
36310 &mut self,
36311 _module_group_list: &ParseTreeType<'t>,
36312 _module_group_group: &ParseTreeType<'t>,
36313 ) -> Result<()> {
36314 let context = function_name!();
36315 trace!("{}", self.trace_item_stack(context));
36316 let module_group_group = pop_item!(self, module_group_group, ModuleGroupGroup, context);
36317 let module_group_list =
36318 pop_and_reverse_item!(self, module_group_list, ModuleGroupList, context);
36319 let module_group_built = ModuleGroup {
36320 module_group_list,
36321 module_group_group: Box::new(module_group_group),
36322 };
36323 self.user_grammar.module_group(&module_group_built)?;
36325 self.push(ASTType::ModuleGroup(module_group_built), context);
36326 Ok(())
36327 }
36328
36329 #[parol_runtime::function_name::named]
36334 fn module_group_group_0(
36335 &mut self,
36336 _l_brace: &ParseTreeType<'t>,
36337 _module_group_group_list: &ParseTreeType<'t>,
36338 _r_brace: &ParseTreeType<'t>,
36339 ) -> Result<()> {
36340 let context = function_name!();
36341 trace!("{}", self.trace_item_stack(context));
36342 let r_brace = pop_item!(self, r_brace, RBrace, context);
36343 let module_group_group_list =
36344 pop_and_reverse_item!(self, module_group_group_list, ModuleGroupGroupList, context);
36345 let l_brace = pop_item!(self, l_brace, LBrace, context);
36346 let module_group_group_0_built = ModuleGroupGroupLBraceModuleGroupGroupListRBrace {
36347 l_brace: Box::new(l_brace),
36348 module_group_group_list,
36349 r_brace: Box::new(r_brace),
36350 };
36351 let module_group_group_0_built =
36352 ModuleGroupGroup::LBraceModuleGroupGroupListRBrace(module_group_group_0_built);
36353 self.push(
36354 ASTType::ModuleGroupGroup(module_group_group_0_built),
36355 context,
36356 );
36357 Ok(())
36358 }
36359
36360 #[parol_runtime::function_name::named]
36365 fn module_group_group_list_0(
36366 &mut self,
36367 _module_group: &ParseTreeType<'t>,
36368 _module_group_group_list: &ParseTreeType<'t>,
36369 ) -> Result<()> {
36370 let context = function_name!();
36371 trace!("{}", self.trace_item_stack(context));
36372 let mut module_group_group_list =
36373 pop_item!(self, module_group_group_list, ModuleGroupGroupList, context);
36374 let module_group = pop_item!(self, module_group, ModuleGroup, context);
36375 let module_group_group_list_0_built = ModuleGroupGroupList {
36376 module_group: Box::new(module_group),
36377 };
36378 module_group_group_list.push(module_group_group_list_0_built);
36380 self.push(
36381 ASTType::ModuleGroupGroupList(module_group_group_list),
36382 context,
36383 );
36384 Ok(())
36385 }
36386
36387 #[parol_runtime::function_name::named]
36392 fn module_group_group_list_1(&mut self) -> Result<()> {
36393 let context = function_name!();
36394 trace!("{}", self.trace_item_stack(context));
36395 let module_group_group_list_1_built = Vec::new();
36396 self.push(
36397 ASTType::ModuleGroupGroupList(module_group_group_list_1_built),
36398 context,
36399 );
36400 Ok(())
36401 }
36402
36403 #[parol_runtime::function_name::named]
36408 fn module_group_group_1(&mut self, _module_item: &ParseTreeType<'t>) -> Result<()> {
36409 let context = function_name!();
36410 trace!("{}", self.trace_item_stack(context));
36411 let module_item = pop_item!(self, module_item, ModuleItem, context);
36412 let module_group_group_1_built = ModuleGroupGroupModuleItem {
36413 module_item: Box::new(module_item),
36414 };
36415 let module_group_group_1_built = ModuleGroupGroup::ModuleItem(module_group_group_1_built);
36416 self.push(
36417 ASTType::ModuleGroupGroup(module_group_group_1_built),
36418 context,
36419 );
36420 Ok(())
36421 }
36422
36423 #[parol_runtime::function_name::named]
36428 fn module_group_list_0(
36429 &mut self,
36430 _attribute: &ParseTreeType<'t>,
36431 _module_group_list: &ParseTreeType<'t>,
36432 ) -> Result<()> {
36433 let context = function_name!();
36434 trace!("{}", self.trace_item_stack(context));
36435 let mut module_group_list = pop_item!(self, module_group_list, ModuleGroupList, context);
36436 let attribute = pop_item!(self, attribute, Attribute, context);
36437 let module_group_list_0_built = ModuleGroupList {
36438 attribute: Box::new(attribute),
36439 };
36440 module_group_list.push(module_group_list_0_built);
36442 self.push(ASTType::ModuleGroupList(module_group_list), context);
36443 Ok(())
36444 }
36445
36446 #[parol_runtime::function_name::named]
36451 fn module_group_list_1(&mut self) -> Result<()> {
36452 let context = function_name!();
36453 trace!("{}", self.trace_item_stack(context));
36454 let module_group_list_1_built = Vec::new();
36455 self.push(ASTType::ModuleGroupList(module_group_list_1_built), context);
36456 Ok(())
36457 }
36458
36459 #[parol_runtime::function_name::named]
36464 fn module_item(&mut self, _generate_item: &ParseTreeType<'t>) -> Result<()> {
36465 let context = function_name!();
36466 trace!("{}", self.trace_item_stack(context));
36467 let generate_item = pop_item!(self, generate_item, GenerateItem, context);
36468 let module_item_built = ModuleItem {
36469 generate_item: Box::new(generate_item),
36470 };
36471 self.user_grammar.module_item(&module_item_built)?;
36473 self.push(ASTType::ModuleItem(module_item_built), context);
36474 Ok(())
36475 }
36476
36477 #[parol_runtime::function_name::named]
36482 fn interface_declaration(
36483 &mut self,
36484 _interface: &ParseTreeType<'t>,
36485 _identifier: &ParseTreeType<'t>,
36486 _interface_declaration_opt: &ParseTreeType<'t>,
36487 _interface_declaration_opt0: &ParseTreeType<'t>,
36488 _interface_declaration_opt1: &ParseTreeType<'t>,
36489 _l_brace: &ParseTreeType<'t>,
36490 _interface_declaration_list: &ParseTreeType<'t>,
36491 _r_brace: &ParseTreeType<'t>,
36492 ) -> Result<()> {
36493 let context = function_name!();
36494 trace!("{}", self.trace_item_stack(context));
36495 let r_brace = pop_item!(self, r_brace, RBrace, context);
36496 let interface_declaration_list = pop_and_reverse_item!(
36497 self,
36498 interface_declaration_list,
36499 InterfaceDeclarationList,
36500 context
36501 );
36502 let l_brace = pop_item!(self, l_brace, LBrace, context);
36503 let interface_declaration_opt1 = pop_item!(
36504 self,
36505 interface_declaration_opt1,
36506 InterfaceDeclarationOpt1,
36507 context
36508 );
36509 let interface_declaration_opt0 = pop_item!(
36510 self,
36511 interface_declaration_opt0,
36512 InterfaceDeclarationOpt0,
36513 context
36514 );
36515 let interface_declaration_opt = pop_item!(
36516 self,
36517 interface_declaration_opt,
36518 InterfaceDeclarationOpt,
36519 context
36520 );
36521 let identifier = pop_item!(self, identifier, Identifier, context);
36522 let interface = pop_item!(self, interface, Interface, context);
36523 let interface_declaration_built = InterfaceDeclaration {
36524 interface: Box::new(interface),
36525 identifier: Box::new(identifier),
36526 interface_declaration_opt,
36527 interface_declaration_opt0,
36528 interface_declaration_opt1,
36529 l_brace: Box::new(l_brace),
36530 interface_declaration_list,
36531 r_brace: Box::new(r_brace),
36532 };
36533 self.user_grammar
36535 .interface_declaration(&interface_declaration_built)?;
36536 self.push(
36537 ASTType::InterfaceDeclaration(interface_declaration_built),
36538 context,
36539 );
36540 Ok(())
36541 }
36542
36543 #[parol_runtime::function_name::named]
36548 fn interface_declaration_list_0(
36549 &mut self,
36550 _interface_group: &ParseTreeType<'t>,
36551 _interface_declaration_list: &ParseTreeType<'t>,
36552 ) -> Result<()> {
36553 let context = function_name!();
36554 trace!("{}", self.trace_item_stack(context));
36555 let mut interface_declaration_list = pop_item!(
36556 self,
36557 interface_declaration_list,
36558 InterfaceDeclarationList,
36559 context
36560 );
36561 let interface_group = pop_item!(self, interface_group, InterfaceGroup, context);
36562 let interface_declaration_list_0_built = InterfaceDeclarationList {
36563 interface_group: Box::new(interface_group),
36564 };
36565 interface_declaration_list.push(interface_declaration_list_0_built);
36567 self.push(
36568 ASTType::InterfaceDeclarationList(interface_declaration_list),
36569 context,
36570 );
36571 Ok(())
36572 }
36573
36574 #[parol_runtime::function_name::named]
36579 fn interface_declaration_list_1(&mut self) -> Result<()> {
36580 let context = function_name!();
36581 trace!("{}", self.trace_item_stack(context));
36582 let interface_declaration_list_1_built = Vec::new();
36583 self.push(
36584 ASTType::InterfaceDeclarationList(interface_declaration_list_1_built),
36585 context,
36586 );
36587 Ok(())
36588 }
36589
36590 #[parol_runtime::function_name::named]
36595 fn interface_declaration_opt1_0(&mut self, _with_parameter: &ParseTreeType<'t>) -> Result<()> {
36596 let context = function_name!();
36597 trace!("{}", self.trace_item_stack(context));
36598 let with_parameter = pop_item!(self, with_parameter, WithParameter, context);
36599 let interface_declaration_opt1_0_built = InterfaceDeclarationOpt1 {
36600 with_parameter: Box::new(with_parameter),
36601 };
36602 self.push(
36603 ASTType::InterfaceDeclarationOpt1(Some(interface_declaration_opt1_0_built)),
36604 context,
36605 );
36606 Ok(())
36607 }
36608
36609 #[parol_runtime::function_name::named]
36614 fn interface_declaration_opt1_1(&mut self) -> Result<()> {
36615 let context = function_name!();
36616 trace!("{}", self.trace_item_stack(context));
36617 self.push(ASTType::InterfaceDeclarationOpt1(None), context);
36618 Ok(())
36619 }
36620
36621 #[parol_runtime::function_name::named]
36626 fn interface_declaration_opt0_0(
36627 &mut self,
36628 _for: &ParseTreeType<'t>,
36629 _scoped_identifier: &ParseTreeType<'t>,
36630 ) -> Result<()> {
36631 let context = function_name!();
36632 trace!("{}", self.trace_item_stack(context));
36633 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
36634 let r#for = pop_item!(self, r#for, For, context);
36635 let interface_declaration_opt0_0_built = InterfaceDeclarationOpt0 {
36636 r#for: Box::new(r#for),
36637 scoped_identifier: Box::new(scoped_identifier),
36638 };
36639 self.push(
36640 ASTType::InterfaceDeclarationOpt0(Some(interface_declaration_opt0_0_built)),
36641 context,
36642 );
36643 Ok(())
36644 }
36645
36646 #[parol_runtime::function_name::named]
36651 fn interface_declaration_opt0_1(&mut self) -> Result<()> {
36652 let context = function_name!();
36653 trace!("{}", self.trace_item_stack(context));
36654 self.push(ASTType::InterfaceDeclarationOpt0(None), context);
36655 Ok(())
36656 }
36657
36658 #[parol_runtime::function_name::named]
36663 fn interface_declaration_opt_0(
36664 &mut self,
36665 _with_generic_parameter: &ParseTreeType<'t>,
36666 ) -> Result<()> {
36667 let context = function_name!();
36668 trace!("{}", self.trace_item_stack(context));
36669 let with_generic_parameter =
36670 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
36671 let interface_declaration_opt_0_built = InterfaceDeclarationOpt {
36672 with_generic_parameter: Box::new(with_generic_parameter),
36673 };
36674 self.push(
36675 ASTType::InterfaceDeclarationOpt(Some(interface_declaration_opt_0_built)),
36676 context,
36677 );
36678 Ok(())
36679 }
36680
36681 #[parol_runtime::function_name::named]
36686 fn interface_declaration_opt_1(&mut self) -> Result<()> {
36687 let context = function_name!();
36688 trace!("{}", self.trace_item_stack(context));
36689 self.push(ASTType::InterfaceDeclarationOpt(None), context);
36690 Ok(())
36691 }
36692
36693 #[parol_runtime::function_name::named]
36698 fn interface_group(
36699 &mut self,
36700 _interface_group_list: &ParseTreeType<'t>,
36701 _interface_group_group: &ParseTreeType<'t>,
36702 ) -> Result<()> {
36703 let context = function_name!();
36704 trace!("{}", self.trace_item_stack(context));
36705 let interface_group_group =
36706 pop_item!(self, interface_group_group, InterfaceGroupGroup, context);
36707 let interface_group_list =
36708 pop_and_reverse_item!(self, interface_group_list, InterfaceGroupList, context);
36709 let interface_group_built = InterfaceGroup {
36710 interface_group_list,
36711 interface_group_group: Box::new(interface_group_group),
36712 };
36713 self.user_grammar.interface_group(&interface_group_built)?;
36715 self.push(ASTType::InterfaceGroup(interface_group_built), context);
36716 Ok(())
36717 }
36718
36719 #[parol_runtime::function_name::named]
36724 fn interface_group_group_0(
36725 &mut self,
36726 _l_brace: &ParseTreeType<'t>,
36727 _interface_group_group_list: &ParseTreeType<'t>,
36728 _r_brace: &ParseTreeType<'t>,
36729 ) -> Result<()> {
36730 let context = function_name!();
36731 trace!("{}", self.trace_item_stack(context));
36732 let r_brace = pop_item!(self, r_brace, RBrace, context);
36733 let interface_group_group_list = pop_and_reverse_item!(
36734 self,
36735 interface_group_group_list,
36736 InterfaceGroupGroupList,
36737 context
36738 );
36739 let l_brace = pop_item!(self, l_brace, LBrace, context);
36740 let interface_group_group_0_built =
36741 InterfaceGroupGroupLBraceInterfaceGroupGroupListRBrace {
36742 l_brace: Box::new(l_brace),
36743 interface_group_group_list,
36744 r_brace: Box::new(r_brace),
36745 };
36746 let interface_group_group_0_built =
36747 InterfaceGroupGroup::LBraceInterfaceGroupGroupListRBrace(interface_group_group_0_built);
36748 self.push(
36749 ASTType::InterfaceGroupGroup(interface_group_group_0_built),
36750 context,
36751 );
36752 Ok(())
36753 }
36754
36755 #[parol_runtime::function_name::named]
36760 fn interface_group_group_list_0(
36761 &mut self,
36762 _interface_group: &ParseTreeType<'t>,
36763 _interface_group_group_list: &ParseTreeType<'t>,
36764 ) -> Result<()> {
36765 let context = function_name!();
36766 trace!("{}", self.trace_item_stack(context));
36767 let mut interface_group_group_list = pop_item!(
36768 self,
36769 interface_group_group_list,
36770 InterfaceGroupGroupList,
36771 context
36772 );
36773 let interface_group = pop_item!(self, interface_group, InterfaceGroup, context);
36774 let interface_group_group_list_0_built = InterfaceGroupGroupList {
36775 interface_group: Box::new(interface_group),
36776 };
36777 interface_group_group_list.push(interface_group_group_list_0_built);
36779 self.push(
36780 ASTType::InterfaceGroupGroupList(interface_group_group_list),
36781 context,
36782 );
36783 Ok(())
36784 }
36785
36786 #[parol_runtime::function_name::named]
36791 fn interface_group_group_list_1(&mut self) -> Result<()> {
36792 let context = function_name!();
36793 trace!("{}", self.trace_item_stack(context));
36794 let interface_group_group_list_1_built = Vec::new();
36795 self.push(
36796 ASTType::InterfaceGroupGroupList(interface_group_group_list_1_built),
36797 context,
36798 );
36799 Ok(())
36800 }
36801
36802 #[parol_runtime::function_name::named]
36807 fn interface_group_group_1(&mut self, _interface_item: &ParseTreeType<'t>) -> Result<()> {
36808 let context = function_name!();
36809 trace!("{}", self.trace_item_stack(context));
36810 let interface_item = pop_item!(self, interface_item, InterfaceItem, context);
36811 let interface_group_group_1_built = InterfaceGroupGroupInterfaceItem {
36812 interface_item: Box::new(interface_item),
36813 };
36814 let interface_group_group_1_built =
36815 InterfaceGroupGroup::InterfaceItem(interface_group_group_1_built);
36816 self.push(
36817 ASTType::InterfaceGroupGroup(interface_group_group_1_built),
36818 context,
36819 );
36820 Ok(())
36821 }
36822
36823 #[parol_runtime::function_name::named]
36828 fn interface_group_list_0(
36829 &mut self,
36830 _attribute: &ParseTreeType<'t>,
36831 _interface_group_list: &ParseTreeType<'t>,
36832 ) -> Result<()> {
36833 let context = function_name!();
36834 trace!("{}", self.trace_item_stack(context));
36835 let mut interface_group_list =
36836 pop_item!(self, interface_group_list, InterfaceGroupList, context);
36837 let attribute = pop_item!(self, attribute, Attribute, context);
36838 let interface_group_list_0_built = InterfaceGroupList {
36839 attribute: Box::new(attribute),
36840 };
36841 interface_group_list.push(interface_group_list_0_built);
36843 self.push(ASTType::InterfaceGroupList(interface_group_list), context);
36844 Ok(())
36845 }
36846
36847 #[parol_runtime::function_name::named]
36852 fn interface_group_list_1(&mut self) -> Result<()> {
36853 let context = function_name!();
36854 trace!("{}", self.trace_item_stack(context));
36855 let interface_group_list_1_built = Vec::new();
36856 self.push(
36857 ASTType::InterfaceGroupList(interface_group_list_1_built),
36858 context,
36859 );
36860 Ok(())
36861 }
36862
36863 #[parol_runtime::function_name::named]
36868 fn interface_item_0(&mut self, _generate_item: &ParseTreeType<'t>) -> Result<()> {
36869 let context = function_name!();
36870 trace!("{}", self.trace_item_stack(context));
36871 let generate_item = pop_item!(self, generate_item, GenerateItem, context);
36872 let interface_item_0_built = InterfaceItemGenerateItem {
36873 generate_item: Box::new(generate_item),
36874 };
36875 let interface_item_0_built = InterfaceItem::GenerateItem(interface_item_0_built);
36876 self.user_grammar.interface_item(&interface_item_0_built)?;
36878 self.push(ASTType::InterfaceItem(interface_item_0_built), context);
36879 Ok(())
36880 }
36881
36882 #[parol_runtime::function_name::named]
36887 fn interface_item_1(&mut self, _modport_declaration: &ParseTreeType<'t>) -> Result<()> {
36888 let context = function_name!();
36889 trace!("{}", self.trace_item_stack(context));
36890 let modport_declaration = pop_item!(self, modport_declaration, ModportDeclaration, context);
36891 let interface_item_1_built = InterfaceItemModportDeclaration {
36892 modport_declaration: Box::new(modport_declaration),
36893 };
36894 let interface_item_1_built = InterfaceItem::ModportDeclaration(interface_item_1_built);
36895 self.user_grammar.interface_item(&interface_item_1_built)?;
36897 self.push(ASTType::InterfaceItem(interface_item_1_built), context);
36898 Ok(())
36899 }
36900
36901 #[parol_runtime::function_name::named]
36906 fn generate_if_declaration(
36907 &mut self,
36908 _if: &ParseTreeType<'t>,
36909 _expression: &ParseTreeType<'t>,
36910 _generate_named_block: &ParseTreeType<'t>,
36911 _generate_if_declaration_list: &ParseTreeType<'t>,
36912 _generate_if_declaration_opt: &ParseTreeType<'t>,
36913 ) -> Result<()> {
36914 let context = function_name!();
36915 trace!("{}", self.trace_item_stack(context));
36916 let generate_if_declaration_opt = pop_item!(
36917 self,
36918 generate_if_declaration_opt,
36919 GenerateIfDeclarationOpt,
36920 context
36921 );
36922 let generate_if_declaration_list = pop_and_reverse_item!(
36923 self,
36924 generate_if_declaration_list,
36925 GenerateIfDeclarationList,
36926 context
36927 );
36928 let generate_named_block =
36929 pop_item!(self, generate_named_block, GenerateNamedBlock, context);
36930 let expression = pop_item!(self, expression, Expression, context);
36931 let r#if = pop_item!(self, r#if, If, context);
36932 let generate_if_declaration_built = GenerateIfDeclaration {
36933 r#if: Box::new(r#if),
36934 expression: Box::new(expression),
36935 generate_named_block: Box::new(generate_named_block),
36936 generate_if_declaration_list,
36937 generate_if_declaration_opt,
36938 };
36939 self.user_grammar
36941 .generate_if_declaration(&generate_if_declaration_built)?;
36942 self.push(
36943 ASTType::GenerateIfDeclaration(generate_if_declaration_built),
36944 context,
36945 );
36946 Ok(())
36947 }
36948
36949 #[parol_runtime::function_name::named]
36954 fn generate_if_declaration_list_0(
36955 &mut self,
36956 _else: &ParseTreeType<'t>,
36957 _if: &ParseTreeType<'t>,
36958 _expression: &ParseTreeType<'t>,
36959 _generate_optional_named_block: &ParseTreeType<'t>,
36960 _generate_if_declaration_list: &ParseTreeType<'t>,
36961 ) -> Result<()> {
36962 let context = function_name!();
36963 trace!("{}", self.trace_item_stack(context));
36964 let mut generate_if_declaration_list = pop_item!(
36965 self,
36966 generate_if_declaration_list,
36967 GenerateIfDeclarationList,
36968 context
36969 );
36970 let generate_optional_named_block = pop_item!(
36971 self,
36972 generate_optional_named_block,
36973 GenerateOptionalNamedBlock,
36974 context
36975 );
36976 let expression = pop_item!(self, expression, Expression, context);
36977 let r#if = pop_item!(self, r#if, If, context);
36978 let r#else = pop_item!(self, r#else, Else, context);
36979 let generate_if_declaration_list_0_built = GenerateIfDeclarationList {
36980 generate_optional_named_block: Box::new(generate_optional_named_block),
36981 expression: Box::new(expression),
36982 r#if: Box::new(r#if),
36983 r#else: Box::new(r#else),
36984 };
36985 generate_if_declaration_list.push(generate_if_declaration_list_0_built);
36987 self.push(
36988 ASTType::GenerateIfDeclarationList(generate_if_declaration_list),
36989 context,
36990 );
36991 Ok(())
36992 }
36993
36994 #[parol_runtime::function_name::named]
36999 fn generate_if_declaration_list_1(&mut self) -> Result<()> {
37000 let context = function_name!();
37001 trace!("{}", self.trace_item_stack(context));
37002 let generate_if_declaration_list_1_built = Vec::new();
37003 self.push(
37004 ASTType::GenerateIfDeclarationList(generate_if_declaration_list_1_built),
37005 context,
37006 );
37007 Ok(())
37008 }
37009
37010 #[parol_runtime::function_name::named]
37015 fn generate_if_declaration_opt_0(
37016 &mut self,
37017 _else: &ParseTreeType<'t>,
37018 _generate_optional_named_block: &ParseTreeType<'t>,
37019 ) -> Result<()> {
37020 let context = function_name!();
37021 trace!("{}", self.trace_item_stack(context));
37022 let generate_optional_named_block = pop_item!(
37023 self,
37024 generate_optional_named_block,
37025 GenerateOptionalNamedBlock,
37026 context
37027 );
37028 let r#else = pop_item!(self, r#else, Else, context);
37029 let generate_if_declaration_opt_0_built = GenerateIfDeclarationOpt {
37030 r#else: Box::new(r#else),
37031 generate_optional_named_block: Box::new(generate_optional_named_block),
37032 };
37033 self.push(
37034 ASTType::GenerateIfDeclarationOpt(Some(generate_if_declaration_opt_0_built)),
37035 context,
37036 );
37037 Ok(())
37038 }
37039
37040 #[parol_runtime::function_name::named]
37045 fn generate_if_declaration_opt_1(&mut self) -> Result<()> {
37046 let context = function_name!();
37047 trace!("{}", self.trace_item_stack(context));
37048 self.push(ASTType::GenerateIfDeclarationOpt(None), context);
37049 Ok(())
37050 }
37051
37052 #[parol_runtime::function_name::named]
37057 fn generate_for_declaration(
37058 &mut self,
37059 _for: &ParseTreeType<'t>,
37060 _identifier: &ParseTreeType<'t>,
37061 _in: &ParseTreeType<'t>,
37062 _generate_for_declaration_opt: &ParseTreeType<'t>,
37063 _range: &ParseTreeType<'t>,
37064 _generate_for_declaration_opt0: &ParseTreeType<'t>,
37065 _generate_named_block: &ParseTreeType<'t>,
37066 ) -> Result<()> {
37067 let context = function_name!();
37068 trace!("{}", self.trace_item_stack(context));
37069 let generate_named_block =
37070 pop_item!(self, generate_named_block, GenerateNamedBlock, context);
37071 let generate_for_declaration_opt0 = pop_item!(
37072 self,
37073 generate_for_declaration_opt0,
37074 GenerateForDeclarationOpt0,
37075 context
37076 );
37077 let range = pop_item!(self, range, Range, context);
37078 let generate_for_declaration_opt = pop_item!(
37079 self,
37080 generate_for_declaration_opt,
37081 GenerateForDeclarationOpt,
37082 context
37083 );
37084 let r#in = pop_item!(self, r#in, In, context);
37085 let identifier = pop_item!(self, identifier, Identifier, context);
37086 let r#for = pop_item!(self, r#for, For, context);
37087 let generate_for_declaration_built = GenerateForDeclaration {
37088 r#for: Box::new(r#for),
37089 identifier: Box::new(identifier),
37090 r#in: Box::new(r#in),
37091 generate_for_declaration_opt,
37092 range: Box::new(range),
37093 generate_for_declaration_opt0,
37094 generate_named_block: Box::new(generate_named_block),
37095 };
37096 self.user_grammar
37098 .generate_for_declaration(&generate_for_declaration_built)?;
37099 self.push(
37100 ASTType::GenerateForDeclaration(generate_for_declaration_built),
37101 context,
37102 );
37103 Ok(())
37104 }
37105
37106 #[parol_runtime::function_name::named]
37111 fn generate_for_declaration_opt0_0(
37112 &mut self,
37113 _step: &ParseTreeType<'t>,
37114 _assignment_operator: &ParseTreeType<'t>,
37115 _expression: &ParseTreeType<'t>,
37116 ) -> Result<()> {
37117 let context = function_name!();
37118 trace!("{}", self.trace_item_stack(context));
37119 let expression = pop_item!(self, expression, Expression, context);
37120 let assignment_operator = pop_item!(self, assignment_operator, AssignmentOperator, context);
37121 let step = pop_item!(self, step, Step, context);
37122 let generate_for_declaration_opt0_0_built = GenerateForDeclarationOpt0 {
37123 step: Box::new(step),
37124 assignment_operator: Box::new(assignment_operator),
37125 expression: Box::new(expression),
37126 };
37127 self.push(
37128 ASTType::GenerateForDeclarationOpt0(Some(generate_for_declaration_opt0_0_built)),
37129 context,
37130 );
37131 Ok(())
37132 }
37133
37134 #[parol_runtime::function_name::named]
37139 fn generate_for_declaration_opt0_1(&mut self) -> Result<()> {
37140 let context = function_name!();
37141 trace!("{}", self.trace_item_stack(context));
37142 self.push(ASTType::GenerateForDeclarationOpt0(None), context);
37143 Ok(())
37144 }
37145
37146 #[parol_runtime::function_name::named]
37151 fn generate_for_declaration_opt_0(&mut self, _rev: &ParseTreeType<'t>) -> Result<()> {
37152 let context = function_name!();
37153 trace!("{}", self.trace_item_stack(context));
37154 let rev = pop_item!(self, rev, Rev, context);
37155 let generate_for_declaration_opt_0_built = GenerateForDeclarationOpt { rev: Box::new(rev) };
37156 self.push(
37157 ASTType::GenerateForDeclarationOpt(Some(generate_for_declaration_opt_0_built)),
37158 context,
37159 );
37160 Ok(())
37161 }
37162
37163 #[parol_runtime::function_name::named]
37168 fn generate_for_declaration_opt_1(&mut self) -> Result<()> {
37169 let context = function_name!();
37170 trace!("{}", self.trace_item_stack(context));
37171 self.push(ASTType::GenerateForDeclarationOpt(None), context);
37172 Ok(())
37173 }
37174
37175 #[parol_runtime::function_name::named]
37180 fn generate_block_declaration(
37181 &mut self,
37182 _generate_named_block: &ParseTreeType<'t>,
37183 ) -> Result<()> {
37184 let context = function_name!();
37185 trace!("{}", self.trace_item_stack(context));
37186 let generate_named_block =
37187 pop_item!(self, generate_named_block, GenerateNamedBlock, context);
37188 let generate_block_declaration_built = GenerateBlockDeclaration {
37189 generate_named_block: Box::new(generate_named_block),
37190 };
37191 self.user_grammar
37193 .generate_block_declaration(&generate_block_declaration_built)?;
37194 self.push(
37195 ASTType::GenerateBlockDeclaration(generate_block_declaration_built),
37196 context,
37197 );
37198 Ok(())
37199 }
37200
37201 #[parol_runtime::function_name::named]
37206 fn generate_named_block(
37207 &mut self,
37208 _colon: &ParseTreeType<'t>,
37209 _identifier: &ParseTreeType<'t>,
37210 _l_brace: &ParseTreeType<'t>,
37211 _generate_named_block_list: &ParseTreeType<'t>,
37212 _r_brace: &ParseTreeType<'t>,
37213 ) -> Result<()> {
37214 let context = function_name!();
37215 trace!("{}", self.trace_item_stack(context));
37216 let r_brace = pop_item!(self, r_brace, RBrace, context);
37217 let generate_named_block_list = pop_and_reverse_item!(
37218 self,
37219 generate_named_block_list,
37220 GenerateNamedBlockList,
37221 context
37222 );
37223 let l_brace = pop_item!(self, l_brace, LBrace, context);
37224 let identifier = pop_item!(self, identifier, Identifier, context);
37225 let colon = pop_item!(self, colon, Colon, context);
37226 let generate_named_block_built = GenerateNamedBlock {
37227 colon: Box::new(colon),
37228 identifier: Box::new(identifier),
37229 l_brace: Box::new(l_brace),
37230 generate_named_block_list,
37231 r_brace: Box::new(r_brace),
37232 };
37233 self.user_grammar
37235 .generate_named_block(&generate_named_block_built)?;
37236 self.push(
37237 ASTType::GenerateNamedBlock(generate_named_block_built),
37238 context,
37239 );
37240 Ok(())
37241 }
37242
37243 #[parol_runtime::function_name::named]
37248 fn generate_named_block_list_0(
37249 &mut self,
37250 _generate_group: &ParseTreeType<'t>,
37251 _generate_named_block_list: &ParseTreeType<'t>,
37252 ) -> Result<()> {
37253 let context = function_name!();
37254 trace!("{}", self.trace_item_stack(context));
37255 let mut generate_named_block_list = pop_item!(
37256 self,
37257 generate_named_block_list,
37258 GenerateNamedBlockList,
37259 context
37260 );
37261 let generate_group = pop_item!(self, generate_group, GenerateGroup, context);
37262 let generate_named_block_list_0_built = GenerateNamedBlockList {
37263 generate_group: Box::new(generate_group),
37264 };
37265 generate_named_block_list.push(generate_named_block_list_0_built);
37267 self.push(
37268 ASTType::GenerateNamedBlockList(generate_named_block_list),
37269 context,
37270 );
37271 Ok(())
37272 }
37273
37274 #[parol_runtime::function_name::named]
37279 fn generate_named_block_list_1(&mut self) -> Result<()> {
37280 let context = function_name!();
37281 trace!("{}", self.trace_item_stack(context));
37282 let generate_named_block_list_1_built = Vec::new();
37283 self.push(
37284 ASTType::GenerateNamedBlockList(generate_named_block_list_1_built),
37285 context,
37286 );
37287 Ok(())
37288 }
37289
37290 #[parol_runtime::function_name::named]
37295 fn generate_optional_named_block(
37296 &mut self,
37297 _generate_optional_named_block_opt: &ParseTreeType<'t>,
37298 _l_brace: &ParseTreeType<'t>,
37299 _generate_optional_named_block_list: &ParseTreeType<'t>,
37300 _r_brace: &ParseTreeType<'t>,
37301 ) -> Result<()> {
37302 let context = function_name!();
37303 trace!("{}", self.trace_item_stack(context));
37304 let r_brace = pop_item!(self, r_brace, RBrace, context);
37305 let generate_optional_named_block_list = pop_and_reverse_item!(
37306 self,
37307 generate_optional_named_block_list,
37308 GenerateOptionalNamedBlockList,
37309 context
37310 );
37311 let l_brace = pop_item!(self, l_brace, LBrace, context);
37312 let generate_optional_named_block_opt = pop_item!(
37313 self,
37314 generate_optional_named_block_opt,
37315 GenerateOptionalNamedBlockOpt,
37316 context
37317 );
37318 let generate_optional_named_block_built = GenerateOptionalNamedBlock {
37319 generate_optional_named_block_opt,
37320 l_brace: Box::new(l_brace),
37321 generate_optional_named_block_list,
37322 r_brace: Box::new(r_brace),
37323 };
37324 self.user_grammar
37326 .generate_optional_named_block(&generate_optional_named_block_built)?;
37327 self.push(
37328 ASTType::GenerateOptionalNamedBlock(generate_optional_named_block_built),
37329 context,
37330 );
37331 Ok(())
37332 }
37333
37334 #[parol_runtime::function_name::named]
37339 fn generate_optional_named_block_list_0(
37340 &mut self,
37341 _generate_group: &ParseTreeType<'t>,
37342 _generate_optional_named_block_list: &ParseTreeType<'t>,
37343 ) -> Result<()> {
37344 let context = function_name!();
37345 trace!("{}", self.trace_item_stack(context));
37346 let mut generate_optional_named_block_list = pop_item!(
37347 self,
37348 generate_optional_named_block_list,
37349 GenerateOptionalNamedBlockList,
37350 context
37351 );
37352 let generate_group = pop_item!(self, generate_group, GenerateGroup, context);
37353 let generate_optional_named_block_list_0_built = GenerateOptionalNamedBlockList {
37354 generate_group: Box::new(generate_group),
37355 };
37356 generate_optional_named_block_list.push(generate_optional_named_block_list_0_built);
37358 self.push(
37359 ASTType::GenerateOptionalNamedBlockList(generate_optional_named_block_list),
37360 context,
37361 );
37362 Ok(())
37363 }
37364
37365 #[parol_runtime::function_name::named]
37370 fn generate_optional_named_block_list_1(&mut self) -> Result<()> {
37371 let context = function_name!();
37372 trace!("{}", self.trace_item_stack(context));
37373 let generate_optional_named_block_list_1_built = Vec::new();
37374 self.push(
37375 ASTType::GenerateOptionalNamedBlockList(generate_optional_named_block_list_1_built),
37376 context,
37377 );
37378 Ok(())
37379 }
37380
37381 #[parol_runtime::function_name::named]
37386 fn generate_optional_named_block_opt_0(
37387 &mut self,
37388 _colon: &ParseTreeType<'t>,
37389 _identifier: &ParseTreeType<'t>,
37390 ) -> Result<()> {
37391 let context = function_name!();
37392 trace!("{}", self.trace_item_stack(context));
37393 let identifier = pop_item!(self, identifier, Identifier, context);
37394 let colon = pop_item!(self, colon, Colon, context);
37395 let generate_optional_named_block_opt_0_built = GenerateOptionalNamedBlockOpt {
37396 colon: Box::new(colon),
37397 identifier: Box::new(identifier),
37398 };
37399 self.push(
37400 ASTType::GenerateOptionalNamedBlockOpt(Some(generate_optional_named_block_opt_0_built)),
37401 context,
37402 );
37403 Ok(())
37404 }
37405
37406 #[parol_runtime::function_name::named]
37411 fn generate_optional_named_block_opt_1(&mut self) -> Result<()> {
37412 let context = function_name!();
37413 trace!("{}", self.trace_item_stack(context));
37414 self.push(ASTType::GenerateOptionalNamedBlockOpt(None), context);
37415 Ok(())
37416 }
37417
37418 #[parol_runtime::function_name::named]
37423 fn generate_group(
37424 &mut self,
37425 _generate_group_list: &ParseTreeType<'t>,
37426 _generate_group_group: &ParseTreeType<'t>,
37427 ) -> Result<()> {
37428 let context = function_name!();
37429 trace!("{}", self.trace_item_stack(context));
37430 let generate_group_group =
37431 pop_item!(self, generate_group_group, GenerateGroupGroup, context);
37432 let generate_group_list =
37433 pop_and_reverse_item!(self, generate_group_list, GenerateGroupList, context);
37434 let generate_group_built = GenerateGroup {
37435 generate_group_list,
37436 generate_group_group: Box::new(generate_group_group),
37437 };
37438 self.user_grammar.generate_group(&generate_group_built)?;
37440 self.push(ASTType::GenerateGroup(generate_group_built), context);
37441 Ok(())
37442 }
37443
37444 #[parol_runtime::function_name::named]
37449 fn generate_group_group_0(
37450 &mut self,
37451 _l_brace: &ParseTreeType<'t>,
37452 _generate_group_group_list: &ParseTreeType<'t>,
37453 _r_brace: &ParseTreeType<'t>,
37454 ) -> Result<()> {
37455 let context = function_name!();
37456 trace!("{}", self.trace_item_stack(context));
37457 let r_brace = pop_item!(self, r_brace, RBrace, context);
37458 let generate_group_group_list = pop_and_reverse_item!(
37459 self,
37460 generate_group_group_list,
37461 GenerateGroupGroupList,
37462 context
37463 );
37464 let l_brace = pop_item!(self, l_brace, LBrace, context);
37465 let generate_group_group_0_built = GenerateGroupGroupLBraceGenerateGroupGroupListRBrace {
37466 l_brace: Box::new(l_brace),
37467 generate_group_group_list,
37468 r_brace: Box::new(r_brace),
37469 };
37470 let generate_group_group_0_built =
37471 GenerateGroupGroup::LBraceGenerateGroupGroupListRBrace(generate_group_group_0_built);
37472 self.push(
37473 ASTType::GenerateGroupGroup(generate_group_group_0_built),
37474 context,
37475 );
37476 Ok(())
37477 }
37478
37479 #[parol_runtime::function_name::named]
37484 fn generate_group_group_list_0(
37485 &mut self,
37486 _generate_group: &ParseTreeType<'t>,
37487 _generate_group_group_list: &ParseTreeType<'t>,
37488 ) -> Result<()> {
37489 let context = function_name!();
37490 trace!("{}", self.trace_item_stack(context));
37491 let mut generate_group_group_list = pop_item!(
37492 self,
37493 generate_group_group_list,
37494 GenerateGroupGroupList,
37495 context
37496 );
37497 let generate_group = pop_item!(self, generate_group, GenerateGroup, context);
37498 let generate_group_group_list_0_built = GenerateGroupGroupList {
37499 generate_group: Box::new(generate_group),
37500 };
37501 generate_group_group_list.push(generate_group_group_list_0_built);
37503 self.push(
37504 ASTType::GenerateGroupGroupList(generate_group_group_list),
37505 context,
37506 );
37507 Ok(())
37508 }
37509
37510 #[parol_runtime::function_name::named]
37515 fn generate_group_group_list_1(&mut self) -> Result<()> {
37516 let context = function_name!();
37517 trace!("{}", self.trace_item_stack(context));
37518 let generate_group_group_list_1_built = Vec::new();
37519 self.push(
37520 ASTType::GenerateGroupGroupList(generate_group_group_list_1_built),
37521 context,
37522 );
37523 Ok(())
37524 }
37525
37526 #[parol_runtime::function_name::named]
37531 fn generate_group_group_1(&mut self, _generate_item: &ParseTreeType<'t>) -> Result<()> {
37532 let context = function_name!();
37533 trace!("{}", self.trace_item_stack(context));
37534 let generate_item = pop_item!(self, generate_item, GenerateItem, context);
37535 let generate_group_group_1_built = GenerateGroupGroupGenerateItem {
37536 generate_item: Box::new(generate_item),
37537 };
37538 let generate_group_group_1_built =
37539 GenerateGroupGroup::GenerateItem(generate_group_group_1_built);
37540 self.push(
37541 ASTType::GenerateGroupGroup(generate_group_group_1_built),
37542 context,
37543 );
37544 Ok(())
37545 }
37546
37547 #[parol_runtime::function_name::named]
37552 fn generate_group_list_0(
37553 &mut self,
37554 _attribute: &ParseTreeType<'t>,
37555 _generate_group_list: &ParseTreeType<'t>,
37556 ) -> Result<()> {
37557 let context = function_name!();
37558 trace!("{}", self.trace_item_stack(context));
37559 let mut generate_group_list =
37560 pop_item!(self, generate_group_list, GenerateGroupList, context);
37561 let attribute = pop_item!(self, attribute, Attribute, context);
37562 let generate_group_list_0_built = GenerateGroupList {
37563 attribute: Box::new(attribute),
37564 };
37565 generate_group_list.push(generate_group_list_0_built);
37567 self.push(ASTType::GenerateGroupList(generate_group_list), context);
37568 Ok(())
37569 }
37570
37571 #[parol_runtime::function_name::named]
37576 fn generate_group_list_1(&mut self) -> Result<()> {
37577 let context = function_name!();
37578 trace!("{}", self.trace_item_stack(context));
37579 let generate_group_list_1_built = Vec::new();
37580 self.push(
37581 ASTType::GenerateGroupList(generate_group_list_1_built),
37582 context,
37583 );
37584 Ok(())
37585 }
37586
37587 #[parol_runtime::function_name::named]
37592 fn generate_item_0(&mut self, _let_declaration: &ParseTreeType<'t>) -> Result<()> {
37593 let context = function_name!();
37594 trace!("{}", self.trace_item_stack(context));
37595 let let_declaration = pop_item!(self, let_declaration, LetDeclaration, context);
37596 let generate_item_0_built = GenerateItemLetDeclaration {
37597 let_declaration: Box::new(let_declaration),
37598 };
37599 let generate_item_0_built = GenerateItem::LetDeclaration(generate_item_0_built);
37600 self.user_grammar.generate_item(&generate_item_0_built)?;
37602 self.push(ASTType::GenerateItem(generate_item_0_built), context);
37603 Ok(())
37604 }
37605
37606 #[parol_runtime::function_name::named]
37611 fn generate_item_1(&mut self, _var_declaration: &ParseTreeType<'t>) -> Result<()> {
37612 let context = function_name!();
37613 trace!("{}", self.trace_item_stack(context));
37614 let var_declaration = pop_item!(self, var_declaration, VarDeclaration, context);
37615 let generate_item_1_built = GenerateItemVarDeclaration {
37616 var_declaration: Box::new(var_declaration),
37617 };
37618 let generate_item_1_built = GenerateItem::VarDeclaration(generate_item_1_built);
37619 self.user_grammar.generate_item(&generate_item_1_built)?;
37621 self.push(ASTType::GenerateItem(generate_item_1_built), context);
37622 Ok(())
37623 }
37624
37625 #[parol_runtime::function_name::named]
37630 fn generate_item_2(&mut self, _inst_declaration: &ParseTreeType<'t>) -> Result<()> {
37631 let context = function_name!();
37632 trace!("{}", self.trace_item_stack(context));
37633 let inst_declaration = pop_item!(self, inst_declaration, InstDeclaration, context);
37634 let generate_item_2_built = GenerateItemInstDeclaration {
37635 inst_declaration: Box::new(inst_declaration),
37636 };
37637 let generate_item_2_built = GenerateItem::InstDeclaration(generate_item_2_built);
37638 self.user_grammar.generate_item(&generate_item_2_built)?;
37640 self.push(ASTType::GenerateItem(generate_item_2_built), context);
37641 Ok(())
37642 }
37643
37644 #[parol_runtime::function_name::named]
37649 fn generate_item_3(&mut self, _bind_declaration: &ParseTreeType<'t>) -> Result<()> {
37650 let context = function_name!();
37651 trace!("{}", self.trace_item_stack(context));
37652 let bind_declaration = pop_item!(self, bind_declaration, BindDeclaration, context);
37653 let generate_item_3_built = GenerateItemBindDeclaration {
37654 bind_declaration: Box::new(bind_declaration),
37655 };
37656 let generate_item_3_built = GenerateItem::BindDeclaration(generate_item_3_built);
37657 self.user_grammar.generate_item(&generate_item_3_built)?;
37659 self.push(ASTType::GenerateItem(generate_item_3_built), context);
37660 Ok(())
37661 }
37662
37663 #[parol_runtime::function_name::named]
37668 fn generate_item_4(&mut self, _const_declaration: &ParseTreeType<'t>) -> Result<()> {
37669 let context = function_name!();
37670 trace!("{}", self.trace_item_stack(context));
37671 let const_declaration = pop_item!(self, const_declaration, ConstDeclaration, context);
37672 let generate_item_4_built = GenerateItemConstDeclaration {
37673 const_declaration: Box::new(const_declaration),
37674 };
37675 let generate_item_4_built = GenerateItem::ConstDeclaration(generate_item_4_built);
37676 self.user_grammar.generate_item(&generate_item_4_built)?;
37678 self.push(ASTType::GenerateItem(generate_item_4_built), context);
37679 Ok(())
37680 }
37681
37682 #[parol_runtime::function_name::named]
37687 fn generate_item_5(&mut self, _always_ff_declaration: &ParseTreeType<'t>) -> Result<()> {
37688 let context = function_name!();
37689 trace!("{}", self.trace_item_stack(context));
37690 let always_ff_declaration =
37691 pop_item!(self, always_ff_declaration, AlwaysFfDeclaration, context);
37692 let generate_item_5_built = GenerateItemAlwaysFfDeclaration {
37693 always_ff_declaration: Box::new(always_ff_declaration),
37694 };
37695 let generate_item_5_built = GenerateItem::AlwaysFfDeclaration(generate_item_5_built);
37696 self.user_grammar.generate_item(&generate_item_5_built)?;
37698 self.push(ASTType::GenerateItem(generate_item_5_built), context);
37699 Ok(())
37700 }
37701
37702 #[parol_runtime::function_name::named]
37707 fn generate_item_6(&mut self, _always_comb_declaration: &ParseTreeType<'t>) -> Result<()> {
37708 let context = function_name!();
37709 trace!("{}", self.trace_item_stack(context));
37710 let always_comb_declaration = pop_item!(
37711 self,
37712 always_comb_declaration,
37713 AlwaysCombDeclaration,
37714 context
37715 );
37716 let generate_item_6_built = GenerateItemAlwaysCombDeclaration {
37717 always_comb_declaration: Box::new(always_comb_declaration),
37718 };
37719 let generate_item_6_built = GenerateItem::AlwaysCombDeclaration(generate_item_6_built);
37720 self.user_grammar.generate_item(&generate_item_6_built)?;
37722 self.push(ASTType::GenerateItem(generate_item_6_built), context);
37723 Ok(())
37724 }
37725
37726 #[parol_runtime::function_name::named]
37731 fn generate_item_7(&mut self, _assign_declaration: &ParseTreeType<'t>) -> Result<()> {
37732 let context = function_name!();
37733 trace!("{}", self.trace_item_stack(context));
37734 let assign_declaration = pop_item!(self, assign_declaration, AssignDeclaration, context);
37735 let generate_item_7_built = GenerateItemAssignDeclaration {
37736 assign_declaration: Box::new(assign_declaration),
37737 };
37738 let generate_item_7_built = GenerateItem::AssignDeclaration(generate_item_7_built);
37739 self.user_grammar.generate_item(&generate_item_7_built)?;
37741 self.push(ASTType::GenerateItem(generate_item_7_built), context);
37742 Ok(())
37743 }
37744
37745 #[parol_runtime::function_name::named]
37750 fn generate_item_8(&mut self, _connect_declaration: &ParseTreeType<'t>) -> Result<()> {
37751 let context = function_name!();
37752 trace!("{}", self.trace_item_stack(context));
37753 let connect_declaration = pop_item!(self, connect_declaration, ConnectDeclaration, context);
37754 let generate_item_8_built = GenerateItemConnectDeclaration {
37755 connect_declaration: Box::new(connect_declaration),
37756 };
37757 let generate_item_8_built = GenerateItem::ConnectDeclaration(generate_item_8_built);
37758 self.user_grammar.generate_item(&generate_item_8_built)?;
37760 self.push(ASTType::GenerateItem(generate_item_8_built), context);
37761 Ok(())
37762 }
37763
37764 #[parol_runtime::function_name::named]
37769 fn generate_item_9(&mut self, _function_declaration: &ParseTreeType<'t>) -> Result<()> {
37770 let context = function_name!();
37771 trace!("{}", self.trace_item_stack(context));
37772 let function_declaration =
37773 pop_item!(self, function_declaration, FunctionDeclaration, context);
37774 let generate_item_9_built = GenerateItemFunctionDeclaration {
37775 function_declaration: Box::new(function_declaration),
37776 };
37777 let generate_item_9_built = GenerateItem::FunctionDeclaration(generate_item_9_built);
37778 self.user_grammar.generate_item(&generate_item_9_built)?;
37780 self.push(ASTType::GenerateItem(generate_item_9_built), context);
37781 Ok(())
37782 }
37783
37784 #[parol_runtime::function_name::named]
37789 fn generate_item_10(&mut self, _generate_if_declaration: &ParseTreeType<'t>) -> Result<()> {
37790 let context = function_name!();
37791 trace!("{}", self.trace_item_stack(context));
37792 let generate_if_declaration = pop_item!(
37793 self,
37794 generate_if_declaration,
37795 GenerateIfDeclaration,
37796 context
37797 );
37798 let generate_item_10_built = GenerateItemGenerateIfDeclaration {
37799 generate_if_declaration: Box::new(generate_if_declaration),
37800 };
37801 let generate_item_10_built = GenerateItem::GenerateIfDeclaration(generate_item_10_built);
37802 self.user_grammar.generate_item(&generate_item_10_built)?;
37804 self.push(ASTType::GenerateItem(generate_item_10_built), context);
37805 Ok(())
37806 }
37807
37808 #[parol_runtime::function_name::named]
37813 fn generate_item_11(&mut self, _generate_for_declaration: &ParseTreeType<'t>) -> Result<()> {
37814 let context = function_name!();
37815 trace!("{}", self.trace_item_stack(context));
37816 let generate_for_declaration = pop_item!(
37817 self,
37818 generate_for_declaration,
37819 GenerateForDeclaration,
37820 context
37821 );
37822 let generate_item_11_built = GenerateItemGenerateForDeclaration {
37823 generate_for_declaration: Box::new(generate_for_declaration),
37824 };
37825 let generate_item_11_built = GenerateItem::GenerateForDeclaration(generate_item_11_built);
37826 self.user_grammar.generate_item(&generate_item_11_built)?;
37828 self.push(ASTType::GenerateItem(generate_item_11_built), context);
37829 Ok(())
37830 }
37831
37832 #[parol_runtime::function_name::named]
37837 fn generate_item_12(&mut self, _generate_block_declaration: &ParseTreeType<'t>) -> Result<()> {
37838 let context = function_name!();
37839 trace!("{}", self.trace_item_stack(context));
37840 let generate_block_declaration = pop_item!(
37841 self,
37842 generate_block_declaration,
37843 GenerateBlockDeclaration,
37844 context
37845 );
37846 let generate_item_12_built = GenerateItemGenerateBlockDeclaration {
37847 generate_block_declaration: Box::new(generate_block_declaration),
37848 };
37849 let generate_item_12_built = GenerateItem::GenerateBlockDeclaration(generate_item_12_built);
37850 self.user_grammar.generate_item(&generate_item_12_built)?;
37852 self.push(ASTType::GenerateItem(generate_item_12_built), context);
37853 Ok(())
37854 }
37855
37856 #[parol_runtime::function_name::named]
37861 fn generate_item_13(&mut self, _type_def_declaration: &ParseTreeType<'t>) -> Result<()> {
37862 let context = function_name!();
37863 trace!("{}", self.trace_item_stack(context));
37864 let type_def_declaration =
37865 pop_item!(self, type_def_declaration, TypeDefDeclaration, context);
37866 let generate_item_13_built = GenerateItemTypeDefDeclaration {
37867 type_def_declaration: Box::new(type_def_declaration),
37868 };
37869 let generate_item_13_built = GenerateItem::TypeDefDeclaration(generate_item_13_built);
37870 self.user_grammar.generate_item(&generate_item_13_built)?;
37872 self.push(ASTType::GenerateItem(generate_item_13_built), context);
37873 Ok(())
37874 }
37875
37876 #[parol_runtime::function_name::named]
37881 fn generate_item_14(&mut self, _enum_declaration: &ParseTreeType<'t>) -> Result<()> {
37882 let context = function_name!();
37883 trace!("{}", self.trace_item_stack(context));
37884 let enum_declaration = pop_item!(self, enum_declaration, EnumDeclaration, context);
37885 let generate_item_14_built = GenerateItemEnumDeclaration {
37886 enum_declaration: Box::new(enum_declaration),
37887 };
37888 let generate_item_14_built = GenerateItem::EnumDeclaration(generate_item_14_built);
37889 self.user_grammar.generate_item(&generate_item_14_built)?;
37891 self.push(ASTType::GenerateItem(generate_item_14_built), context);
37892 Ok(())
37893 }
37894
37895 #[parol_runtime::function_name::named]
37900 fn generate_item_15(&mut self, _struct_union_declaration: &ParseTreeType<'t>) -> Result<()> {
37901 let context = function_name!();
37902 trace!("{}", self.trace_item_stack(context));
37903 let struct_union_declaration = pop_item!(
37904 self,
37905 struct_union_declaration,
37906 StructUnionDeclaration,
37907 context
37908 );
37909 let generate_item_15_built = GenerateItemStructUnionDeclaration {
37910 struct_union_declaration: Box::new(struct_union_declaration),
37911 };
37912 let generate_item_15_built = GenerateItem::StructUnionDeclaration(generate_item_15_built);
37913 self.user_grammar.generate_item(&generate_item_15_built)?;
37915 self.push(ASTType::GenerateItem(generate_item_15_built), context);
37916 Ok(())
37917 }
37918
37919 #[parol_runtime::function_name::named]
37924 fn generate_item_16(&mut self, _import_declaration: &ParseTreeType<'t>) -> Result<()> {
37925 let context = function_name!();
37926 trace!("{}", self.trace_item_stack(context));
37927 let import_declaration = pop_item!(self, import_declaration, ImportDeclaration, context);
37928 let generate_item_16_built = GenerateItemImportDeclaration {
37929 import_declaration: Box::new(import_declaration),
37930 };
37931 let generate_item_16_built = GenerateItem::ImportDeclaration(generate_item_16_built);
37932 self.user_grammar.generate_item(&generate_item_16_built)?;
37934 self.push(ASTType::GenerateItem(generate_item_16_built), context);
37935 Ok(())
37936 }
37937
37938 #[parol_runtime::function_name::named]
37943 fn generate_item_17(&mut self, _alias_declaration: &ParseTreeType<'t>) -> Result<()> {
37944 let context = function_name!();
37945 trace!("{}", self.trace_item_stack(context));
37946 let alias_declaration = pop_item!(self, alias_declaration, AliasDeclaration, context);
37947 let generate_item_17_built = GenerateItemAliasDeclaration {
37948 alias_declaration: Box::new(alias_declaration),
37949 };
37950 let generate_item_17_built = GenerateItem::AliasDeclaration(generate_item_17_built);
37951 self.user_grammar.generate_item(&generate_item_17_built)?;
37953 self.push(ASTType::GenerateItem(generate_item_17_built), context);
37954 Ok(())
37955 }
37956
37957 #[parol_runtime::function_name::named]
37962 fn generate_item_18(&mut self, _initial_declaration: &ParseTreeType<'t>) -> Result<()> {
37963 let context = function_name!();
37964 trace!("{}", self.trace_item_stack(context));
37965 let initial_declaration = pop_item!(self, initial_declaration, InitialDeclaration, context);
37966 let generate_item_18_built = GenerateItemInitialDeclaration {
37967 initial_declaration: Box::new(initial_declaration),
37968 };
37969 let generate_item_18_built = GenerateItem::InitialDeclaration(generate_item_18_built);
37970 self.user_grammar.generate_item(&generate_item_18_built)?;
37972 self.push(ASTType::GenerateItem(generate_item_18_built), context);
37973 Ok(())
37974 }
37975
37976 #[parol_runtime::function_name::named]
37981 fn generate_item_19(&mut self, _final_declaration: &ParseTreeType<'t>) -> Result<()> {
37982 let context = function_name!();
37983 trace!("{}", self.trace_item_stack(context));
37984 let final_declaration = pop_item!(self, final_declaration, FinalDeclaration, context);
37985 let generate_item_19_built = GenerateItemFinalDeclaration {
37986 final_declaration: Box::new(final_declaration),
37987 };
37988 let generate_item_19_built = GenerateItem::FinalDeclaration(generate_item_19_built);
37989 self.user_grammar.generate_item(&generate_item_19_built)?;
37991 self.push(ASTType::GenerateItem(generate_item_19_built), context);
37992 Ok(())
37993 }
37994
37995 #[parol_runtime::function_name::named]
38000 fn generate_item_20(&mut self, _unsafe_block: &ParseTreeType<'t>) -> Result<()> {
38001 let context = function_name!();
38002 trace!("{}", self.trace_item_stack(context));
38003 let unsafe_block = pop_item!(self, unsafe_block, UnsafeBlock, context);
38004 let generate_item_20_built = GenerateItemUnsafeBlock {
38005 unsafe_block: Box::new(unsafe_block),
38006 };
38007 let generate_item_20_built = GenerateItem::UnsafeBlock(generate_item_20_built);
38008 self.user_grammar.generate_item(&generate_item_20_built)?;
38010 self.push(ASTType::GenerateItem(generate_item_20_built), context);
38011 Ok(())
38012 }
38013
38014 #[parol_runtime::function_name::named]
38019 fn generate_item_21(&mut self, _embed_declaration: &ParseTreeType<'t>) -> Result<()> {
38020 let context = function_name!();
38021 trace!("{}", self.trace_item_stack(context));
38022 let embed_declaration = pop_item!(self, embed_declaration, EmbedDeclaration, context);
38023 let generate_item_21_built = GenerateItemEmbedDeclaration {
38024 embed_declaration: Box::new(embed_declaration),
38025 };
38026 let generate_item_21_built = GenerateItem::EmbedDeclaration(generate_item_21_built);
38027 self.user_grammar.generate_item(&generate_item_21_built)?;
38029 self.push(ASTType::GenerateItem(generate_item_21_built), context);
38030 Ok(())
38031 }
38032
38033 #[parol_runtime::function_name::named]
38038 fn package_declaration(
38039 &mut self,
38040 _package: &ParseTreeType<'t>,
38041 _identifier: &ParseTreeType<'t>,
38042 _package_declaration_opt: &ParseTreeType<'t>,
38043 _package_declaration_opt0: &ParseTreeType<'t>,
38044 _l_brace: &ParseTreeType<'t>,
38045 _package_declaration_list: &ParseTreeType<'t>,
38046 _r_brace: &ParseTreeType<'t>,
38047 ) -> Result<()> {
38048 let context = function_name!();
38049 trace!("{}", self.trace_item_stack(context));
38050 let r_brace = pop_item!(self, r_brace, RBrace, context);
38051 let package_declaration_list = pop_and_reverse_item!(
38052 self,
38053 package_declaration_list,
38054 PackageDeclarationList,
38055 context
38056 );
38057 let l_brace = pop_item!(self, l_brace, LBrace, context);
38058 let package_declaration_opt0 = pop_item!(
38059 self,
38060 package_declaration_opt0,
38061 PackageDeclarationOpt0,
38062 context
38063 );
38064 let package_declaration_opt = pop_item!(
38065 self,
38066 package_declaration_opt,
38067 PackageDeclarationOpt,
38068 context
38069 );
38070 let identifier = pop_item!(self, identifier, Identifier, context);
38071 let package = pop_item!(self, package, Package, context);
38072 let package_declaration_built = PackageDeclaration {
38073 package: Box::new(package),
38074 identifier: Box::new(identifier),
38075 package_declaration_opt,
38076 package_declaration_opt0,
38077 l_brace: Box::new(l_brace),
38078 package_declaration_list,
38079 r_brace: Box::new(r_brace),
38080 };
38081 self.user_grammar
38083 .package_declaration(&package_declaration_built)?;
38084 self.push(
38085 ASTType::PackageDeclaration(package_declaration_built),
38086 context,
38087 );
38088 Ok(())
38089 }
38090
38091 #[parol_runtime::function_name::named]
38096 fn package_declaration_list_0(
38097 &mut self,
38098 _package_group: &ParseTreeType<'t>,
38099 _package_declaration_list: &ParseTreeType<'t>,
38100 ) -> Result<()> {
38101 let context = function_name!();
38102 trace!("{}", self.trace_item_stack(context));
38103 let mut package_declaration_list = pop_item!(
38104 self,
38105 package_declaration_list,
38106 PackageDeclarationList,
38107 context
38108 );
38109 let package_group = pop_item!(self, package_group, PackageGroup, context);
38110 let package_declaration_list_0_built = PackageDeclarationList {
38111 package_group: Box::new(package_group),
38112 };
38113 package_declaration_list.push(package_declaration_list_0_built);
38115 self.push(
38116 ASTType::PackageDeclarationList(package_declaration_list),
38117 context,
38118 );
38119 Ok(())
38120 }
38121
38122 #[parol_runtime::function_name::named]
38127 fn package_declaration_list_1(&mut self) -> Result<()> {
38128 let context = function_name!();
38129 trace!("{}", self.trace_item_stack(context));
38130 let package_declaration_list_1_built = Vec::new();
38131 self.push(
38132 ASTType::PackageDeclarationList(package_declaration_list_1_built),
38133 context,
38134 );
38135 Ok(())
38136 }
38137
38138 #[parol_runtime::function_name::named]
38143 fn package_declaration_opt0_0(
38144 &mut self,
38145 _for: &ParseTreeType<'t>,
38146 _scoped_identifier: &ParseTreeType<'t>,
38147 ) -> Result<()> {
38148 let context = function_name!();
38149 trace!("{}", self.trace_item_stack(context));
38150 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
38151 let r#for = pop_item!(self, r#for, For, context);
38152 let package_declaration_opt0_0_built = PackageDeclarationOpt0 {
38153 r#for: Box::new(r#for),
38154 scoped_identifier: Box::new(scoped_identifier),
38155 };
38156 self.push(
38157 ASTType::PackageDeclarationOpt0(Some(package_declaration_opt0_0_built)),
38158 context,
38159 );
38160 Ok(())
38161 }
38162
38163 #[parol_runtime::function_name::named]
38168 fn package_declaration_opt0_1(&mut self) -> Result<()> {
38169 let context = function_name!();
38170 trace!("{}", self.trace_item_stack(context));
38171 self.push(ASTType::PackageDeclarationOpt0(None), context);
38172 Ok(())
38173 }
38174
38175 #[parol_runtime::function_name::named]
38180 fn package_declaration_opt_0(
38181 &mut self,
38182 _with_generic_parameter: &ParseTreeType<'t>,
38183 ) -> Result<()> {
38184 let context = function_name!();
38185 trace!("{}", self.trace_item_stack(context));
38186 let with_generic_parameter =
38187 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
38188 let package_declaration_opt_0_built = PackageDeclarationOpt {
38189 with_generic_parameter: Box::new(with_generic_parameter),
38190 };
38191 self.push(
38192 ASTType::PackageDeclarationOpt(Some(package_declaration_opt_0_built)),
38193 context,
38194 );
38195 Ok(())
38196 }
38197
38198 #[parol_runtime::function_name::named]
38203 fn package_declaration_opt_1(&mut self) -> Result<()> {
38204 let context = function_name!();
38205 trace!("{}", self.trace_item_stack(context));
38206 self.push(ASTType::PackageDeclarationOpt(None), context);
38207 Ok(())
38208 }
38209
38210 #[parol_runtime::function_name::named]
38215 fn package_group(
38216 &mut self,
38217 _package_group_list: &ParseTreeType<'t>,
38218 _package_group_group: &ParseTreeType<'t>,
38219 ) -> Result<()> {
38220 let context = function_name!();
38221 trace!("{}", self.trace_item_stack(context));
38222 let package_group_group = pop_item!(self, package_group_group, PackageGroupGroup, context);
38223 let package_group_list =
38224 pop_and_reverse_item!(self, package_group_list, PackageGroupList, context);
38225 let package_group_built = PackageGroup {
38226 package_group_list,
38227 package_group_group: Box::new(package_group_group),
38228 };
38229 self.user_grammar.package_group(&package_group_built)?;
38231 self.push(ASTType::PackageGroup(package_group_built), context);
38232 Ok(())
38233 }
38234
38235 #[parol_runtime::function_name::named]
38240 fn package_group_group_0(
38241 &mut self,
38242 _l_brace: &ParseTreeType<'t>,
38243 _package_group_group_list: &ParseTreeType<'t>,
38244 _r_brace: &ParseTreeType<'t>,
38245 ) -> Result<()> {
38246 let context = function_name!();
38247 trace!("{}", self.trace_item_stack(context));
38248 let r_brace = pop_item!(self, r_brace, RBrace, context);
38249 let package_group_group_list = pop_and_reverse_item!(
38250 self,
38251 package_group_group_list,
38252 PackageGroupGroupList,
38253 context
38254 );
38255 let l_brace = pop_item!(self, l_brace, LBrace, context);
38256 let package_group_group_0_built = PackageGroupGroupLBracePackageGroupGroupListRBrace {
38257 l_brace: Box::new(l_brace),
38258 package_group_group_list,
38259 r_brace: Box::new(r_brace),
38260 };
38261 let package_group_group_0_built =
38262 PackageGroupGroup::LBracePackageGroupGroupListRBrace(package_group_group_0_built);
38263 self.push(
38264 ASTType::PackageGroupGroup(package_group_group_0_built),
38265 context,
38266 );
38267 Ok(())
38268 }
38269
38270 #[parol_runtime::function_name::named]
38275 fn package_group_group_list_0(
38276 &mut self,
38277 _package_group: &ParseTreeType<'t>,
38278 _package_group_group_list: &ParseTreeType<'t>,
38279 ) -> Result<()> {
38280 let context = function_name!();
38281 trace!("{}", self.trace_item_stack(context));
38282 let mut package_group_group_list = pop_item!(
38283 self,
38284 package_group_group_list,
38285 PackageGroupGroupList,
38286 context
38287 );
38288 let package_group = pop_item!(self, package_group, PackageGroup, context);
38289 let package_group_group_list_0_built = PackageGroupGroupList {
38290 package_group: Box::new(package_group),
38291 };
38292 package_group_group_list.push(package_group_group_list_0_built);
38294 self.push(
38295 ASTType::PackageGroupGroupList(package_group_group_list),
38296 context,
38297 );
38298 Ok(())
38299 }
38300
38301 #[parol_runtime::function_name::named]
38306 fn package_group_group_list_1(&mut self) -> Result<()> {
38307 let context = function_name!();
38308 trace!("{}", self.trace_item_stack(context));
38309 let package_group_group_list_1_built = Vec::new();
38310 self.push(
38311 ASTType::PackageGroupGroupList(package_group_group_list_1_built),
38312 context,
38313 );
38314 Ok(())
38315 }
38316
38317 #[parol_runtime::function_name::named]
38322 fn package_group_group_1(&mut self, _package_item: &ParseTreeType<'t>) -> Result<()> {
38323 let context = function_name!();
38324 trace!("{}", self.trace_item_stack(context));
38325 let package_item = pop_item!(self, package_item, PackageItem, context);
38326 let package_group_group_1_built = PackageGroupGroupPackageItem {
38327 package_item: Box::new(package_item),
38328 };
38329 let package_group_group_1_built =
38330 PackageGroupGroup::PackageItem(package_group_group_1_built);
38331 self.push(
38332 ASTType::PackageGroupGroup(package_group_group_1_built),
38333 context,
38334 );
38335 Ok(())
38336 }
38337
38338 #[parol_runtime::function_name::named]
38343 fn package_group_list_0(
38344 &mut self,
38345 _attribute: &ParseTreeType<'t>,
38346 _package_group_list: &ParseTreeType<'t>,
38347 ) -> Result<()> {
38348 let context = function_name!();
38349 trace!("{}", self.trace_item_stack(context));
38350 let mut package_group_list = pop_item!(self, package_group_list, PackageGroupList, context);
38351 let attribute = pop_item!(self, attribute, Attribute, context);
38352 let package_group_list_0_built = PackageGroupList {
38353 attribute: Box::new(attribute),
38354 };
38355 package_group_list.push(package_group_list_0_built);
38357 self.push(ASTType::PackageGroupList(package_group_list), context);
38358 Ok(())
38359 }
38360
38361 #[parol_runtime::function_name::named]
38366 fn package_group_list_1(&mut self) -> Result<()> {
38367 let context = function_name!();
38368 trace!("{}", self.trace_item_stack(context));
38369 let package_group_list_1_built = Vec::new();
38370 self.push(
38371 ASTType::PackageGroupList(package_group_list_1_built),
38372 context,
38373 );
38374 Ok(())
38375 }
38376
38377 #[parol_runtime::function_name::named]
38382 fn package_item_0(&mut self, _const_declaration: &ParseTreeType<'t>) -> Result<()> {
38383 let context = function_name!();
38384 trace!("{}", self.trace_item_stack(context));
38385 let const_declaration = pop_item!(self, const_declaration, ConstDeclaration, context);
38386 let package_item_0_built = PackageItemConstDeclaration {
38387 const_declaration: Box::new(const_declaration),
38388 };
38389 let package_item_0_built = PackageItem::ConstDeclaration(package_item_0_built);
38390 self.user_grammar.package_item(&package_item_0_built)?;
38392 self.push(ASTType::PackageItem(package_item_0_built), context);
38393 Ok(())
38394 }
38395
38396 #[parol_runtime::function_name::named]
38401 fn package_item_1(&mut self, _type_def_declaration: &ParseTreeType<'t>) -> Result<()> {
38402 let context = function_name!();
38403 trace!("{}", self.trace_item_stack(context));
38404 let type_def_declaration =
38405 pop_item!(self, type_def_declaration, TypeDefDeclaration, context);
38406 let package_item_1_built = PackageItemTypeDefDeclaration {
38407 type_def_declaration: Box::new(type_def_declaration),
38408 };
38409 let package_item_1_built = PackageItem::TypeDefDeclaration(package_item_1_built);
38410 self.user_grammar.package_item(&package_item_1_built)?;
38412 self.push(ASTType::PackageItem(package_item_1_built), context);
38413 Ok(())
38414 }
38415
38416 #[parol_runtime::function_name::named]
38421 fn package_item_2(&mut self, _enum_declaration: &ParseTreeType<'t>) -> Result<()> {
38422 let context = function_name!();
38423 trace!("{}", self.trace_item_stack(context));
38424 let enum_declaration = pop_item!(self, enum_declaration, EnumDeclaration, context);
38425 let package_item_2_built = PackageItemEnumDeclaration {
38426 enum_declaration: Box::new(enum_declaration),
38427 };
38428 let package_item_2_built = PackageItem::EnumDeclaration(package_item_2_built);
38429 self.user_grammar.package_item(&package_item_2_built)?;
38431 self.push(ASTType::PackageItem(package_item_2_built), context);
38432 Ok(())
38433 }
38434
38435 #[parol_runtime::function_name::named]
38440 fn package_item_3(&mut self, _struct_union_declaration: &ParseTreeType<'t>) -> Result<()> {
38441 let context = function_name!();
38442 trace!("{}", self.trace_item_stack(context));
38443 let struct_union_declaration = pop_item!(
38444 self,
38445 struct_union_declaration,
38446 StructUnionDeclaration,
38447 context
38448 );
38449 let package_item_3_built = PackageItemStructUnionDeclaration {
38450 struct_union_declaration: Box::new(struct_union_declaration),
38451 };
38452 let package_item_3_built = PackageItem::StructUnionDeclaration(package_item_3_built);
38453 self.user_grammar.package_item(&package_item_3_built)?;
38455 self.push(ASTType::PackageItem(package_item_3_built), context);
38456 Ok(())
38457 }
38458
38459 #[parol_runtime::function_name::named]
38464 fn package_item_4(&mut self, _function_declaration: &ParseTreeType<'t>) -> Result<()> {
38465 let context = function_name!();
38466 trace!("{}", self.trace_item_stack(context));
38467 let function_declaration =
38468 pop_item!(self, function_declaration, FunctionDeclaration, context);
38469 let package_item_4_built = PackageItemFunctionDeclaration {
38470 function_declaration: Box::new(function_declaration),
38471 };
38472 let package_item_4_built = PackageItem::FunctionDeclaration(package_item_4_built);
38473 self.user_grammar.package_item(&package_item_4_built)?;
38475 self.push(ASTType::PackageItem(package_item_4_built), context);
38476 Ok(())
38477 }
38478
38479 #[parol_runtime::function_name::named]
38484 fn package_item_5(&mut self, _import_declaration: &ParseTreeType<'t>) -> Result<()> {
38485 let context = function_name!();
38486 trace!("{}", self.trace_item_stack(context));
38487 let import_declaration = pop_item!(self, import_declaration, ImportDeclaration, context);
38488 let package_item_5_built = PackageItemImportDeclaration {
38489 import_declaration: Box::new(import_declaration),
38490 };
38491 let package_item_5_built = PackageItem::ImportDeclaration(package_item_5_built);
38492 self.user_grammar.package_item(&package_item_5_built)?;
38494 self.push(ASTType::PackageItem(package_item_5_built), context);
38495 Ok(())
38496 }
38497
38498 #[parol_runtime::function_name::named]
38503 fn package_item_6(&mut self, _alias_declaration: &ParseTreeType<'t>) -> Result<()> {
38504 let context = function_name!();
38505 trace!("{}", self.trace_item_stack(context));
38506 let alias_declaration = pop_item!(self, alias_declaration, AliasDeclaration, context);
38507 let package_item_6_built = PackageItemAliasDeclaration {
38508 alias_declaration: Box::new(alias_declaration),
38509 };
38510 let package_item_6_built = PackageItem::AliasDeclaration(package_item_6_built);
38511 self.user_grammar.package_item(&package_item_6_built)?;
38513 self.push(ASTType::PackageItem(package_item_6_built), context);
38514 Ok(())
38515 }
38516
38517 #[parol_runtime::function_name::named]
38522 fn package_item_7(&mut self, _embed_declaration: &ParseTreeType<'t>) -> Result<()> {
38523 let context = function_name!();
38524 trace!("{}", self.trace_item_stack(context));
38525 let embed_declaration = pop_item!(self, embed_declaration, EmbedDeclaration, context);
38526 let package_item_7_built = PackageItemEmbedDeclaration {
38527 embed_declaration: Box::new(embed_declaration),
38528 };
38529 let package_item_7_built = PackageItem::EmbedDeclaration(package_item_7_built);
38530 self.user_grammar.package_item(&package_item_7_built)?;
38532 self.push(ASTType::PackageItem(package_item_7_built), context);
38533 Ok(())
38534 }
38535
38536 #[parol_runtime::function_name::named]
38541 fn alias_declaration(
38542 &mut self,
38543 _alias: &ParseTreeType<'t>,
38544 _alias_declaration_group: &ParseTreeType<'t>,
38545 _identifier: &ParseTreeType<'t>,
38546 _equ: &ParseTreeType<'t>,
38547 _scoped_identifier: &ParseTreeType<'t>,
38548 _semicolon: &ParseTreeType<'t>,
38549 ) -> Result<()> {
38550 let context = function_name!();
38551 trace!("{}", self.trace_item_stack(context));
38552 let semicolon = pop_item!(self, semicolon, Semicolon, context);
38553 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
38554 let equ = pop_item!(self, equ, Equ, context);
38555 let identifier = pop_item!(self, identifier, Identifier, context);
38556 let alias_declaration_group = pop_item!(
38557 self,
38558 alias_declaration_group,
38559 AliasDeclarationGroup,
38560 context
38561 );
38562 let alias = pop_item!(self, alias, Alias, context);
38563 let alias_declaration_built = AliasDeclaration {
38564 alias: Box::new(alias),
38565 alias_declaration_group: Box::new(alias_declaration_group),
38566 identifier: Box::new(identifier),
38567 equ: Box::new(equ),
38568 scoped_identifier: Box::new(scoped_identifier),
38569 semicolon: Box::new(semicolon),
38570 };
38571 self.user_grammar
38573 .alias_declaration(&alias_declaration_built)?;
38574 self.push(ASTType::AliasDeclaration(alias_declaration_built), context);
38575 Ok(())
38576 }
38577
38578 #[parol_runtime::function_name::named]
38583 fn alias_declaration_group_0(&mut self, _module: &ParseTreeType<'t>) -> Result<()> {
38584 let context = function_name!();
38585 trace!("{}", self.trace_item_stack(context));
38586 let module = pop_item!(self, module, Module, context);
38587 let alias_declaration_group_0_built = AliasDeclarationGroupModule {
38588 module: Box::new(module),
38589 };
38590 let alias_declaration_group_0_built =
38591 AliasDeclarationGroup::Module(alias_declaration_group_0_built);
38592 self.push(
38593 ASTType::AliasDeclarationGroup(alias_declaration_group_0_built),
38594 context,
38595 );
38596 Ok(())
38597 }
38598
38599 #[parol_runtime::function_name::named]
38604 fn alias_declaration_group_1(&mut self, _interface: &ParseTreeType<'t>) -> Result<()> {
38605 let context = function_name!();
38606 trace!("{}", self.trace_item_stack(context));
38607 let interface = pop_item!(self, interface, Interface, context);
38608 let alias_declaration_group_1_built = AliasDeclarationGroupInterface {
38609 interface: Box::new(interface),
38610 };
38611 let alias_declaration_group_1_built =
38612 AliasDeclarationGroup::Interface(alias_declaration_group_1_built);
38613 self.push(
38614 ASTType::AliasDeclarationGroup(alias_declaration_group_1_built),
38615 context,
38616 );
38617 Ok(())
38618 }
38619
38620 #[parol_runtime::function_name::named]
38625 fn alias_declaration_group_2(&mut self, _package: &ParseTreeType<'t>) -> Result<()> {
38626 let context = function_name!();
38627 trace!("{}", self.trace_item_stack(context));
38628 let package = pop_item!(self, package, Package, context);
38629 let alias_declaration_group_2_built = AliasDeclarationGroupPackage {
38630 package: Box::new(package),
38631 };
38632 let alias_declaration_group_2_built =
38633 AliasDeclarationGroup::Package(alias_declaration_group_2_built);
38634 self.push(
38635 ASTType::AliasDeclarationGroup(alias_declaration_group_2_built),
38636 context,
38637 );
38638 Ok(())
38639 }
38640
38641 #[parol_runtime::function_name::named]
38646 fn proto_declaration(
38647 &mut self,
38648 _proto: &ParseTreeType<'t>,
38649 _proto_declaration_group: &ParseTreeType<'t>,
38650 ) -> Result<()> {
38651 let context = function_name!();
38652 trace!("{}", self.trace_item_stack(context));
38653 let proto_declaration_group = pop_item!(
38654 self,
38655 proto_declaration_group,
38656 ProtoDeclarationGroup,
38657 context
38658 );
38659 let proto = pop_item!(self, proto, Proto, context);
38660 let proto_declaration_built = ProtoDeclaration {
38661 proto: Box::new(proto),
38662 proto_declaration_group: Box::new(proto_declaration_group),
38663 };
38664 self.user_grammar
38666 .proto_declaration(&proto_declaration_built)?;
38667 self.push(ASTType::ProtoDeclaration(proto_declaration_built), context);
38668 Ok(())
38669 }
38670
38671 #[parol_runtime::function_name::named]
38676 fn proto_declaration_group_0(
38677 &mut self,
38678 _proto_module_declaration: &ParseTreeType<'t>,
38679 ) -> Result<()> {
38680 let context = function_name!();
38681 trace!("{}", self.trace_item_stack(context));
38682 let proto_module_declaration = pop_item!(
38683 self,
38684 proto_module_declaration,
38685 ProtoModuleDeclaration,
38686 context
38687 );
38688 let proto_declaration_group_0_built = ProtoDeclarationGroupProtoModuleDeclaration {
38689 proto_module_declaration: Box::new(proto_module_declaration),
38690 };
38691 let proto_declaration_group_0_built =
38692 ProtoDeclarationGroup::ProtoModuleDeclaration(proto_declaration_group_0_built);
38693 self.push(
38694 ASTType::ProtoDeclarationGroup(proto_declaration_group_0_built),
38695 context,
38696 );
38697 Ok(())
38698 }
38699
38700 #[parol_runtime::function_name::named]
38705 fn proto_declaration_group_1(
38706 &mut self,
38707 _proto_interface_declaration: &ParseTreeType<'t>,
38708 ) -> Result<()> {
38709 let context = function_name!();
38710 trace!("{}", self.trace_item_stack(context));
38711 let proto_interface_declaration = pop_item!(
38712 self,
38713 proto_interface_declaration,
38714 ProtoInterfaceDeclaration,
38715 context
38716 );
38717 let proto_declaration_group_1_built = ProtoDeclarationGroupProtoInterfaceDeclaration {
38718 proto_interface_declaration: Box::new(proto_interface_declaration),
38719 };
38720 let proto_declaration_group_1_built =
38721 ProtoDeclarationGroup::ProtoInterfaceDeclaration(proto_declaration_group_1_built);
38722 self.push(
38723 ASTType::ProtoDeclarationGroup(proto_declaration_group_1_built),
38724 context,
38725 );
38726 Ok(())
38727 }
38728
38729 #[parol_runtime::function_name::named]
38734 fn proto_declaration_group_2(
38735 &mut self,
38736 _proto_package_declaration: &ParseTreeType<'t>,
38737 ) -> Result<()> {
38738 let context = function_name!();
38739 trace!("{}", self.trace_item_stack(context));
38740 let proto_package_declaration = pop_item!(
38741 self,
38742 proto_package_declaration,
38743 ProtoPackageDeclaration,
38744 context
38745 );
38746 let proto_declaration_group_2_built = ProtoDeclarationGroupProtoPackageDeclaration {
38747 proto_package_declaration: Box::new(proto_package_declaration),
38748 };
38749 let proto_declaration_group_2_built =
38750 ProtoDeclarationGroup::ProtoPackageDeclaration(proto_declaration_group_2_built);
38751 self.push(
38752 ASTType::ProtoDeclarationGroup(proto_declaration_group_2_built),
38753 context,
38754 );
38755 Ok(())
38756 }
38757
38758 #[parol_runtime::function_name::named]
38763 fn proto_module_declaration(
38764 &mut self,
38765 _module: &ParseTreeType<'t>,
38766 _identifier: &ParseTreeType<'t>,
38767 _proto_module_declaration_opt: &ParseTreeType<'t>,
38768 _proto_module_declaration_opt0: &ParseTreeType<'t>,
38769 _semicolon: &ParseTreeType<'t>,
38770 ) -> Result<()> {
38771 let context = function_name!();
38772 trace!("{}", self.trace_item_stack(context));
38773 let semicolon = pop_item!(self, semicolon, Semicolon, context);
38774 let proto_module_declaration_opt0 = pop_item!(
38775 self,
38776 proto_module_declaration_opt0,
38777 ProtoModuleDeclarationOpt0,
38778 context
38779 );
38780 let proto_module_declaration_opt = pop_item!(
38781 self,
38782 proto_module_declaration_opt,
38783 ProtoModuleDeclarationOpt,
38784 context
38785 );
38786 let identifier = pop_item!(self, identifier, Identifier, context);
38787 let module = pop_item!(self, module, Module, context);
38788 let proto_module_declaration_built = ProtoModuleDeclaration {
38789 module: Box::new(module),
38790 identifier: Box::new(identifier),
38791 proto_module_declaration_opt,
38792 proto_module_declaration_opt0,
38793 semicolon: Box::new(semicolon),
38794 };
38795 self.user_grammar
38797 .proto_module_declaration(&proto_module_declaration_built)?;
38798 self.push(
38799 ASTType::ProtoModuleDeclaration(proto_module_declaration_built),
38800 context,
38801 );
38802 Ok(())
38803 }
38804
38805 #[parol_runtime::function_name::named]
38810 fn proto_module_declaration_opt0_0(
38811 &mut self,
38812 _port_declaration: &ParseTreeType<'t>,
38813 ) -> Result<()> {
38814 let context = function_name!();
38815 trace!("{}", self.trace_item_stack(context));
38816 let port_declaration = pop_item!(self, port_declaration, PortDeclaration, context);
38817 let proto_module_declaration_opt0_0_built = ProtoModuleDeclarationOpt0 {
38818 port_declaration: Box::new(port_declaration),
38819 };
38820 self.push(
38821 ASTType::ProtoModuleDeclarationOpt0(Some(proto_module_declaration_opt0_0_built)),
38822 context,
38823 );
38824 Ok(())
38825 }
38826
38827 #[parol_runtime::function_name::named]
38832 fn proto_module_declaration_opt0_1(&mut self) -> Result<()> {
38833 let context = function_name!();
38834 trace!("{}", self.trace_item_stack(context));
38835 self.push(ASTType::ProtoModuleDeclarationOpt0(None), context);
38836 Ok(())
38837 }
38838
38839 #[parol_runtime::function_name::named]
38844 fn proto_module_declaration_opt_0(
38845 &mut self,
38846 _with_parameter: &ParseTreeType<'t>,
38847 ) -> Result<()> {
38848 let context = function_name!();
38849 trace!("{}", self.trace_item_stack(context));
38850 let with_parameter = pop_item!(self, with_parameter, WithParameter, context);
38851 let proto_module_declaration_opt_0_built = ProtoModuleDeclarationOpt {
38852 with_parameter: Box::new(with_parameter),
38853 };
38854 self.push(
38855 ASTType::ProtoModuleDeclarationOpt(Some(proto_module_declaration_opt_0_built)),
38856 context,
38857 );
38858 Ok(())
38859 }
38860
38861 #[parol_runtime::function_name::named]
38866 fn proto_module_declaration_opt_1(&mut self) -> Result<()> {
38867 let context = function_name!();
38868 trace!("{}", self.trace_item_stack(context));
38869 self.push(ASTType::ProtoModuleDeclarationOpt(None), context);
38870 Ok(())
38871 }
38872
38873 #[parol_runtime::function_name::named]
38878 fn proto_interface_declaration(
38879 &mut self,
38880 _interface: &ParseTreeType<'t>,
38881 _identifier: &ParseTreeType<'t>,
38882 _proto_interface_declaration_opt: &ParseTreeType<'t>,
38883 _l_brace: &ParseTreeType<'t>,
38884 _proto_interface_declaration_list: &ParseTreeType<'t>,
38885 _r_brace: &ParseTreeType<'t>,
38886 ) -> Result<()> {
38887 let context = function_name!();
38888 trace!("{}", self.trace_item_stack(context));
38889 let r_brace = pop_item!(self, r_brace, RBrace, context);
38890 let proto_interface_declaration_list = pop_and_reverse_item!(
38891 self,
38892 proto_interface_declaration_list,
38893 ProtoInterfaceDeclarationList,
38894 context
38895 );
38896 let l_brace = pop_item!(self, l_brace, LBrace, context);
38897 let proto_interface_declaration_opt = pop_item!(
38898 self,
38899 proto_interface_declaration_opt,
38900 ProtoInterfaceDeclarationOpt,
38901 context
38902 );
38903 let identifier = pop_item!(self, identifier, Identifier, context);
38904 let interface = pop_item!(self, interface, Interface, context);
38905 let proto_interface_declaration_built = ProtoInterfaceDeclaration {
38906 interface: Box::new(interface),
38907 identifier: Box::new(identifier),
38908 proto_interface_declaration_opt,
38909 l_brace: Box::new(l_brace),
38910 proto_interface_declaration_list,
38911 r_brace: Box::new(r_brace),
38912 };
38913 self.user_grammar
38915 .proto_interface_declaration(&proto_interface_declaration_built)?;
38916 self.push(
38917 ASTType::ProtoInterfaceDeclaration(proto_interface_declaration_built),
38918 context,
38919 );
38920 Ok(())
38921 }
38922
38923 #[parol_runtime::function_name::named]
38928 fn proto_interface_declaration_list_0(
38929 &mut self,
38930 _proto_interface_item: &ParseTreeType<'t>,
38931 _proto_interface_declaration_list: &ParseTreeType<'t>,
38932 ) -> Result<()> {
38933 let context = function_name!();
38934 trace!("{}", self.trace_item_stack(context));
38935 let mut proto_interface_declaration_list = pop_item!(
38936 self,
38937 proto_interface_declaration_list,
38938 ProtoInterfaceDeclarationList,
38939 context
38940 );
38941 let proto_interface_item =
38942 pop_item!(self, proto_interface_item, ProtoInterfaceItem, context);
38943 let proto_interface_declaration_list_0_built = ProtoInterfaceDeclarationList {
38944 proto_interface_item: Box::new(proto_interface_item),
38945 };
38946 proto_interface_declaration_list.push(proto_interface_declaration_list_0_built);
38948 self.push(
38949 ASTType::ProtoInterfaceDeclarationList(proto_interface_declaration_list),
38950 context,
38951 );
38952 Ok(())
38953 }
38954
38955 #[parol_runtime::function_name::named]
38960 fn proto_interface_declaration_list_1(&mut self) -> Result<()> {
38961 let context = function_name!();
38962 trace!("{}", self.trace_item_stack(context));
38963 let proto_interface_declaration_list_1_built = Vec::new();
38964 self.push(
38965 ASTType::ProtoInterfaceDeclarationList(proto_interface_declaration_list_1_built),
38966 context,
38967 );
38968 Ok(())
38969 }
38970
38971 #[parol_runtime::function_name::named]
38976 fn proto_interface_declaration_opt_0(
38977 &mut self,
38978 _with_parameter: &ParseTreeType<'t>,
38979 ) -> Result<()> {
38980 let context = function_name!();
38981 trace!("{}", self.trace_item_stack(context));
38982 let with_parameter = pop_item!(self, with_parameter, WithParameter, context);
38983 let proto_interface_declaration_opt_0_built = ProtoInterfaceDeclarationOpt {
38984 with_parameter: Box::new(with_parameter),
38985 };
38986 self.push(
38987 ASTType::ProtoInterfaceDeclarationOpt(Some(proto_interface_declaration_opt_0_built)),
38988 context,
38989 );
38990 Ok(())
38991 }
38992
38993 #[parol_runtime::function_name::named]
38998 fn proto_interface_declaration_opt_1(&mut self) -> Result<()> {
38999 let context = function_name!();
39000 trace!("{}", self.trace_item_stack(context));
39001 self.push(ASTType::ProtoInterfaceDeclarationOpt(None), context);
39002 Ok(())
39003 }
39004
39005 #[parol_runtime::function_name::named]
39010 fn proto_interface_item_0(&mut self, _var_declaration: &ParseTreeType<'t>) -> Result<()> {
39011 let context = function_name!();
39012 trace!("{}", self.trace_item_stack(context));
39013 let var_declaration = pop_item!(self, var_declaration, VarDeclaration, context);
39014 let proto_interface_item_0_built = ProtoInterfaceItemVarDeclaration {
39015 var_declaration: Box::new(var_declaration),
39016 };
39017 let proto_interface_item_0_built =
39018 ProtoInterfaceItem::VarDeclaration(proto_interface_item_0_built);
39019 self.user_grammar
39021 .proto_interface_item(&proto_interface_item_0_built)?;
39022 self.push(
39023 ASTType::ProtoInterfaceItem(proto_interface_item_0_built),
39024 context,
39025 );
39026 Ok(())
39027 }
39028
39029 #[parol_runtime::function_name::named]
39034 fn proto_interface_item_1(
39035 &mut self,
39036 _proto_const_declaration: &ParseTreeType<'t>,
39037 ) -> Result<()> {
39038 let context = function_name!();
39039 trace!("{}", self.trace_item_stack(context));
39040 let proto_const_declaration = pop_item!(
39041 self,
39042 proto_const_declaration,
39043 ProtoConstDeclaration,
39044 context
39045 );
39046 let proto_interface_item_1_built = ProtoInterfaceItemProtoConstDeclaration {
39047 proto_const_declaration: Box::new(proto_const_declaration),
39048 };
39049 let proto_interface_item_1_built =
39050 ProtoInterfaceItem::ProtoConstDeclaration(proto_interface_item_1_built);
39051 self.user_grammar
39053 .proto_interface_item(&proto_interface_item_1_built)?;
39054 self.push(
39055 ASTType::ProtoInterfaceItem(proto_interface_item_1_built),
39056 context,
39057 );
39058 Ok(())
39059 }
39060
39061 #[parol_runtime::function_name::named]
39066 fn proto_interface_item_2(
39067 &mut self,
39068 _proto_function_declaration: &ParseTreeType<'t>,
39069 ) -> Result<()> {
39070 let context = function_name!();
39071 trace!("{}", self.trace_item_stack(context));
39072 let proto_function_declaration = pop_item!(
39073 self,
39074 proto_function_declaration,
39075 ProtoFunctionDeclaration,
39076 context
39077 );
39078 let proto_interface_item_2_built = ProtoInterfaceItemProtoFunctionDeclaration {
39079 proto_function_declaration: Box::new(proto_function_declaration),
39080 };
39081 let proto_interface_item_2_built =
39082 ProtoInterfaceItem::ProtoFunctionDeclaration(proto_interface_item_2_built);
39083 self.user_grammar
39085 .proto_interface_item(&proto_interface_item_2_built)?;
39086 self.push(
39087 ASTType::ProtoInterfaceItem(proto_interface_item_2_built),
39088 context,
39089 );
39090 Ok(())
39091 }
39092
39093 #[parol_runtime::function_name::named]
39098 fn proto_interface_item_3(
39099 &mut self,
39100 _proto_type_def_declaration: &ParseTreeType<'t>,
39101 ) -> Result<()> {
39102 let context = function_name!();
39103 trace!("{}", self.trace_item_stack(context));
39104 let proto_type_def_declaration = pop_item!(
39105 self,
39106 proto_type_def_declaration,
39107 ProtoTypeDefDeclaration,
39108 context
39109 );
39110 let proto_interface_item_3_built = ProtoInterfaceItemProtoTypeDefDeclaration {
39111 proto_type_def_declaration: Box::new(proto_type_def_declaration),
39112 };
39113 let proto_interface_item_3_built =
39114 ProtoInterfaceItem::ProtoTypeDefDeclaration(proto_interface_item_3_built);
39115 self.user_grammar
39117 .proto_interface_item(&proto_interface_item_3_built)?;
39118 self.push(
39119 ASTType::ProtoInterfaceItem(proto_interface_item_3_built),
39120 context,
39121 );
39122 Ok(())
39123 }
39124
39125 #[parol_runtime::function_name::named]
39130 fn proto_interface_item_4(
39131 &mut self,
39132 _proto_alias_declaration: &ParseTreeType<'t>,
39133 ) -> Result<()> {
39134 let context = function_name!();
39135 trace!("{}", self.trace_item_stack(context));
39136 let proto_alias_declaration = pop_item!(
39137 self,
39138 proto_alias_declaration,
39139 ProtoAliasDeclaration,
39140 context
39141 );
39142 let proto_interface_item_4_built = ProtoInterfaceItemProtoAliasDeclaration {
39143 proto_alias_declaration: Box::new(proto_alias_declaration),
39144 };
39145 let proto_interface_item_4_built =
39146 ProtoInterfaceItem::ProtoAliasDeclaration(proto_interface_item_4_built);
39147 self.user_grammar
39149 .proto_interface_item(&proto_interface_item_4_built)?;
39150 self.push(
39151 ASTType::ProtoInterfaceItem(proto_interface_item_4_built),
39152 context,
39153 );
39154 Ok(())
39155 }
39156
39157 #[parol_runtime::function_name::named]
39162 fn proto_interface_item_5(&mut self, _modport_declaration: &ParseTreeType<'t>) -> Result<()> {
39163 let context = function_name!();
39164 trace!("{}", self.trace_item_stack(context));
39165 let modport_declaration = pop_item!(self, modport_declaration, ModportDeclaration, context);
39166 let proto_interface_item_5_built = ProtoInterfaceItemModportDeclaration {
39167 modport_declaration: Box::new(modport_declaration),
39168 };
39169 let proto_interface_item_5_built =
39170 ProtoInterfaceItem::ModportDeclaration(proto_interface_item_5_built);
39171 self.user_grammar
39173 .proto_interface_item(&proto_interface_item_5_built)?;
39174 self.push(
39175 ASTType::ProtoInterfaceItem(proto_interface_item_5_built),
39176 context,
39177 );
39178 Ok(())
39179 }
39180
39181 #[parol_runtime::function_name::named]
39186 fn proto_interface_item_6(&mut self, _import_declaration: &ParseTreeType<'t>) -> Result<()> {
39187 let context = function_name!();
39188 trace!("{}", self.trace_item_stack(context));
39189 let import_declaration = pop_item!(self, import_declaration, ImportDeclaration, context);
39190 let proto_interface_item_6_built = ProtoInterfaceItemImportDeclaration {
39191 import_declaration: Box::new(import_declaration),
39192 };
39193 let proto_interface_item_6_built =
39194 ProtoInterfaceItem::ImportDeclaration(proto_interface_item_6_built);
39195 self.user_grammar
39197 .proto_interface_item(&proto_interface_item_6_built)?;
39198 self.push(
39199 ASTType::ProtoInterfaceItem(proto_interface_item_6_built),
39200 context,
39201 );
39202 Ok(())
39203 }
39204
39205 #[parol_runtime::function_name::named]
39210 fn proto_package_declaration(
39211 &mut self,
39212 _package: &ParseTreeType<'t>,
39213 _identifier: &ParseTreeType<'t>,
39214 _l_brace: &ParseTreeType<'t>,
39215 _proto_package_declaration_list: &ParseTreeType<'t>,
39216 _r_brace: &ParseTreeType<'t>,
39217 ) -> Result<()> {
39218 let context = function_name!();
39219 trace!("{}", self.trace_item_stack(context));
39220 let r_brace = pop_item!(self, r_brace, RBrace, context);
39221 let proto_package_declaration_list = pop_and_reverse_item!(
39222 self,
39223 proto_package_declaration_list,
39224 ProtoPackageDeclarationList,
39225 context
39226 );
39227 let l_brace = pop_item!(self, l_brace, LBrace, context);
39228 let identifier = pop_item!(self, identifier, Identifier, context);
39229 let package = pop_item!(self, package, Package, context);
39230 let proto_package_declaration_built = ProtoPackageDeclaration {
39231 package: Box::new(package),
39232 identifier: Box::new(identifier),
39233 l_brace: Box::new(l_brace),
39234 proto_package_declaration_list,
39235 r_brace: Box::new(r_brace),
39236 };
39237 self.user_grammar
39239 .proto_package_declaration(&proto_package_declaration_built)?;
39240 self.push(
39241 ASTType::ProtoPackageDeclaration(proto_package_declaration_built),
39242 context,
39243 );
39244 Ok(())
39245 }
39246
39247 #[parol_runtime::function_name::named]
39252 fn proto_package_declaration_list_0(
39253 &mut self,
39254 _proto_pacakge_item: &ParseTreeType<'t>,
39255 _proto_package_declaration_list: &ParseTreeType<'t>,
39256 ) -> Result<()> {
39257 let context = function_name!();
39258 trace!("{}", self.trace_item_stack(context));
39259 let mut proto_package_declaration_list = pop_item!(
39260 self,
39261 proto_package_declaration_list,
39262 ProtoPackageDeclarationList,
39263 context
39264 );
39265 let proto_pacakge_item = pop_item!(self, proto_pacakge_item, ProtoPacakgeItem, context);
39266 let proto_package_declaration_list_0_built = ProtoPackageDeclarationList {
39267 proto_pacakge_item: Box::new(proto_pacakge_item),
39268 };
39269 proto_package_declaration_list.push(proto_package_declaration_list_0_built);
39271 self.push(
39272 ASTType::ProtoPackageDeclarationList(proto_package_declaration_list),
39273 context,
39274 );
39275 Ok(())
39276 }
39277
39278 #[parol_runtime::function_name::named]
39283 fn proto_package_declaration_list_1(&mut self) -> Result<()> {
39284 let context = function_name!();
39285 trace!("{}", self.trace_item_stack(context));
39286 let proto_package_declaration_list_1_built = Vec::new();
39287 self.push(
39288 ASTType::ProtoPackageDeclarationList(proto_package_declaration_list_1_built),
39289 context,
39290 );
39291 Ok(())
39292 }
39293
39294 #[parol_runtime::function_name::named]
39299 fn proto_pacakge_item_0(&mut self, _proto_const_declaration: &ParseTreeType<'t>) -> Result<()> {
39300 let context = function_name!();
39301 trace!("{}", self.trace_item_stack(context));
39302 let proto_const_declaration = pop_item!(
39303 self,
39304 proto_const_declaration,
39305 ProtoConstDeclaration,
39306 context
39307 );
39308 let proto_pacakge_item_0_built = ProtoPacakgeItemProtoConstDeclaration {
39309 proto_const_declaration: Box::new(proto_const_declaration),
39310 };
39311 let proto_pacakge_item_0_built =
39312 ProtoPacakgeItem::ProtoConstDeclaration(proto_pacakge_item_0_built);
39313 self.user_grammar
39315 .proto_pacakge_item(&proto_pacakge_item_0_built)?;
39316 self.push(
39317 ASTType::ProtoPacakgeItem(proto_pacakge_item_0_built),
39318 context,
39319 );
39320 Ok(())
39321 }
39322
39323 #[parol_runtime::function_name::named]
39328 fn proto_pacakge_item_1(
39329 &mut self,
39330 _proto_type_def_declaration: &ParseTreeType<'t>,
39331 ) -> Result<()> {
39332 let context = function_name!();
39333 trace!("{}", self.trace_item_stack(context));
39334 let proto_type_def_declaration = pop_item!(
39335 self,
39336 proto_type_def_declaration,
39337 ProtoTypeDefDeclaration,
39338 context
39339 );
39340 let proto_pacakge_item_1_built = ProtoPacakgeItemProtoTypeDefDeclaration {
39341 proto_type_def_declaration: Box::new(proto_type_def_declaration),
39342 };
39343 let proto_pacakge_item_1_built =
39344 ProtoPacakgeItem::ProtoTypeDefDeclaration(proto_pacakge_item_1_built);
39345 self.user_grammar
39347 .proto_pacakge_item(&proto_pacakge_item_1_built)?;
39348 self.push(
39349 ASTType::ProtoPacakgeItem(proto_pacakge_item_1_built),
39350 context,
39351 );
39352 Ok(())
39353 }
39354
39355 #[parol_runtime::function_name::named]
39360 fn proto_pacakge_item_2(&mut self, _enum_declaration: &ParseTreeType<'t>) -> Result<()> {
39361 let context = function_name!();
39362 trace!("{}", self.trace_item_stack(context));
39363 let enum_declaration = pop_item!(self, enum_declaration, EnumDeclaration, context);
39364 let proto_pacakge_item_2_built = ProtoPacakgeItemEnumDeclaration {
39365 enum_declaration: Box::new(enum_declaration),
39366 };
39367 let proto_pacakge_item_2_built =
39368 ProtoPacakgeItem::EnumDeclaration(proto_pacakge_item_2_built);
39369 self.user_grammar
39371 .proto_pacakge_item(&proto_pacakge_item_2_built)?;
39372 self.push(
39373 ASTType::ProtoPacakgeItem(proto_pacakge_item_2_built),
39374 context,
39375 );
39376 Ok(())
39377 }
39378
39379 #[parol_runtime::function_name::named]
39384 fn proto_pacakge_item_3(
39385 &mut self,
39386 _struct_union_declaration: &ParseTreeType<'t>,
39387 ) -> Result<()> {
39388 let context = function_name!();
39389 trace!("{}", self.trace_item_stack(context));
39390 let struct_union_declaration = pop_item!(
39391 self,
39392 struct_union_declaration,
39393 StructUnionDeclaration,
39394 context
39395 );
39396 let proto_pacakge_item_3_built = ProtoPacakgeItemStructUnionDeclaration {
39397 struct_union_declaration: Box::new(struct_union_declaration),
39398 };
39399 let proto_pacakge_item_3_built =
39400 ProtoPacakgeItem::StructUnionDeclaration(proto_pacakge_item_3_built);
39401 self.user_grammar
39403 .proto_pacakge_item(&proto_pacakge_item_3_built)?;
39404 self.push(
39405 ASTType::ProtoPacakgeItem(proto_pacakge_item_3_built),
39406 context,
39407 );
39408 Ok(())
39409 }
39410
39411 #[parol_runtime::function_name::named]
39416 fn proto_pacakge_item_4(
39417 &mut self,
39418 _proto_function_declaration: &ParseTreeType<'t>,
39419 ) -> Result<()> {
39420 let context = function_name!();
39421 trace!("{}", self.trace_item_stack(context));
39422 let proto_function_declaration = pop_item!(
39423 self,
39424 proto_function_declaration,
39425 ProtoFunctionDeclaration,
39426 context
39427 );
39428 let proto_pacakge_item_4_built = ProtoPacakgeItemProtoFunctionDeclaration {
39429 proto_function_declaration: Box::new(proto_function_declaration),
39430 };
39431 let proto_pacakge_item_4_built =
39432 ProtoPacakgeItem::ProtoFunctionDeclaration(proto_pacakge_item_4_built);
39433 self.user_grammar
39435 .proto_pacakge_item(&proto_pacakge_item_4_built)?;
39436 self.push(
39437 ASTType::ProtoPacakgeItem(proto_pacakge_item_4_built),
39438 context,
39439 );
39440 Ok(())
39441 }
39442
39443 #[parol_runtime::function_name::named]
39448 fn proto_pacakge_item_5(&mut self, _proto_alias_declaration: &ParseTreeType<'t>) -> Result<()> {
39449 let context = function_name!();
39450 trace!("{}", self.trace_item_stack(context));
39451 let proto_alias_declaration = pop_item!(
39452 self,
39453 proto_alias_declaration,
39454 ProtoAliasDeclaration,
39455 context
39456 );
39457 let proto_pacakge_item_5_built = ProtoPacakgeItemProtoAliasDeclaration {
39458 proto_alias_declaration: Box::new(proto_alias_declaration),
39459 };
39460 let proto_pacakge_item_5_built =
39461 ProtoPacakgeItem::ProtoAliasDeclaration(proto_pacakge_item_5_built);
39462 self.user_grammar
39464 .proto_pacakge_item(&proto_pacakge_item_5_built)?;
39465 self.push(
39466 ASTType::ProtoPacakgeItem(proto_pacakge_item_5_built),
39467 context,
39468 );
39469 Ok(())
39470 }
39471
39472 #[parol_runtime::function_name::named]
39477 fn proto_pacakge_item_6(&mut self, _import_declaration: &ParseTreeType<'t>) -> Result<()> {
39478 let context = function_name!();
39479 trace!("{}", self.trace_item_stack(context));
39480 let import_declaration = pop_item!(self, import_declaration, ImportDeclaration, context);
39481 let proto_pacakge_item_6_built = ProtoPacakgeItemImportDeclaration {
39482 import_declaration: Box::new(import_declaration),
39483 };
39484 let proto_pacakge_item_6_built =
39485 ProtoPacakgeItem::ImportDeclaration(proto_pacakge_item_6_built);
39486 self.user_grammar
39488 .proto_pacakge_item(&proto_pacakge_item_6_built)?;
39489 self.push(
39490 ASTType::ProtoPacakgeItem(proto_pacakge_item_6_built),
39491 context,
39492 );
39493 Ok(())
39494 }
39495
39496 #[parol_runtime::function_name::named]
39501 fn proto_const_declaration(
39502 &mut self,
39503 _const: &ParseTreeType<'t>,
39504 _identifier: &ParseTreeType<'t>,
39505 _colon: &ParseTreeType<'t>,
39506 _proto_const_declaration_group: &ParseTreeType<'t>,
39507 _semicolon: &ParseTreeType<'t>,
39508 ) -> Result<()> {
39509 let context = function_name!();
39510 trace!("{}", self.trace_item_stack(context));
39511 let semicolon = pop_item!(self, semicolon, Semicolon, context);
39512 let proto_const_declaration_group = pop_item!(
39513 self,
39514 proto_const_declaration_group,
39515 ProtoConstDeclarationGroup,
39516 context
39517 );
39518 let colon = pop_item!(self, colon, Colon, context);
39519 let identifier = pop_item!(self, identifier, Identifier, context);
39520 let r#const = pop_item!(self, r#const, Const, context);
39521 let proto_const_declaration_built = ProtoConstDeclaration {
39522 r#const: Box::new(r#const),
39523 identifier: Box::new(identifier),
39524 colon: Box::new(colon),
39525 proto_const_declaration_group: Box::new(proto_const_declaration_group),
39526 semicolon: Box::new(semicolon),
39527 };
39528 self.user_grammar
39530 .proto_const_declaration(&proto_const_declaration_built)?;
39531 self.push(
39532 ASTType::ProtoConstDeclaration(proto_const_declaration_built),
39533 context,
39534 );
39535 Ok(())
39536 }
39537
39538 #[parol_runtime::function_name::named]
39543 fn proto_const_declaration_group_0(&mut self, _array_type: &ParseTreeType<'t>) -> Result<()> {
39544 let context = function_name!();
39545 trace!("{}", self.trace_item_stack(context));
39546 let array_type = pop_item!(self, array_type, ArrayType, context);
39547 let proto_const_declaration_group_0_built = ProtoConstDeclarationGroupArrayType {
39548 array_type: Box::new(array_type),
39549 };
39550 let proto_const_declaration_group_0_built =
39551 ProtoConstDeclarationGroup::ArrayType(proto_const_declaration_group_0_built);
39552 self.push(
39553 ASTType::ProtoConstDeclarationGroup(proto_const_declaration_group_0_built),
39554 context,
39555 );
39556 Ok(())
39557 }
39558
39559 #[parol_runtime::function_name::named]
39564 fn proto_const_declaration_group_1(&mut self, _type: &ParseTreeType<'t>) -> Result<()> {
39565 let context = function_name!();
39566 trace!("{}", self.trace_item_stack(context));
39567 let r#type = pop_item!(self, r#type, Type, context);
39568 let proto_const_declaration_group_1_built = ProtoConstDeclarationGroupType {
39569 r#type: Box::new(r#type),
39570 };
39571 let proto_const_declaration_group_1_built =
39572 ProtoConstDeclarationGroup::Type(proto_const_declaration_group_1_built);
39573 self.push(
39574 ASTType::ProtoConstDeclarationGroup(proto_const_declaration_group_1_built),
39575 context,
39576 );
39577 Ok(())
39578 }
39579
39580 #[parol_runtime::function_name::named]
39585 fn proto_type_def_declaration(
39586 &mut self,
39587 _type: &ParseTreeType<'t>,
39588 _identifier: &ParseTreeType<'t>,
39589 _proto_type_def_declaration_opt: &ParseTreeType<'t>,
39590 _semicolon: &ParseTreeType<'t>,
39591 ) -> Result<()> {
39592 let context = function_name!();
39593 trace!("{}", self.trace_item_stack(context));
39594 let semicolon = pop_item!(self, semicolon, Semicolon, context);
39595 let proto_type_def_declaration_opt = pop_item!(
39596 self,
39597 proto_type_def_declaration_opt,
39598 ProtoTypeDefDeclarationOpt,
39599 context
39600 );
39601 let identifier = pop_item!(self, identifier, Identifier, context);
39602 let r#type = pop_item!(self, r#type, Type, context);
39603 let proto_type_def_declaration_built = ProtoTypeDefDeclaration {
39604 r#type: Box::new(r#type),
39605 identifier: Box::new(identifier),
39606 proto_type_def_declaration_opt,
39607 semicolon: Box::new(semicolon),
39608 };
39609 self.user_grammar
39611 .proto_type_def_declaration(&proto_type_def_declaration_built)?;
39612 self.push(
39613 ASTType::ProtoTypeDefDeclaration(proto_type_def_declaration_built),
39614 context,
39615 );
39616 Ok(())
39617 }
39618
39619 #[parol_runtime::function_name::named]
39624 fn proto_type_def_declaration_opt_0(
39625 &mut self,
39626 _equ: &ParseTreeType<'t>,
39627 _array_type: &ParseTreeType<'t>,
39628 ) -> Result<()> {
39629 let context = function_name!();
39630 trace!("{}", self.trace_item_stack(context));
39631 let array_type = pop_item!(self, array_type, ArrayType, context);
39632 let equ = pop_item!(self, equ, Equ, context);
39633 let proto_type_def_declaration_opt_0_built = ProtoTypeDefDeclarationOpt {
39634 equ: Box::new(equ),
39635 array_type: Box::new(array_type),
39636 };
39637 self.push(
39638 ASTType::ProtoTypeDefDeclarationOpt(Some(proto_type_def_declaration_opt_0_built)),
39639 context,
39640 );
39641 Ok(())
39642 }
39643
39644 #[parol_runtime::function_name::named]
39649 fn proto_type_def_declaration_opt_1(&mut self) -> Result<()> {
39650 let context = function_name!();
39651 trace!("{}", self.trace_item_stack(context));
39652 self.push(ASTType::ProtoTypeDefDeclarationOpt(None), context);
39653 Ok(())
39654 }
39655
39656 #[parol_runtime::function_name::named]
39661 fn proto_function_declaration(
39662 &mut self,
39663 _function: &ParseTreeType<'t>,
39664 _identifier: &ParseTreeType<'t>,
39665 _proto_function_declaration_opt: &ParseTreeType<'t>,
39666 _proto_function_declaration_opt0: &ParseTreeType<'t>,
39667 _proto_function_declaration_opt1: &ParseTreeType<'t>,
39668 _semicolon: &ParseTreeType<'t>,
39669 ) -> Result<()> {
39670 let context = function_name!();
39671 trace!("{}", self.trace_item_stack(context));
39672 let semicolon = pop_item!(self, semicolon, Semicolon, context);
39673 let proto_function_declaration_opt1 = pop_item!(
39674 self,
39675 proto_function_declaration_opt1,
39676 ProtoFunctionDeclarationOpt1,
39677 context
39678 );
39679 let proto_function_declaration_opt0 = pop_item!(
39680 self,
39681 proto_function_declaration_opt0,
39682 ProtoFunctionDeclarationOpt0,
39683 context
39684 );
39685 let proto_function_declaration_opt = pop_item!(
39686 self,
39687 proto_function_declaration_opt,
39688 ProtoFunctionDeclarationOpt,
39689 context
39690 );
39691 let identifier = pop_item!(self, identifier, Identifier, context);
39692 let function = pop_item!(self, function, Function, context);
39693 let proto_function_declaration_built = ProtoFunctionDeclaration {
39694 function: Box::new(function),
39695 identifier: Box::new(identifier),
39696 proto_function_declaration_opt,
39697 proto_function_declaration_opt0,
39698 proto_function_declaration_opt1,
39699 semicolon: Box::new(semicolon),
39700 };
39701 self.user_grammar
39703 .proto_function_declaration(&proto_function_declaration_built)?;
39704 self.push(
39705 ASTType::ProtoFunctionDeclaration(proto_function_declaration_built),
39706 context,
39707 );
39708 Ok(())
39709 }
39710
39711 #[parol_runtime::function_name::named]
39716 fn proto_function_declaration_opt1_0(
39717 &mut self,
39718 _minus_g_t: &ParseTreeType<'t>,
39719 _scalar_type: &ParseTreeType<'t>,
39720 ) -> Result<()> {
39721 let context = function_name!();
39722 trace!("{}", self.trace_item_stack(context));
39723 let scalar_type = pop_item!(self, scalar_type, ScalarType, context);
39724 let minus_g_t = pop_item!(self, minus_g_t, MinusGT, context);
39725 let proto_function_declaration_opt1_0_built = ProtoFunctionDeclarationOpt1 {
39726 minus_g_t: Box::new(minus_g_t),
39727 scalar_type: Box::new(scalar_type),
39728 };
39729 self.push(
39730 ASTType::ProtoFunctionDeclarationOpt1(Some(proto_function_declaration_opt1_0_built)),
39731 context,
39732 );
39733 Ok(())
39734 }
39735
39736 #[parol_runtime::function_name::named]
39741 fn proto_function_declaration_opt1_1(&mut self) -> Result<()> {
39742 let context = function_name!();
39743 trace!("{}", self.trace_item_stack(context));
39744 self.push(ASTType::ProtoFunctionDeclarationOpt1(None), context);
39745 Ok(())
39746 }
39747
39748 #[parol_runtime::function_name::named]
39753 fn proto_function_declaration_opt0_0(
39754 &mut self,
39755 _port_declaration: &ParseTreeType<'t>,
39756 ) -> Result<()> {
39757 let context = function_name!();
39758 trace!("{}", self.trace_item_stack(context));
39759 let port_declaration = pop_item!(self, port_declaration, PortDeclaration, context);
39760 let proto_function_declaration_opt0_0_built = ProtoFunctionDeclarationOpt0 {
39761 port_declaration: Box::new(port_declaration),
39762 };
39763 self.push(
39764 ASTType::ProtoFunctionDeclarationOpt0(Some(proto_function_declaration_opt0_0_built)),
39765 context,
39766 );
39767 Ok(())
39768 }
39769
39770 #[parol_runtime::function_name::named]
39775 fn proto_function_declaration_opt0_1(&mut self) -> Result<()> {
39776 let context = function_name!();
39777 trace!("{}", self.trace_item_stack(context));
39778 self.push(ASTType::ProtoFunctionDeclarationOpt0(None), context);
39779 Ok(())
39780 }
39781
39782 #[parol_runtime::function_name::named]
39787 fn proto_function_declaration_opt_0(
39788 &mut self,
39789 _with_generic_parameter: &ParseTreeType<'t>,
39790 ) -> Result<()> {
39791 let context = function_name!();
39792 trace!("{}", self.trace_item_stack(context));
39793 let with_generic_parameter =
39794 pop_item!(self, with_generic_parameter, WithGenericParameter, context);
39795 let proto_function_declaration_opt_0_built = ProtoFunctionDeclarationOpt {
39796 with_generic_parameter: Box::new(with_generic_parameter),
39797 };
39798 self.push(
39799 ASTType::ProtoFunctionDeclarationOpt(Some(proto_function_declaration_opt_0_built)),
39800 context,
39801 );
39802 Ok(())
39803 }
39804
39805 #[parol_runtime::function_name::named]
39810 fn proto_function_declaration_opt_1(&mut self) -> Result<()> {
39811 let context = function_name!();
39812 trace!("{}", self.trace_item_stack(context));
39813 self.push(ASTType::ProtoFunctionDeclarationOpt(None), context);
39814 Ok(())
39815 }
39816
39817 #[parol_runtime::function_name::named]
39822 fn proto_alias_declaration(
39823 &mut self,
39824 _alias: &ParseTreeType<'t>,
39825 _proto_alias_declaration_group: &ParseTreeType<'t>,
39826 _identifier: &ParseTreeType<'t>,
39827 _colon: &ParseTreeType<'t>,
39828 _scoped_identifier: &ParseTreeType<'t>,
39829 _semicolon: &ParseTreeType<'t>,
39830 ) -> Result<()> {
39831 let context = function_name!();
39832 trace!("{}", self.trace_item_stack(context));
39833 let semicolon = pop_item!(self, semicolon, Semicolon, context);
39834 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
39835 let colon = pop_item!(self, colon, Colon, context);
39836 let identifier = pop_item!(self, identifier, Identifier, context);
39837 let proto_alias_declaration_group = pop_item!(
39838 self,
39839 proto_alias_declaration_group,
39840 ProtoAliasDeclarationGroup,
39841 context
39842 );
39843 let alias = pop_item!(self, alias, Alias, context);
39844 let proto_alias_declaration_built = ProtoAliasDeclaration {
39845 alias: Box::new(alias),
39846 proto_alias_declaration_group: Box::new(proto_alias_declaration_group),
39847 identifier: Box::new(identifier),
39848 colon: Box::new(colon),
39849 scoped_identifier: Box::new(scoped_identifier),
39850 semicolon: Box::new(semicolon),
39851 };
39852 self.user_grammar
39854 .proto_alias_declaration(&proto_alias_declaration_built)?;
39855 self.push(
39856 ASTType::ProtoAliasDeclaration(proto_alias_declaration_built),
39857 context,
39858 );
39859 Ok(())
39860 }
39861
39862 #[parol_runtime::function_name::named]
39867 fn proto_alias_declaration_group_0(&mut self, _module: &ParseTreeType<'t>) -> Result<()> {
39868 let context = function_name!();
39869 trace!("{}", self.trace_item_stack(context));
39870 let module = pop_item!(self, module, Module, context);
39871 let proto_alias_declaration_group_0_built = ProtoAliasDeclarationGroupModule {
39872 module: Box::new(module),
39873 };
39874 let proto_alias_declaration_group_0_built =
39875 ProtoAliasDeclarationGroup::Module(proto_alias_declaration_group_0_built);
39876 self.push(
39877 ASTType::ProtoAliasDeclarationGroup(proto_alias_declaration_group_0_built),
39878 context,
39879 );
39880 Ok(())
39881 }
39882
39883 #[parol_runtime::function_name::named]
39888 fn proto_alias_declaration_group_1(&mut self, _interface: &ParseTreeType<'t>) -> Result<()> {
39889 let context = function_name!();
39890 trace!("{}", self.trace_item_stack(context));
39891 let interface = pop_item!(self, interface, Interface, context);
39892 let proto_alias_declaration_group_1_built = ProtoAliasDeclarationGroupInterface {
39893 interface: Box::new(interface),
39894 };
39895 let proto_alias_declaration_group_1_built =
39896 ProtoAliasDeclarationGroup::Interface(proto_alias_declaration_group_1_built);
39897 self.push(
39898 ASTType::ProtoAliasDeclarationGroup(proto_alias_declaration_group_1_built),
39899 context,
39900 );
39901 Ok(())
39902 }
39903
39904 #[parol_runtime::function_name::named]
39909 fn proto_alias_declaration_group_2(&mut self, _package: &ParseTreeType<'t>) -> Result<()> {
39910 let context = function_name!();
39911 trace!("{}", self.trace_item_stack(context));
39912 let package = pop_item!(self, package, Package, context);
39913 let proto_alias_declaration_group_2_built = ProtoAliasDeclarationGroupPackage {
39914 package: Box::new(package),
39915 };
39916 let proto_alias_declaration_group_2_built =
39917 ProtoAliasDeclarationGroup::Package(proto_alias_declaration_group_2_built);
39918 self.push(
39919 ASTType::ProtoAliasDeclarationGroup(proto_alias_declaration_group_2_built),
39920 context,
39921 );
39922 Ok(())
39923 }
39924
39925 #[parol_runtime::function_name::named]
39930 fn embed_declaration(
39931 &mut self,
39932 _embed: &ParseTreeType<'t>,
39933 _l_paren: &ParseTreeType<'t>,
39934 _identifier: &ParseTreeType<'t>,
39935 _r_paren: &ParseTreeType<'t>,
39936 _identifier0: &ParseTreeType<'t>,
39937 _embed_content: &ParseTreeType<'t>,
39938 ) -> Result<()> {
39939 let context = function_name!();
39940 trace!("{}", self.trace_item_stack(context));
39941 let embed_content = pop_item!(self, embed_content, EmbedContent, context);
39942 let identifier0 = pop_item!(self, identifier0, Identifier, context);
39943 let r_paren = pop_item!(self, r_paren, RParen, context);
39944 let identifier = pop_item!(self, identifier, Identifier, context);
39945 let l_paren = pop_item!(self, l_paren, LParen, context);
39946 let embed = pop_item!(self, embed, Embed, context);
39947 let embed_declaration_built = EmbedDeclaration {
39948 embed: Box::new(embed),
39949 l_paren: Box::new(l_paren),
39950 identifier: Box::new(identifier),
39951 r_paren: Box::new(r_paren),
39952 identifier0: Box::new(identifier0),
39953 embed_content: Box::new(embed_content),
39954 };
39955 self.user_grammar
39957 .embed_declaration(&embed_declaration_built)?;
39958 self.push(ASTType::EmbedDeclaration(embed_declaration_built), context);
39959 Ok(())
39960 }
39961
39962 #[parol_runtime::function_name::named]
39967 fn embed_content(
39968 &mut self,
39969 _triple_l_brace: &ParseTreeType<'t>,
39970 _embed_content_list: &ParseTreeType<'t>,
39971 _triple_r_brace: &ParseTreeType<'t>,
39972 ) -> Result<()> {
39973 let context = function_name!();
39974 trace!("{}", self.trace_item_stack(context));
39975 let triple_r_brace = pop_item!(self, triple_r_brace, TripleRBrace, context);
39976 let embed_content_list =
39977 pop_and_reverse_item!(self, embed_content_list, EmbedContentList, context);
39978 let triple_l_brace = pop_item!(self, triple_l_brace, TripleLBrace, context);
39979 let embed_content_built = EmbedContent {
39980 triple_l_brace: Box::new(triple_l_brace),
39981 embed_content_list,
39982 triple_r_brace: Box::new(triple_r_brace),
39983 };
39984 self.user_grammar.embed_content(&embed_content_built)?;
39986 self.push(ASTType::EmbedContent(embed_content_built), context);
39987 Ok(())
39988 }
39989
39990 #[parol_runtime::function_name::named]
39995 fn embed_content_list_0(
39996 &mut self,
39997 _embed_item: &ParseTreeType<'t>,
39998 _embed_content_list: &ParseTreeType<'t>,
39999 ) -> Result<()> {
40000 let context = function_name!();
40001 trace!("{}", self.trace_item_stack(context));
40002 let mut embed_content_list = pop_item!(self, embed_content_list, EmbedContentList, context);
40003 let embed_item = pop_item!(self, embed_item, EmbedItem, context);
40004 let embed_content_list_0_built = EmbedContentList {
40005 embed_item: Box::new(embed_item),
40006 };
40007 embed_content_list.push(embed_content_list_0_built);
40009 self.push(ASTType::EmbedContentList(embed_content_list), context);
40010 Ok(())
40011 }
40012
40013 #[parol_runtime::function_name::named]
40018 fn embed_content_list_1(&mut self) -> Result<()> {
40019 let context = function_name!();
40020 trace!("{}", self.trace_item_stack(context));
40021 let embed_content_list_1_built = Vec::new();
40022 self.push(
40023 ASTType::EmbedContentList(embed_content_list_1_built),
40024 context,
40025 );
40026 Ok(())
40027 }
40028
40029 #[parol_runtime::function_name::named]
40034 fn embed_scoped_identifier(
40035 &mut self,
40036 _escaped_l_brace: &ParseTreeType<'t>,
40037 _scoped_identifier: &ParseTreeType<'t>,
40038 _escaped_r_brace: &ParseTreeType<'t>,
40039 ) -> Result<()> {
40040 let context = function_name!();
40041 trace!("{}", self.trace_item_stack(context));
40042 let escaped_r_brace = pop_item!(self, escaped_r_brace, EscapedRBrace, context);
40043 let scoped_identifier = pop_item!(self, scoped_identifier, ScopedIdentifier, context);
40044 let escaped_l_brace = pop_item!(self, escaped_l_brace, EscapedLBrace, context);
40045 let embed_scoped_identifier_built = EmbedScopedIdentifier {
40046 escaped_l_brace: Box::new(escaped_l_brace),
40047 scoped_identifier: Box::new(scoped_identifier),
40048 escaped_r_brace: Box::new(escaped_r_brace),
40049 };
40050 self.user_grammar
40052 .embed_scoped_identifier(&embed_scoped_identifier_built)?;
40053 self.push(
40054 ASTType::EmbedScopedIdentifier(embed_scoped_identifier_built),
40055 context,
40056 );
40057 Ok(())
40058 }
40059
40060 #[parol_runtime::function_name::named]
40065 fn embed_item_0(
40066 &mut self,
40067 _embed_l_brace: &ParseTreeType<'t>,
40068 _embed_item_list: &ParseTreeType<'t>,
40069 _embed_r_brace: &ParseTreeType<'t>,
40070 ) -> Result<()> {
40071 let context = function_name!();
40072 trace!("{}", self.trace_item_stack(context));
40073 let embed_r_brace = pop_item!(self, embed_r_brace, EmbedRBrace, context);
40074 let embed_item_list = pop_and_reverse_item!(self, embed_item_list, EmbedItemList, context);
40075 let embed_l_brace = pop_item!(self, embed_l_brace, EmbedLBrace, context);
40076 let embed_item_0_built = EmbedItemEmbedLBraceEmbedItemListEmbedRBrace {
40077 embed_l_brace: Box::new(embed_l_brace),
40078 embed_item_list,
40079 embed_r_brace: Box::new(embed_r_brace),
40080 };
40081 let embed_item_0_built = EmbedItem::EmbedLBraceEmbedItemListEmbedRBrace(embed_item_0_built);
40082 self.user_grammar.embed_item(&embed_item_0_built)?;
40084 self.push(ASTType::EmbedItem(embed_item_0_built), context);
40085 Ok(())
40086 }
40087
40088 #[parol_runtime::function_name::named]
40093 fn embed_item_list_0(
40094 &mut self,
40095 _embed_item: &ParseTreeType<'t>,
40096 _embed_item_list: &ParseTreeType<'t>,
40097 ) -> Result<()> {
40098 let context = function_name!();
40099 trace!("{}", self.trace_item_stack(context));
40100 let mut embed_item_list = pop_item!(self, embed_item_list, EmbedItemList, context);
40101 let embed_item = pop_item!(self, embed_item, EmbedItem, context);
40102 let embed_item_list_0_built = EmbedItemList {
40103 embed_item: Box::new(embed_item),
40104 };
40105 embed_item_list.push(embed_item_list_0_built);
40107 self.push(ASTType::EmbedItemList(embed_item_list), context);
40108 Ok(())
40109 }
40110
40111 #[parol_runtime::function_name::named]
40116 fn embed_item_list_1(&mut self) -> Result<()> {
40117 let context = function_name!();
40118 trace!("{}", self.trace_item_stack(context));
40119 let embed_item_list_1_built = Vec::new();
40120 self.push(ASTType::EmbedItemList(embed_item_list_1_built), context);
40121 Ok(())
40122 }
40123
40124 #[parol_runtime::function_name::named]
40129 fn embed_item_1(&mut self, _embed_scoped_identifier: &ParseTreeType<'t>) -> Result<()> {
40130 let context = function_name!();
40131 trace!("{}", self.trace_item_stack(context));
40132 let embed_scoped_identifier = pop_item!(
40133 self,
40134 embed_scoped_identifier,
40135 EmbedScopedIdentifier,
40136 context
40137 );
40138 let embed_item_1_built = EmbedItemEmbedScopedIdentifier {
40139 embed_scoped_identifier: Box::new(embed_scoped_identifier),
40140 };
40141 let embed_item_1_built = EmbedItem::EmbedScopedIdentifier(embed_item_1_built);
40142 self.user_grammar.embed_item(&embed_item_1_built)?;
40144 self.push(ASTType::EmbedItem(embed_item_1_built), context);
40145 Ok(())
40146 }
40147
40148 #[parol_runtime::function_name::named]
40153 fn embed_item_2(&mut self, _any: &ParseTreeType<'t>) -> Result<()> {
40154 let context = function_name!();
40155 trace!("{}", self.trace_item_stack(context));
40156 let any = pop_item!(self, any, Any, context);
40157 let embed_item_2_built = EmbedItemAny { any: Box::new(any) };
40158 let embed_item_2_built = EmbedItem::Any(embed_item_2_built);
40159 self.user_grammar.embed_item(&embed_item_2_built)?;
40161 self.push(ASTType::EmbedItem(embed_item_2_built), context);
40162 Ok(())
40163 }
40164
40165 #[parol_runtime::function_name::named]
40170 fn include_declaration(
40171 &mut self,
40172 _include: &ParseTreeType<'t>,
40173 _l_paren: &ParseTreeType<'t>,
40174 _identifier: &ParseTreeType<'t>,
40175 _comma: &ParseTreeType<'t>,
40176 _string_literal: &ParseTreeType<'t>,
40177 _r_paren: &ParseTreeType<'t>,
40178 _semicolon: &ParseTreeType<'t>,
40179 ) -> Result<()> {
40180 let context = function_name!();
40181 trace!("{}", self.trace_item_stack(context));
40182 let semicolon = pop_item!(self, semicolon, Semicolon, context);
40183 let r_paren = pop_item!(self, r_paren, RParen, context);
40184 let string_literal = pop_item!(self, string_literal, StringLiteral, context);
40185 let comma = pop_item!(self, comma, Comma, context);
40186 let identifier = pop_item!(self, identifier, Identifier, context);
40187 let l_paren = pop_item!(self, l_paren, LParen, context);
40188 let include = pop_item!(self, include, Include, context);
40189 let include_declaration_built = IncludeDeclaration {
40190 include: Box::new(include),
40191 l_paren: Box::new(l_paren),
40192 identifier: Box::new(identifier),
40193 comma: Box::new(comma),
40194 string_literal: Box::new(string_literal),
40195 r_paren: Box::new(r_paren),
40196 semicolon: Box::new(semicolon),
40197 };
40198 self.user_grammar
40200 .include_declaration(&include_declaration_built)?;
40201 self.push(
40202 ASTType::IncludeDeclaration(include_declaration_built),
40203 context,
40204 );
40205 Ok(())
40206 }
40207
40208 #[parol_runtime::function_name::named]
40213 fn description_group(
40214 &mut self,
40215 _description_group_list: &ParseTreeType<'t>,
40216 _description_group_group: &ParseTreeType<'t>,
40217 ) -> Result<()> {
40218 let context = function_name!();
40219 trace!("{}", self.trace_item_stack(context));
40220 let description_group_group = pop_item!(
40221 self,
40222 description_group_group,
40223 DescriptionGroupGroup,
40224 context
40225 );
40226 let description_group_list =
40227 pop_and_reverse_item!(self, description_group_list, DescriptionGroupList, context);
40228 let description_group_built = DescriptionGroup {
40229 description_group_list,
40230 description_group_group: Box::new(description_group_group),
40231 };
40232 self.user_grammar
40234 .description_group(&description_group_built)?;
40235 self.push(ASTType::DescriptionGroup(description_group_built), context);
40236 Ok(())
40237 }
40238
40239 #[parol_runtime::function_name::named]
40244 fn description_group_group_0(
40245 &mut self,
40246 _l_brace: &ParseTreeType<'t>,
40247 _description_group_group_list: &ParseTreeType<'t>,
40248 _r_brace: &ParseTreeType<'t>,
40249 ) -> Result<()> {
40250 let context = function_name!();
40251 trace!("{}", self.trace_item_stack(context));
40252 let r_brace = pop_item!(self, r_brace, RBrace, context);
40253 let description_group_group_list = pop_and_reverse_item!(
40254 self,
40255 description_group_group_list,
40256 DescriptionGroupGroupList,
40257 context
40258 );
40259 let l_brace = pop_item!(self, l_brace, LBrace, context);
40260 let description_group_group_0_built =
40261 DescriptionGroupGroupLBraceDescriptionGroupGroupListRBrace {
40262 l_brace: Box::new(l_brace),
40263 description_group_group_list,
40264 r_brace: Box::new(r_brace),
40265 };
40266 let description_group_group_0_built =
40267 DescriptionGroupGroup::LBraceDescriptionGroupGroupListRBrace(
40268 description_group_group_0_built,
40269 );
40270 self.push(
40271 ASTType::DescriptionGroupGroup(description_group_group_0_built),
40272 context,
40273 );
40274 Ok(())
40275 }
40276
40277 #[parol_runtime::function_name::named]
40282 fn description_group_group_list_0(
40283 &mut self,
40284 _description_group: &ParseTreeType<'t>,
40285 _description_group_group_list: &ParseTreeType<'t>,
40286 ) -> Result<()> {
40287 let context = function_name!();
40288 trace!("{}", self.trace_item_stack(context));
40289 let mut description_group_group_list = pop_item!(
40290 self,
40291 description_group_group_list,
40292 DescriptionGroupGroupList,
40293 context
40294 );
40295 let description_group = pop_item!(self, description_group, DescriptionGroup, context);
40296 let description_group_group_list_0_built = DescriptionGroupGroupList {
40297 description_group: Box::new(description_group),
40298 };
40299 description_group_group_list.push(description_group_group_list_0_built);
40301 self.push(
40302 ASTType::DescriptionGroupGroupList(description_group_group_list),
40303 context,
40304 );
40305 Ok(())
40306 }
40307
40308 #[parol_runtime::function_name::named]
40313 fn description_group_group_list_1(&mut self) -> Result<()> {
40314 let context = function_name!();
40315 trace!("{}", self.trace_item_stack(context));
40316 let description_group_group_list_1_built = Vec::new();
40317 self.push(
40318 ASTType::DescriptionGroupGroupList(description_group_group_list_1_built),
40319 context,
40320 );
40321 Ok(())
40322 }
40323
40324 #[parol_runtime::function_name::named]
40329 fn description_group_group_1(&mut self, _description_item: &ParseTreeType<'t>) -> Result<()> {
40330 let context = function_name!();
40331 trace!("{}", self.trace_item_stack(context));
40332 let description_item = pop_item!(self, description_item, DescriptionItem, context);
40333 let description_group_group_1_built = DescriptionGroupGroupDescriptionItem {
40334 description_item: Box::new(description_item),
40335 };
40336 let description_group_group_1_built =
40337 DescriptionGroupGroup::DescriptionItem(description_group_group_1_built);
40338 self.push(
40339 ASTType::DescriptionGroupGroup(description_group_group_1_built),
40340 context,
40341 );
40342 Ok(())
40343 }
40344
40345 #[parol_runtime::function_name::named]
40350 fn description_group_list_0(
40351 &mut self,
40352 _attribute: &ParseTreeType<'t>,
40353 _description_group_list: &ParseTreeType<'t>,
40354 ) -> Result<()> {
40355 let context = function_name!();
40356 trace!("{}", self.trace_item_stack(context));
40357 let mut description_group_list =
40358 pop_item!(self, description_group_list, DescriptionGroupList, context);
40359 let attribute = pop_item!(self, attribute, Attribute, context);
40360 let description_group_list_0_built = DescriptionGroupList {
40361 attribute: Box::new(attribute),
40362 };
40363 description_group_list.push(description_group_list_0_built);
40365 self.push(
40366 ASTType::DescriptionGroupList(description_group_list),
40367 context,
40368 );
40369 Ok(())
40370 }
40371
40372 #[parol_runtime::function_name::named]
40377 fn description_group_list_1(&mut self) -> Result<()> {
40378 let context = function_name!();
40379 trace!("{}", self.trace_item_stack(context));
40380 let description_group_list_1_built = Vec::new();
40381 self.push(
40382 ASTType::DescriptionGroupList(description_group_list_1_built),
40383 context,
40384 );
40385 Ok(())
40386 }
40387
40388 #[parol_runtime::function_name::named]
40393 fn description_item_0(
40394 &mut self,
40395 _description_item_opt: &ParseTreeType<'t>,
40396 _public_description_item: &ParseTreeType<'t>,
40397 ) -> Result<()> {
40398 let context = function_name!();
40399 trace!("{}", self.trace_item_stack(context));
40400 let public_description_item = pop_item!(
40401 self,
40402 public_description_item,
40403 PublicDescriptionItem,
40404 context
40405 );
40406 let description_item_opt =
40407 pop_item!(self, description_item_opt, DescriptionItemOpt, context);
40408 let description_item_0_built = DescriptionItemDescriptionItemOptPublicDescriptionItem {
40409 description_item_opt,
40410 public_description_item: Box::new(public_description_item),
40411 };
40412 let description_item_0_built =
40413 DescriptionItem::DescriptionItemOptPublicDescriptionItem(description_item_0_built);
40414 self.user_grammar
40416 .description_item(&description_item_0_built)?;
40417 self.push(ASTType::DescriptionItem(description_item_0_built), context);
40418 Ok(())
40419 }
40420
40421 #[parol_runtime::function_name::named]
40426 fn description_item_1(&mut self, _import_declaration: &ParseTreeType<'t>) -> Result<()> {
40427 let context = function_name!();
40428 trace!("{}", self.trace_item_stack(context));
40429 let import_declaration = pop_item!(self, import_declaration, ImportDeclaration, context);
40430 let description_item_1_built = DescriptionItemImportDeclaration {
40431 import_declaration: Box::new(import_declaration),
40432 };
40433 let description_item_1_built = DescriptionItem::ImportDeclaration(description_item_1_built);
40434 self.user_grammar
40436 .description_item(&description_item_1_built)?;
40437 self.push(ASTType::DescriptionItem(description_item_1_built), context);
40438 Ok(())
40439 }
40440
40441 #[parol_runtime::function_name::named]
40446 fn description_item_2(&mut self, _bind_declaration: &ParseTreeType<'t>) -> Result<()> {
40447 let context = function_name!();
40448 trace!("{}", self.trace_item_stack(context));
40449 let bind_declaration = pop_item!(self, bind_declaration, BindDeclaration, context);
40450 let description_item_2_built = DescriptionItemBindDeclaration {
40451 bind_declaration: Box::new(bind_declaration),
40452 };
40453 let description_item_2_built = DescriptionItem::BindDeclaration(description_item_2_built);
40454 self.user_grammar
40456 .description_item(&description_item_2_built)?;
40457 self.push(ASTType::DescriptionItem(description_item_2_built), context);
40458 Ok(())
40459 }
40460
40461 #[parol_runtime::function_name::named]
40466 fn description_item_3(&mut self, _embed_declaration: &ParseTreeType<'t>) -> Result<()> {
40467 let context = function_name!();
40468 trace!("{}", self.trace_item_stack(context));
40469 let embed_declaration = pop_item!(self, embed_declaration, EmbedDeclaration, context);
40470 let description_item_3_built = DescriptionItemEmbedDeclaration {
40471 embed_declaration: Box::new(embed_declaration),
40472 };
40473 let description_item_3_built = DescriptionItem::EmbedDeclaration(description_item_3_built);
40474 self.user_grammar
40476 .description_item(&description_item_3_built)?;
40477 self.push(ASTType::DescriptionItem(description_item_3_built), context);
40478 Ok(())
40479 }
40480
40481 #[parol_runtime::function_name::named]
40486 fn description_item_4(&mut self, _include_declaration: &ParseTreeType<'t>) -> Result<()> {
40487 let context = function_name!();
40488 trace!("{}", self.trace_item_stack(context));
40489 let include_declaration = pop_item!(self, include_declaration, IncludeDeclaration, context);
40490 let description_item_4_built = DescriptionItemIncludeDeclaration {
40491 include_declaration: Box::new(include_declaration),
40492 };
40493 let description_item_4_built =
40494 DescriptionItem::IncludeDeclaration(description_item_4_built);
40495 self.user_grammar
40497 .description_item(&description_item_4_built)?;
40498 self.push(ASTType::DescriptionItem(description_item_4_built), context);
40499 Ok(())
40500 }
40501
40502 #[parol_runtime::function_name::named]
40507 fn description_item_opt_0(&mut self, _pub: &ParseTreeType<'t>) -> Result<()> {
40508 let context = function_name!();
40509 trace!("{}", self.trace_item_stack(context));
40510 let r#pub = pop_item!(self, r#pub, Pub, context);
40511 let description_item_opt_0_built = DescriptionItemOpt {
40512 r#pub: Box::new(r#pub),
40513 };
40514 self.push(
40515 ASTType::DescriptionItemOpt(Some(description_item_opt_0_built)),
40516 context,
40517 );
40518 Ok(())
40519 }
40520
40521 #[parol_runtime::function_name::named]
40526 fn description_item_opt_1(&mut self) -> Result<()> {
40527 let context = function_name!();
40528 trace!("{}", self.trace_item_stack(context));
40529 self.push(ASTType::DescriptionItemOpt(None), context);
40530 Ok(())
40531 }
40532
40533 #[parol_runtime::function_name::named]
40538 fn public_description_item_0(&mut self, _module_declaration: &ParseTreeType<'t>) -> Result<()> {
40539 let context = function_name!();
40540 trace!("{}", self.trace_item_stack(context));
40541 let module_declaration = pop_item!(self, module_declaration, ModuleDeclaration, context);
40542 let public_description_item_0_built = PublicDescriptionItemModuleDeclaration {
40543 module_declaration: Box::new(module_declaration),
40544 };
40545 let public_description_item_0_built =
40546 PublicDescriptionItem::ModuleDeclaration(public_description_item_0_built);
40547 self.user_grammar
40549 .public_description_item(&public_description_item_0_built)?;
40550 self.push(
40551 ASTType::PublicDescriptionItem(public_description_item_0_built),
40552 context,
40553 );
40554 Ok(())
40555 }
40556
40557 #[parol_runtime::function_name::named]
40562 fn public_description_item_1(
40563 &mut self,
40564 _interface_declaration: &ParseTreeType<'t>,
40565 ) -> Result<()> {
40566 let context = function_name!();
40567 trace!("{}", self.trace_item_stack(context));
40568 let interface_declaration =
40569 pop_item!(self, interface_declaration, InterfaceDeclaration, context);
40570 let public_description_item_1_built = PublicDescriptionItemInterfaceDeclaration {
40571 interface_declaration: Box::new(interface_declaration),
40572 };
40573 let public_description_item_1_built =
40574 PublicDescriptionItem::InterfaceDeclaration(public_description_item_1_built);
40575 self.user_grammar
40577 .public_description_item(&public_description_item_1_built)?;
40578 self.push(
40579 ASTType::PublicDescriptionItem(public_description_item_1_built),
40580 context,
40581 );
40582 Ok(())
40583 }
40584
40585 #[parol_runtime::function_name::named]
40590 fn public_description_item_2(
40591 &mut self,
40592 _package_declaration: &ParseTreeType<'t>,
40593 ) -> Result<()> {
40594 let context = function_name!();
40595 trace!("{}", self.trace_item_stack(context));
40596 let package_declaration = pop_item!(self, package_declaration, PackageDeclaration, context);
40597 let public_description_item_2_built = PublicDescriptionItemPackageDeclaration {
40598 package_declaration: Box::new(package_declaration),
40599 };
40600 let public_description_item_2_built =
40601 PublicDescriptionItem::PackageDeclaration(public_description_item_2_built);
40602 self.user_grammar
40604 .public_description_item(&public_description_item_2_built)?;
40605 self.push(
40606 ASTType::PublicDescriptionItem(public_description_item_2_built),
40607 context,
40608 );
40609 Ok(())
40610 }
40611
40612 #[parol_runtime::function_name::named]
40617 fn public_description_item_3(&mut self, _alias_declaration: &ParseTreeType<'t>) -> Result<()> {
40618 let context = function_name!();
40619 trace!("{}", self.trace_item_stack(context));
40620 let alias_declaration = pop_item!(self, alias_declaration, AliasDeclaration, context);
40621 let public_description_item_3_built = PublicDescriptionItemAliasDeclaration {
40622 alias_declaration: Box::new(alias_declaration),
40623 };
40624 let public_description_item_3_built =
40625 PublicDescriptionItem::AliasDeclaration(public_description_item_3_built);
40626 self.user_grammar
40628 .public_description_item(&public_description_item_3_built)?;
40629 self.push(
40630 ASTType::PublicDescriptionItem(public_description_item_3_built),
40631 context,
40632 );
40633 Ok(())
40634 }
40635
40636 #[parol_runtime::function_name::named]
40641 fn public_description_item_4(&mut self, _proto_declaration: &ParseTreeType<'t>) -> Result<()> {
40642 let context = function_name!();
40643 trace!("{}", self.trace_item_stack(context));
40644 let proto_declaration = pop_item!(self, proto_declaration, ProtoDeclaration, context);
40645 let public_description_item_4_built = PublicDescriptionItemProtoDeclaration {
40646 proto_declaration: Box::new(proto_declaration),
40647 };
40648 let public_description_item_4_built =
40649 PublicDescriptionItem::ProtoDeclaration(public_description_item_4_built);
40650 self.user_grammar
40652 .public_description_item(&public_description_item_4_built)?;
40653 self.push(
40654 ASTType::PublicDescriptionItem(public_description_item_4_built),
40655 context,
40656 );
40657 Ok(())
40658 }
40659
40660 #[parol_runtime::function_name::named]
40665 fn public_description_item_5(
40666 &mut self,
40667 _function_declaration: &ParseTreeType<'t>,
40668 ) -> Result<()> {
40669 let context = function_name!();
40670 trace!("{}", self.trace_item_stack(context));
40671 let function_declaration =
40672 pop_item!(self, function_declaration, FunctionDeclaration, context);
40673 let public_description_item_5_built = PublicDescriptionItemFunctionDeclaration {
40674 function_declaration: Box::new(function_declaration),
40675 };
40676 let public_description_item_5_built =
40677 PublicDescriptionItem::FunctionDeclaration(public_description_item_5_built);
40678 self.user_grammar
40680 .public_description_item(&public_description_item_5_built)?;
40681 self.push(
40682 ASTType::PublicDescriptionItem(public_description_item_5_built),
40683 context,
40684 );
40685 Ok(())
40686 }
40687
40688 #[parol_runtime::function_name::named]
40693 fn veryl(&mut self, _start: &ParseTreeType<'t>, _veryl_list: &ParseTreeType<'t>) -> Result<()> {
40694 let context = function_name!();
40695 trace!("{}", self.trace_item_stack(context));
40696 let veryl_list = pop_and_reverse_item!(self, veryl_list, VerylList, context);
40697 let start = pop_item!(self, start, Start, context);
40698 let veryl_built = Veryl {
40699 start: Box::new(start),
40700 veryl_list,
40701 };
40702 self.user_grammar.veryl(&veryl_built)?;
40704 self.push(ASTType::Veryl(veryl_built), context);
40705 Ok(())
40706 }
40707
40708 #[parol_runtime::function_name::named]
40713 fn veryl_list_0(
40714 &mut self,
40715 _description_group: &ParseTreeType<'t>,
40716 _veryl_list: &ParseTreeType<'t>,
40717 ) -> Result<()> {
40718 let context = function_name!();
40719 trace!("{}", self.trace_item_stack(context));
40720 let mut veryl_list = pop_item!(self, veryl_list, VerylList, context);
40721 let description_group = pop_item!(self, description_group, DescriptionGroup, context);
40722 let veryl_list_0_built = VerylList {
40723 description_group: Box::new(description_group),
40724 };
40725 veryl_list.push(veryl_list_0_built);
40727 self.push(ASTType::VerylList(veryl_list), context);
40728 Ok(())
40729 }
40730
40731 #[parol_runtime::function_name::named]
40736 fn veryl_list_1(&mut self) -> Result<()> {
40737 let context = function_name!();
40738 trace!("{}", self.trace_item_stack(context));
40739 let veryl_list_1_built = Vec::new();
40740 self.push(ASTType::VerylList(veryl_list_1_built), context);
40741 Ok(())
40742 }
40743}
40744
40745impl<'t> UserActionsTrait<'t> for VerylGrammarAuto<'t, '_> {
40746 fn call_semantic_action_for_production_number(
40750 &mut self,
40751 prod_num: usize,
40752 children: &[ParseTreeType<'t>],
40753 ) -> Result<()> {
40754 match prod_num {
40755 0 => self.comments_term(&children[0]),
40756 1 => self.string_literal_term(&children[0]),
40757 2 => self.exponent_term(&children[0]),
40758 3 => self.fixed_point_term(&children[0]),
40759 4 => self.based_term(&children[0]),
40760 5 => self.all_bit_term(&children[0]),
40761 6 => self.base_less_term(&children[0]),
40762 7 => self.minus_colon_term(&children[0]),
40763 8 => self.minus_g_t_term(&children[0]),
40764 9 => self.l_t_minus_term(&children[0]),
40765 10 => self.plus_colon_term(&children[0]),
40766 11 => self.assignment_operator_term(&children[0]),
40767 12 => self.diamond_operator_term(&children[0]),
40768 13 => self.operator08_term(&children[0]),
40769 14 => self.operator07_term(&children[0]),
40770 15 => self.operator06_term(&children[0]),
40771 16 => self.operator02_term(&children[0]),
40772 17 => self.operator01_term(&children[0]),
40773 18 => self.operator05_term(&children[0]),
40774 19 => self.operator04_term(&children[0]),
40775 20 => self.operator03_term(&children[0]),
40776 21 => self.unary_operator_term(&children[0]),
40777 22 => self.colon_colon_l_angle_term(&children[0]),
40778 23 => self.colon_colon_term(&children[0]),
40779 24 => self.colon_term(&children[0]),
40780 25 => self.comma_term(&children[0]),
40781 26 => self.dot_dot_equ_term(&children[0]),
40782 27 => self.dot_dot_term(&children[0]),
40783 28 => self.dot_term(&children[0]),
40784 29 => self.equ_term(&children[0]),
40785 30 => self.hash_l_bracket_term(&children[0]),
40786 31 => self.hash_term(&children[0]),
40787 32 => self.l_angle_term(&children[0]),
40788 33 => self.question_term(&children[0]),
40789 34 => self.quote_l_brace_term(&children[0]),
40790 35 => self.quote_term(&children[0]),
40791 36 => self.escaped_l_brace_term(&children[0]),
40792 37 => self.triple_l_brace_term(&children[0]),
40793 38 => self.l_brace_term(&children[0]),
40794 39 => self.l_bracket_term(&children[0]),
40795 40 => self.l_paren_term(&children[0]),
40796 41 => self.r_angle_term(&children[0]),
40797 42 => self.escaped_r_brace_term(&children[0]),
40798 43 => self.triple_r_brace_term(&children[0]),
40799 44 => self.r_brace_term(&children[0]),
40800 45 => self.r_bracket_term(&children[0]),
40801 46 => self.r_paren_term(&children[0]),
40802 47 => self.semicolon_term(&children[0]),
40803 48 => self.star_term(&children[0]),
40804 49 => self.alias_term(&children[0]),
40805 50 => self.always_comb_term(&children[0]),
40806 51 => self.always_ff_term(&children[0]),
40807 52 => self.assign_term(&children[0]),
40808 53 => self.as_term(&children[0]),
40809 54 => self.bind_term(&children[0]),
40810 55 => self.bit_term(&children[0]),
40811 56 => self.block_term(&children[0]),
40812 57 => self.b_bool_term(&children[0]),
40813 58 => self.l_bool_term(&children[0]),
40814 59 => self.case_term(&children[0]),
40815 60 => self.clock_term(&children[0]),
40816 61 => self.clock_posedge_term(&children[0]),
40817 62 => self.clock_negedge_term(&children[0]),
40818 63 => self.connect_term(&children[0]),
40819 64 => self.const_term(&children[0]),
40820 65 => self.converse_term(&children[0]),
40821 66 => self.default_term(&children[0]),
40822 67 => self.else_term(&children[0]),
40823 68 => self.embed_term(&children[0]),
40824 69 => self.enum_term(&children[0]),
40825 70 => self.f32_term(&children[0]),
40826 71 => self.f64_term(&children[0]),
40827 72 => self.false_term(&children[0]),
40828 73 => self.final_term(&children[0]),
40829 74 => self.for_term(&children[0]),
40830 75 => self.function_term(&children[0]),
40831 76 => self.i8_term(&children[0]),
40832 77 => self.i16_term(&children[0]),
40833 78 => self.i32_term(&children[0]),
40834 79 => self.i64_term(&children[0]),
40835 80 => self.if_reset_term(&children[0]),
40836 81 => self.if_term(&children[0]),
40837 82 => self.import_term(&children[0]),
40838 83 => self.include_term(&children[0]),
40839 84 => self.initial_term(&children[0]),
40840 85 => self.inout_term(&children[0]),
40841 86 => self.input_term(&children[0]),
40842 87 => self.inside_term(&children[0]),
40843 88 => self.inst_term(&children[0]),
40844 89 => self.interface_term(&children[0]),
40845 90 => self.in_term(&children[0]),
40846 91 => self.let_term(&children[0]),
40847 92 => self.logic_term(&children[0]),
40848 93 => self.lsb_term(&children[0]),
40849 94 => self.modport_term(&children[0]),
40850 95 => self.module_term(&children[0]),
40851 96 => self.msb_term(&children[0]),
40852 97 => self.output_term(&children[0]),
40853 98 => self.outside_term(&children[0]),
40854 99 => self.package_term(&children[0]),
40855 100 => self.param_term(&children[0]),
40856 101 => self.proto_term(&children[0]),
40857 102 => self.pub_term(&children[0]),
40858 103 => self.repeat_term(&children[0]),
40859 104 => self.reset_term(&children[0]),
40860 105 => self.reset_async_high_term(&children[0]),
40861 106 => self.reset_async_low_term(&children[0]),
40862 107 => self.reset_sync_high_term(&children[0]),
40863 108 => self.reset_sync_low_term(&children[0]),
40864 109 => self.return_term(&children[0]),
40865 110 => self.rev_term(&children[0]),
40866 111 => self.break_term(&children[0]),
40867 112 => self.same_term(&children[0]),
40868 113 => self.signed_term(&children[0]),
40869 114 => self.step_term(&children[0]),
40870 115 => self.string_term(&children[0]),
40871 116 => self.struct_term(&children[0]),
40872 117 => self.switch_term(&children[0]),
40873 118 => self.tri_term(&children[0]),
40874 119 => self.true_term(&children[0]),
40875 120 => self.type_term(&children[0]),
40876 121 => self.p8_term(&children[0]),
40877 122 => self.p16_term(&children[0]),
40878 123 => self.p32_term(&children[0]),
40879 124 => self.p64_term(&children[0]),
40880 125 => self.u8_term(&children[0]),
40881 126 => self.u16_term(&children[0]),
40882 127 => self.u32_term(&children[0]),
40883 128 => self.u64_term(&children[0]),
40884 129 => self.union_term(&children[0]),
40885 130 => self.unsafe_term(&children[0]),
40886 131 => self.var_term(&children[0]),
40887 132 => self.dollar_identifier_term(&children[0]),
40888 133 => self.identifier_term(&children[0]),
40889 134 => self.any_term(&children[0]),
40890 135 => self.comments(&children[0]),
40891 136 => self.comments_opt_0(&children[0]),
40892 137 => self.comments_opt_1(),
40893 138 => self.start_token(&children[0]),
40894 139 => self.string_literal_token(&children[0], &children[1]),
40895 140 => self.exponent_token(&children[0], &children[1]),
40896 141 => self.fixed_point_token(&children[0], &children[1]),
40897 142 => self.based_token(&children[0], &children[1]),
40898 143 => self.base_less_token(&children[0], &children[1]),
40899 144 => self.all_bit_token(&children[0], &children[1]),
40900 145 => self.assignment_operator_token(&children[0], &children[1]),
40901 146 => self.diamond_operator_token(&children[0], &children[1]),
40902 147 => self.operator01_token(&children[0], &children[1]),
40903 148 => self.operator02_token(&children[0], &children[1]),
40904 149 => self.operator03_token(&children[0], &children[1]),
40905 150 => self.operator04_token(&children[0], &children[1]),
40906 151 => self.operator05_token(&children[0], &children[1]),
40907 152 => self.operator06_token(&children[0], &children[1]),
40908 153 => self.operator07_token(&children[0], &children[1]),
40909 154 => self.operator08_token(&children[0], &children[1]),
40910 155 => self.unary_operator_token(&children[0], &children[1]),
40911 156 => self.colon_token(&children[0], &children[1]),
40912 157 => self.colon_colon_l_angle_token(&children[0], &children[1]),
40913 158 => self.colon_colon_token(&children[0], &children[1]),
40914 159 => self.comma_token(&children[0], &children[1]),
40915 160 => self.dot_dot_token(&children[0], &children[1]),
40916 161 => self.dot_dot_equ_token(&children[0], &children[1]),
40917 162 => self.dot_token(&children[0], &children[1]),
40918 163 => self.equ_token(&children[0], &children[1]),
40919 164 => self.hash_l_bracket_token(&children[0], &children[1]),
40920 165 => self.hash_token(&children[0], &children[1]),
40921 166 => self.question_token(&children[0], &children[1]),
40922 167 => self.quote_l_brace_token(&children[0], &children[1]),
40923 168 => self.quote_token(&children[0], &children[1]),
40924 169 => self.l_angle_token(&children[0], &children[1]),
40925 170 => self.embed_l_brace_token(&children[0]),
40926 171 => self.escaped_l_brace_token(&children[0]),
40927 172 => self.triple_l_brace_token(&children[0]),
40928 173 => self.l_brace_token(&children[0], &children[1]),
40929 174 => self.l_bracket_token(&children[0], &children[1]),
40930 175 => self.l_paren_token(&children[0], &children[1]),
40931 176 => self.l_t_minus_token(&children[0], &children[1]),
40932 177 => self.minus_colon_token(&children[0], &children[1]),
40933 178 => self.minus_g_t_token(&children[0], &children[1]),
40934 179 => self.plus_colon_token(&children[0], &children[1]),
40935 180 => self.r_angle_token(&children[0], &children[1]),
40936 181 => self.embed_r_brace_token(&children[0]),
40937 182 => self.escaped_r_brace_token(&children[0]),
40938 183 => self.triple_r_brace_token(&children[0], &children[1]),
40939 184 => self.r_brace_token(&children[0], &children[1]),
40940 185 => self.r_bracket_token(&children[0], &children[1]),
40941 186 => self.r_paren_token(&children[0], &children[1]),
40942 187 => self.semicolon_token(&children[0], &children[1]),
40943 188 => self.star_token(&children[0], &children[1]),
40944 189 => self.alias_token(&children[0], &children[1]),
40945 190 => self.always_comb_token(&children[0], &children[1]),
40946 191 => self.always_ff_token(&children[0], &children[1]),
40947 192 => self.as_token(&children[0], &children[1]),
40948 193 => self.assign_token(&children[0], &children[1]),
40949 194 => self.bind_token(&children[0], &children[1]),
40950 195 => self.bit_token(&children[0], &children[1]),
40951 196 => self.block_token(&children[0], &children[1]),
40952 197 => self.b_bool_token(&children[0], &children[1]),
40953 198 => self.l_bool_token(&children[0], &children[1]),
40954 199 => self.case_token(&children[0], &children[1]),
40955 200 => self.clock_token(&children[0], &children[1]),
40956 201 => self.clock_posedge_token(&children[0], &children[1]),
40957 202 => self.clock_negedge_token(&children[0], &children[1]),
40958 203 => self.connect_token(&children[0], &children[1]),
40959 204 => self.const_token(&children[0], &children[1]),
40960 205 => self.converse_token(&children[0], &children[1]),
40961 206 => self.default_token(&children[0], &children[1]),
40962 207 => self.else_token(&children[0], &children[1]),
40963 208 => self.embed_token(&children[0], &children[1]),
40964 209 => self.enum_token(&children[0], &children[1]),
40965 210 => self.f32_token(&children[0], &children[1]),
40966 211 => self.f64_token(&children[0], &children[1]),
40967 212 => self.false_token(&children[0], &children[1]),
40968 213 => self.final_token(&children[0], &children[1]),
40969 214 => self.for_token(&children[0], &children[1]),
40970 215 => self.function_token(&children[0], &children[1]),
40971 216 => self.i8_token(&children[0], &children[1]),
40972 217 => self.i16_token(&children[0], &children[1]),
40973 218 => self.i32_token(&children[0], &children[1]),
40974 219 => self.i64_token(&children[0], &children[1]),
40975 220 => self.if_reset_token(&children[0], &children[1]),
40976 221 => self.if_token(&children[0], &children[1]),
40977 222 => self.import_token(&children[0], &children[1]),
40978 223 => self.include_token(&children[0], &children[1]),
40979 224 => self.initial_token(&children[0], &children[1]),
40980 225 => self.inout_token(&children[0], &children[1]),
40981 226 => self.input_token(&children[0], &children[1]),
40982 227 => self.inside_token(&children[0], &children[1]),
40983 228 => self.inst_token(&children[0], &children[1]),
40984 229 => self.interface_token(&children[0], &children[1]),
40985 230 => self.in_token(&children[0], &children[1]),
40986 231 => self.let_token(&children[0], &children[1]),
40987 232 => self.logic_token(&children[0], &children[1]),
40988 233 => self.lsb_token(&children[0], &children[1]),
40989 234 => self.modport_token(&children[0], &children[1]),
40990 235 => self.module_token(&children[0], &children[1]),
40991 236 => self.msb_token(&children[0], &children[1]),
40992 237 => self.output_token(&children[0], &children[1]),
40993 238 => self.outside_token(&children[0], &children[1]),
40994 239 => self.package_token(&children[0], &children[1]),
40995 240 => self.param_token(&children[0], &children[1]),
40996 241 => self.proto_token(&children[0], &children[1]),
40997 242 => self.pub_token(&children[0], &children[1]),
40998 243 => self.repeat_token(&children[0], &children[1]),
40999 244 => self.reset_token(&children[0], &children[1]),
41000 245 => self.reset_async_high_token(&children[0], &children[1]),
41001 246 => self.reset_async_low_token(&children[0], &children[1]),
41002 247 => self.reset_sync_high_token(&children[0], &children[1]),
41003 248 => self.reset_sync_low_token(&children[0], &children[1]),
41004 249 => self.return_token(&children[0], &children[1]),
41005 250 => self.rev_token(&children[0], &children[1]),
41006 251 => self.break_token(&children[0], &children[1]),
41007 252 => self.same_token(&children[0], &children[1]),
41008 253 => self.signed_token(&children[0], &children[1]),
41009 254 => self.step_token(&children[0], &children[1]),
41010 255 => self.string_token(&children[0], &children[1]),
41011 256 => self.struct_token(&children[0], &children[1]),
41012 257 => self.switch_token(&children[0], &children[1]),
41013 258 => self.tri_token(&children[0], &children[1]),
41014 259 => self.true_token(&children[0], &children[1]),
41015 260 => self.type_token(&children[0], &children[1]),
41016 261 => self.p8_token(&children[0], &children[1]),
41017 262 => self.p16_token(&children[0], &children[1]),
41018 263 => self.p32_token(&children[0], &children[1]),
41019 264 => self.p64_token(&children[0], &children[1]),
41020 265 => self.u8_token(&children[0], &children[1]),
41021 266 => self.u16_token(&children[0], &children[1]),
41022 267 => self.u32_token(&children[0], &children[1]),
41023 268 => self.u64_token(&children[0], &children[1]),
41024 269 => self.union_token(&children[0], &children[1]),
41025 270 => self.unsafe_token(&children[0], &children[1]),
41026 271 => self.var_token(&children[0], &children[1]),
41027 272 => self.dollar_identifier_token(&children[0], &children[1]),
41028 273 => self.identifier_token(&children[0], &children[1]),
41029 274 => self.any_token(&children[0]),
41030 275 => self.start(&children[0]),
41031 276 => self.string_literal(&children[0]),
41032 277 => self.exponent(&children[0]),
41033 278 => self.fixed_point(&children[0]),
41034 279 => self.based(&children[0]),
41035 280 => self.base_less(&children[0]),
41036 281 => self.all_bit(&children[0]),
41037 282 => self.assignment_operator(&children[0]),
41038 283 => self.diamond_operator(&children[0]),
41039 284 => self.operator01(&children[0]),
41040 285 => self.operator02(&children[0]),
41041 286 => self.operator03(&children[0]),
41042 287 => self.operator04(&children[0]),
41043 288 => self.operator05(&children[0]),
41044 289 => self.operator06(&children[0]),
41045 290 => self.operator07(&children[0]),
41046 291 => self.operator08(&children[0]),
41047 292 => self.unary_operator(&children[0]),
41048 293 => self.colon(&children[0]),
41049 294 => self.colon_colon_l_angle(&children[0]),
41050 295 => self.colon_colon(&children[0]),
41051 296 => self.comma(&children[0]),
41052 297 => self.dot_dot(&children[0]),
41053 298 => self.dot_dot_equ(&children[0]),
41054 299 => self.dot(&children[0]),
41055 300 => self.equ(&children[0]),
41056 301 => self.hash_l_bracket(&children[0]),
41057 302 => self.hash(&children[0]),
41058 303 => self.question(&children[0]),
41059 304 => self.quote_l_brace(&children[0]),
41060 305 => self.quote(&children[0]),
41061 306 => self.l_angle(&children[0]),
41062 307 => self.embed_l_brace(&children[0]),
41063 308 => self.escaped_l_brace(&children[0]),
41064 309 => self.triple_l_brace(&children[0]),
41065 310 => self.l_brace(&children[0]),
41066 311 => self.l_bracket(&children[0]),
41067 312 => self.l_paren(&children[0]),
41068 313 => self.l_t_minus(&children[0]),
41069 314 => self.minus_colon(&children[0]),
41070 315 => self.minus_g_t(&children[0]),
41071 316 => self.plus_colon(&children[0]),
41072 317 => self.r_angle(&children[0]),
41073 318 => self.embed_r_brace(&children[0]),
41074 319 => self.escaped_r_brace(&children[0]),
41075 320 => self.triple_r_brace(&children[0]),
41076 321 => self.r_brace(&children[0]),
41077 322 => self.r_bracket(&children[0]),
41078 323 => self.r_paren(&children[0]),
41079 324 => self.semicolon(&children[0]),
41080 325 => self.star(&children[0]),
41081 326 => self.alias(&children[0]),
41082 327 => self.always_comb(&children[0]),
41083 328 => self.always_ff(&children[0]),
41084 329 => self.r#as(&children[0]),
41085 330 => self.assign(&children[0]),
41086 331 => self.bind(&children[0]),
41087 332 => self.bit(&children[0]),
41088 333 => self.block(&children[0]),
41089 334 => self.b_bool(&children[0]),
41090 335 => self.l_bool(&children[0]),
41091 336 => self.r#break(&children[0]),
41092 337 => self.case(&children[0]),
41093 338 => self.clock(&children[0]),
41094 339 => self.clock_posedge(&children[0]),
41095 340 => self.clock_negedge(&children[0]),
41096 341 => self.connect(&children[0]),
41097 342 => self.r#const(&children[0]),
41098 343 => self.converse(&children[0]),
41099 344 => self.defaul(&children[0]),
41100 345 => self.r#else(&children[0]),
41101 346 => self.embed(&children[0]),
41102 347 => self.r#enum(&children[0]),
41103 348 => self.f32(&children[0]),
41104 349 => self.f64(&children[0]),
41105 350 => self.r#false(&children[0]),
41106 351 => self.r#final(&children[0]),
41107 352 => self.r#for(&children[0]),
41108 353 => self.function(&children[0]),
41109 354 => self.i8(&children[0]),
41110 355 => self.i16(&children[0]),
41111 356 => self.i32(&children[0]),
41112 357 => self.i64(&children[0]),
41113 358 => self.r#if(&children[0]),
41114 359 => self.if_reset(&children[0]),
41115 360 => self.import(&children[0]),
41116 361 => self.r#in(&children[0]),
41117 362 => self.include(&children[0]),
41118 363 => self.initial(&children[0]),
41119 364 => self.inout(&children[0]),
41120 365 => self.input(&children[0]),
41121 366 => self.inside(&children[0]),
41122 367 => self.inst(&children[0]),
41123 368 => self.interface(&children[0]),
41124 369 => self.r#let(&children[0]),
41125 370 => self.logic(&children[0]),
41126 371 => self.lsb(&children[0]),
41127 372 => self.modport(&children[0]),
41128 373 => self.module(&children[0]),
41129 374 => self.msb(&children[0]),
41130 375 => self.output(&children[0]),
41131 376 => self.outside(&children[0]),
41132 377 => self.package(&children[0]),
41133 378 => self.param(&children[0]),
41134 379 => self.proto(&children[0]),
41135 380 => self.r#pub(&children[0]),
41136 381 => self.repeat(&children[0]),
41137 382 => self.reset(&children[0]),
41138 383 => self.reset_async_high(&children[0]),
41139 384 => self.reset_async_low(&children[0]),
41140 385 => self.reset_sync_high(&children[0]),
41141 386 => self.reset_sync_low(&children[0]),
41142 387 => self.r#return(&children[0]),
41143 388 => self.rev(&children[0]),
41144 389 => self.same(&children[0]),
41145 390 => self.signed(&children[0]),
41146 391 => self.step(&children[0]),
41147 392 => self.strin(&children[0]),
41148 393 => self.r#struct(&children[0]),
41149 394 => self.switch(&children[0]),
41150 395 => self.tri(&children[0]),
41151 396 => self.r#true(&children[0]),
41152 397 => self.r#type(&children[0]),
41153 398 => self.p8(&children[0]),
41154 399 => self.p16(&children[0]),
41155 400 => self.p32(&children[0]),
41156 401 => self.p64(&children[0]),
41157 402 => self.u8(&children[0]),
41158 403 => self.u16(&children[0]),
41159 404 => self.u32(&children[0]),
41160 405 => self.u64(&children[0]),
41161 406 => self.r#union(&children[0]),
41162 407 => self.r#unsafe(&children[0]),
41163 408 => self.var(&children[0]),
41164 409 => self.dollar_identifier(&children[0]),
41165 410 => self.identifier(&children[0]),
41166 411 => self.any(&children[0]),
41167 412 => self.number_0(&children[0]),
41168 413 => self.number_1(&children[0]),
41169 414 => self.integral_number_0(&children[0]),
41170 415 => self.integral_number_1(&children[0]),
41171 416 => self.integral_number_2(&children[0]),
41172 417 => self.real_number_0(&children[0]),
41173 418 => self.real_number_1(&children[0]),
41174 419 => self.hierarchical_identifier(&children[0], &children[1], &children[2]),
41175 420 => self.hierarchical_identifier_list0_0(
41176 &children[0],
41177 &children[1],
41178 &children[2],
41179 &children[3],
41180 ),
41181 421 => self.hierarchical_identifier_list0_list_0(&children[0], &children[1]),
41182 422 => self.hierarchical_identifier_list0_list_1(),
41183 423 => self.hierarchical_identifier_list0_1(),
41184 424 => self.hierarchical_identifier_list_0(&children[0], &children[1]),
41185 425 => self.hierarchical_identifier_list_1(),
41186 426 => self.scoped_identifier(&children[0], &children[1]),
41187 427 => self.scoped_identifier_group_0(&children[0]),
41188 428 => self.scoped_identifier_group_1(&children[0], &children[1]),
41189 429 => self.scoped_identifier_list_0(
41190 &children[0],
41191 &children[1],
41192 &children[2],
41193 &children[3],
41194 ),
41195 430 => self.scoped_identifier_list_1(),
41196 431 => self.scoped_identifier_opt0_0(&children[0]),
41197 432 => self.scoped_identifier_opt0_1(),
41198 433 => self.scoped_identifier_opt_0(&children[0]),
41199 434 => self.scoped_identifier_opt_1(),
41200 435 => {
41201 self.expression_identifier(&children[0], &children[1], &children[2], &children[3])
41202 }
41203 436 => self.expression_identifier_list0_0(
41204 &children[0],
41205 &children[1],
41206 &children[2],
41207 &children[3],
41208 ),
41209 437 => self.expression_identifier_list0_list_0(&children[0], &children[1]),
41210 438 => self.expression_identifier_list0_list_1(),
41211 439 => self.expression_identifier_list0_1(),
41212 440 => self.expression_identifier_list_0(&children[0], &children[1]),
41213 441 => self.expression_identifier_list_1(),
41214 442 => self.expression_identifier_opt_0(&children[0]),
41215 443 => self.expression_identifier_opt_1(),
41216 444 => self.generic_arg_identifier(&children[0], &children[1]),
41217 445 => self.generic_arg_identifier_list_0(&children[0], &children[1], &children[2]),
41218 446 => self.generic_arg_identifier_list_1(),
41219 447 => self.expression(&children[0]),
41220 448 => self.if_expression(&children[0], &children[1]),
41221 449 => self.if_expression_list_0(
41222 &children[0],
41223 &children[1],
41224 &children[2],
41225 &children[3],
41226 &children[4],
41227 &children[5],
41228 ),
41229 450 => self.if_expression_list_1(),
41230 451 => self.expression01(&children[0], &children[1]),
41231 452 => self.expression01_list_0(&children[0], &children[1], &children[2]),
41232 453 => self.expression01_list_1(),
41233 454 => self.expression02(&children[0], &children[1], &children[2]),
41234 455 => self.expression02_list_0(&children[0], &children[1]),
41235 456 => self.expression02_list_1(),
41236 457 => self.expression02_opt_0(&children[0], &children[1]),
41237 458 => self.expression02_opt_1(),
41238 459 => self.expression01_op_0(&children[0]),
41239 460 => self.expression01_op_1(&children[0]),
41240 461 => self.expression01_op_2(&children[0]),
41241 462 => self.expression01_op_3(&children[0]),
41242 463 => self.expression01_op_4(&children[0]),
41243 464 => self.expression01_op_5(&children[0]),
41244 465 => self.expression01_op_6(&children[0]),
41245 466 => self.expression01_op_7(&children[0]),
41246 467 => self.expression01_op_8(&children[0]),
41247 468 => self.expression02_op_0(&children[0]),
41248 469 => self.expression02_op_1(&children[0]),
41249 470 => self.expression02_op_2(&children[0]),
41250 471 => self.expression02_op_3(&children[0]),
41251 472 => self.expression02_op_4(&children[0]),
41252 473 => self.factor_0(&children[0]),
41253 474 => self.factor_1(&children[0]),
41254 475 => self.factor_2(&children[0]),
41255 476 => self.factor_3(&children[0], &children[1], &children[2]),
41256 477 => self.factor_4(&children[0], &children[1], &children[2]),
41257 478 => self.factor_5(&children[0], &children[1], &children[2]),
41258 479 => self.factor_6(&children[0]),
41259 480 => self.factor_7(&children[0]),
41260 481 => self.factor_8(&children[0]),
41261 482 => self.factor_9(&children[0]),
41262 483 => self.factor_group_0(&children[0]),
41263 484 => self.factor_group_1(&children[0]),
41264 485 => self.factor_10(&children[0]),
41265 486 => self.factor_11(&children[0]),
41266 487 => self.factor_12(&children[0]),
41267 488 => self.factor_13(&children[0]),
41268 489 => self.boolean_literal_0(&children[0]),
41269 490 => self.boolean_literal_1(&children[0]),
41270 491 => self.identifier_factor(&children[0], &children[1]),
41271 492 => self.identifier_factor_opt_0(&children[0]),
41272 493 => self.identifier_factor_opt_group_0(&children[0]),
41273 494 => self.identifier_factor_opt_group_1(&children[0]),
41274 495 => self.identifier_factor_opt_1(),
41275 496 => self.factor_type_factor(&children[0], &children[1]),
41276 497 => self.factor_type_factor_list_0(&children[0], &children[1]),
41277 498 => self.factor_type_factor_list_1(),
41278 499 => self.function_call(&children[0], &children[1], &children[2]),
41279 500 => self.function_call_opt_0(&children[0]),
41280 501 => self.function_call_opt_1(),
41281 502 => self.argument_list(&children[0], &children[1], &children[2]),
41282 503 => self.argument_list_list_0(&children[0], &children[1], &children[2]),
41283 504 => self.argument_list_list_1(),
41284 505 => self.argument_list_opt_0(&children[0]),
41285 506 => self.argument_list_opt_1(),
41286 507 => self.argument_item(&children[0], &children[1]),
41287 508 => self.argument_item_opt_0(&children[0], &children[1]),
41288 509 => self.argument_item_opt_1(),
41289 510 => self.argument_expression(&children[0]),
41290 511 => self.struct_constructor(&children[0], &children[1], &children[2], &children[3]),
41291 512 => self.struct_constructor_opt_0(
41292 &children[0],
41293 &children[1],
41294 &children[2],
41295 &children[3],
41296 &children[4],
41297 ),
41298 513 => self.struct_constructor_opt_1(),
41299 514 => self.struct_constructor_list(&children[0], &children[1], &children[2]),
41300 515 => self.struct_constructor_list_list_0(&children[0], &children[1], &children[2]),
41301 516 => self.struct_constructor_list_list_1(),
41302 517 => self.struct_constructor_list_opt_0(&children[0]),
41303 518 => self.struct_constructor_list_opt_1(),
41304 519 => self.struct_constructor_item(&children[0], &children[1], &children[2]),
41305 520 => self.concatenation_list(&children[0], &children[1], &children[2]),
41306 521 => self.concatenation_list_list_0(&children[0], &children[1], &children[2]),
41307 522 => self.concatenation_list_list_1(),
41308 523 => self.concatenation_list_opt_0(&children[0]),
41309 524 => self.concatenation_list_opt_1(),
41310 525 => self.concatenation_item(&children[0], &children[1]),
41311 526 => self.concatenation_item_opt_0(&children[0], &children[1]),
41312 527 => self.concatenation_item_opt_1(),
41313 528 => self.array_literal_list(&children[0], &children[1], &children[2]),
41314 529 => self.array_literal_list_list_0(&children[0], &children[1], &children[2]),
41315 530 => self.array_literal_list_list_1(),
41316 531 => self.array_literal_list_opt_0(&children[0]),
41317 532 => self.array_literal_list_opt_1(),
41318 533 => self.array_literal_item(&children[0]),
41319 534 => self.array_literal_item_group_0(&children[0], &children[1]),
41320 535 => self.array_literal_item_group_1(&children[0], &children[1], &children[2]),
41321 536 => self.array_literal_item_opt_0(&children[0], &children[1]),
41322 537 => self.array_literal_item_opt_1(),
41323 538 => self.case_expression(
41324 &children[0],
41325 &children[1],
41326 &children[2],
41327 &children[3],
41328 &children[4],
41329 &children[5],
41330 &children[6],
41331 &children[7],
41332 &children[8],
41333 &children[9],
41334 &children[10],
41335 &children[11],
41336 &children[12],
41337 ),
41338 539 => self.case_expression_list_0(
41339 &children[0],
41340 &children[1],
41341 &children[2],
41342 &children[3],
41343 &children[4],
41344 ),
41345 540 => self.case_expression_list_1(),
41346 541 => self.case_expression_opt_0(&children[0]),
41347 542 => self.case_expression_opt_1(),
41348 543 => self.switch_expression(
41349 &children[0],
41350 &children[1],
41351 &children[2],
41352 &children[3],
41353 &children[4],
41354 &children[5],
41355 &children[6],
41356 &children[7],
41357 &children[8],
41358 &children[9],
41359 &children[10],
41360 &children[11],
41361 ),
41362 544 => self.switch_expression_list_0(
41363 &children[0],
41364 &children[1],
41365 &children[2],
41366 &children[3],
41367 &children[4],
41368 ),
41369 545 => self.switch_expression_list_1(),
41370 546 => self.switch_expression_opt_0(&children[0]),
41371 547 => self.switch_expression_opt_1(),
41372 548 => self.type_expression(&children[0], &children[1], &children[2], &children[3]),
41373 549 => self.inside_expression(
41374 &children[0],
41375 &children[1],
41376 &children[2],
41377 &children[3],
41378 &children[4],
41379 ),
41380 550 => self.outside_expression(
41381 &children[0],
41382 &children[1],
41383 &children[2],
41384 &children[3],
41385 &children[4],
41386 ),
41387 551 => self.range_list(&children[0], &children[1], &children[2]),
41388 552 => self.range_list_list_0(&children[0], &children[1], &children[2]),
41389 553 => self.range_list_list_1(),
41390 554 => self.range_list_opt_0(&children[0]),
41391 555 => self.range_list_opt_1(),
41392 556 => self.range_item(&children[0]),
41393 557 => self.select(&children[0], &children[1], &children[2], &children[3]),
41394 558 => self.select_opt_0(&children[0], &children[1]),
41395 559 => self.select_opt_1(),
41396 560 => self.select_operator_0(&children[0]),
41397 561 => self.select_operator_1(&children[0]),
41398 562 => self.select_operator_2(&children[0]),
41399 563 => self.select_operator_3(&children[0]),
41400 564 => self.width(&children[0], &children[1], &children[2], &children[3]),
41401 565 => self.width_list_0(&children[0], &children[1], &children[2]),
41402 566 => self.width_list_1(),
41403 567 => self.array(&children[0], &children[1], &children[2], &children[3]),
41404 568 => self.array_list_0(&children[0], &children[1], &children[2]),
41405 569 => self.array_list_1(),
41406 570 => self.range(&children[0], &children[1]),
41407 571 => self.range_opt_0(&children[0], &children[1]),
41408 572 => self.range_opt_1(),
41409 573 => self.range_operator_0(&children[0]),
41410 574 => self.range_operator_1(&children[0]),
41411 575 => self.fixed_type_0(&children[0]),
41412 576 => self.fixed_type_1(&children[0]),
41413 577 => self.fixed_type_2(&children[0]),
41414 578 => self.fixed_type_3(&children[0]),
41415 579 => self.fixed_type_4(&children[0]),
41416 580 => self.fixed_type_5(&children[0]),
41417 581 => self.fixed_type_6(&children[0]),
41418 582 => self.fixed_type_7(&children[0]),
41419 583 => self.fixed_type_8(&children[0]),
41420 584 => self.fixed_type_9(&children[0]),
41421 585 => self.fixed_type_10(&children[0]),
41422 586 => self.fixed_type_11(&children[0]),
41423 587 => self.fixed_type_12(&children[0]),
41424 588 => self.fixed_type_13(&children[0]),
41425 589 => self.fixed_type_14(&children[0]),
41426 590 => self.fixed_type_15(&children[0]),
41427 591 => self.fixed_type_16(&children[0]),
41428 592 => self.variable_type_0(&children[0]),
41429 593 => self.variable_type_1(&children[0]),
41430 594 => self.variable_type_2(&children[0]),
41431 595 => self.variable_type_3(&children[0]),
41432 596 => self.variable_type_4(&children[0]),
41433 597 => self.variable_type_5(&children[0]),
41434 598 => self.variable_type_6(&children[0]),
41435 599 => self.variable_type_7(&children[0]),
41436 600 => self.variable_type_8(&children[0]),
41437 601 => self.variable_type_9(&children[0]),
41438 602 => self.user_defined_type(&children[0]),
41439 603 => self.type_modifier_0(&children[0]),
41440 604 => self.type_modifier_1(&children[0]),
41441 605 => self.type_modifier_2(&children[0]),
41442 606 => self.factor_type(&children[0]),
41443 607 => self.factor_type_group_0(&children[0], &children[1]),
41444 608 => self.factor_type_group_1(&children[0]),
41445 609 => self.factor_type_opt_0(&children[0]),
41446 610 => self.factor_type_opt_1(),
41447 611 => self.scalar_type(&children[0], &children[1]),
41448 612 => self.scalar_type_group_0(&children[0], &children[1]),
41449 613 => self.scalar_type_group_1(&children[0]),
41450 614 => self.scalar_type_list_0(&children[0], &children[1]),
41451 615 => self.scalar_type_list_1(),
41452 616 => self.scalar_type_opt_0(&children[0]),
41453 617 => self.scalar_type_opt_1(),
41454 618 => self.array_type(&children[0], &children[1]),
41455 619 => self.array_type_opt_0(&children[0]),
41456 620 => self.array_type_opt_1(),
41457 621 => self.casting_type_0(&children[0]),
41458 622 => self.casting_type_1(&children[0]),
41459 623 => self.casting_type_2(&children[0]),
41460 624 => self.casting_type_3(&children[0]),
41461 625 => self.casting_type_4(&children[0]),
41462 626 => self.casting_type_5(&children[0]),
41463 627 => self.casting_type_6(&children[0]),
41464 628 => self.casting_type_7(&children[0]),
41465 629 => self.casting_type_8(&children[0]),
41466 630 => self.casting_type_9(&children[0]),
41467 631 => self.casting_type_10(&children[0]),
41468 632 => self.casting_type_11(&children[0]),
41469 633 => self.casting_type_12(&children[0]),
41470 634 => self.casting_type_13(&children[0]),
41471 635 => self.casting_type_14(&children[0]),
41472 636 => self.casting_type_15(&children[0]),
41473 637 => self.casting_type_16(&children[0]),
41474 638 => self.casting_type_17(&children[0]),
41475 639 => self.casting_type_18(&children[0]),
41476 640 => self.casting_type_19(&children[0]),
41477 641 => self.casting_type_20(&children[0]),
41478 642 => self.casting_type_21(&children[0]),
41479 643 => self.casting_type_22(&children[0]),
41480 644 => self.casting_type_23(&children[0]),
41481 645 => self.casting_type_24(&children[0]),
41482 646 => self.casting_type_25(&children[0]),
41483 647 => self.casting_type_26(&children[0]),
41484 648 => self.clock_domain(&children[0], &children[1]),
41485 649 => self.statement_block(&children[0], &children[1], &children[2]),
41486 650 => self.statement_block_list_0(&children[0], &children[1]),
41487 651 => self.statement_block_list_1(),
41488 652 => self.statement_block_group(&children[0], &children[1]),
41489 653 => self.statement_block_group_group_0(
41490 &children[0],
41491 &children[1],
41492 &children[2],
41493 &children[3],
41494 ),
41495 654 => self.statement_block_group_group_list_0(&children[0], &children[1]),
41496 655 => self.statement_block_group_group_list_1(),
41497 656 => self.statement_block_group_group_1(&children[0]),
41498 657 => self.statement_block_group_list_0(&children[0], &children[1]),
41499 658 => self.statement_block_group_list_1(),
41500 659 => self.statement_block_item_0(&children[0]),
41501 660 => self.statement_block_item_1(&children[0]),
41502 661 => self.statement_block_item_2(&children[0]),
41503 662 => self.statement_block_item_3(&children[0]),
41504 663 => self.statement_block_item_4(&children[0]),
41505 664 => self.statement_0(&children[0]),
41506 665 => self.statement_1(&children[0]),
41507 666 => self.statement_2(&children[0]),
41508 667 => self.statement_3(&children[0]),
41509 668 => self.statement_4(&children[0]),
41510 669 => self.statement_5(&children[0]),
41511 670 => self.statement_6(&children[0]),
41512 671 => self.statement_7(&children[0]),
41513 672 => self.let_statement(
41514 &children[0],
41515 &children[1],
41516 &children[2],
41517 &children[3],
41518 &children[4],
41519 &children[5],
41520 &children[6],
41521 &children[7],
41522 ),
41523 673 => self.let_statement_opt_0(&children[0]),
41524 674 => self.let_statement_opt_1(),
41525 675 => self.identifier_statement(&children[0], &children[1], &children[2]),
41526 676 => self.identifier_statement_group_0(&children[0]),
41527 677 => self.identifier_statement_group_1(&children[0]),
41528 678 => self.concatenation_assignment(
41529 &children[0],
41530 &children[1],
41531 &children[2],
41532 &children[3],
41533 &children[4],
41534 &children[5],
41535 ),
41536 679 => self.assignment(&children[0], &children[1]),
41537 680 => self.assignment_group_0(&children[0]),
41538 681 => self.assignment_group_1(&children[0]),
41539 682 => self.assignment_group_2(&children[0]),
41540 683 => self.if_statement(
41541 &children[0],
41542 &children[1],
41543 &children[2],
41544 &children[3],
41545 &children[4],
41546 ),
41547 684 => self.if_statement_list_0(
41548 &children[0],
41549 &children[1],
41550 &children[2],
41551 &children[3],
41552 &children[4],
41553 ),
41554 685 => self.if_statement_list_1(),
41555 686 => self.if_statement_opt_0(&children[0], &children[1]),
41556 687 => self.if_statement_opt_1(),
41557 688 => self.if_reset_statement(&children[0], &children[1], &children[2], &children[3]),
41558 689 => self.if_reset_statement_list_0(
41559 &children[0],
41560 &children[1],
41561 &children[2],
41562 &children[3],
41563 &children[4],
41564 ),
41565 690 => self.if_reset_statement_list_1(),
41566 691 => self.if_reset_statement_opt_0(&children[0], &children[1]),
41567 692 => self.if_reset_statement_opt_1(),
41568 693 => self.return_statement(&children[0], &children[1], &children[2]),
41569 694 => self.break_statement(&children[0], &children[1]),
41570 695 => self.for_statement(
41571 &children[0],
41572 &children[1],
41573 &children[2],
41574 &children[3],
41575 &children[4],
41576 &children[5],
41577 &children[6],
41578 &children[7],
41579 &children[8],
41580 ),
41581 696 => self.for_statement_opt0_0(&children[0], &children[1], &children[2]),
41582 697 => self.for_statement_opt0_1(),
41583 698 => self.for_statement_opt_0(&children[0]),
41584 699 => self.for_statement_opt_1(),
41585 700 => self.case_statement(
41586 &children[0],
41587 &children[1],
41588 &children[2],
41589 &children[3],
41590 &children[4],
41591 ),
41592 701 => self.case_statement_list_0(&children[0], &children[1]),
41593 702 => self.case_statement_list_1(),
41594 703 => self.case_item(&children[0], &children[1], &children[2]),
41595 704 => self.case_item_group0_0(&children[0]),
41596 705 => self.case_item_group0_1(&children[0]),
41597 706 => self.case_item_group_0(&children[0]),
41598 707 => self.case_item_group_1(&children[0]),
41599 708 => self.case_condition(&children[0], &children[1]),
41600 709 => self.case_condition_list_0(&children[0], &children[1], &children[2]),
41601 710 => self.case_condition_list_1(),
41602 711 => self.switch_statement(&children[0], &children[1], &children[2], &children[3]),
41603 712 => self.switch_statement_list_0(&children[0], &children[1]),
41604 713 => self.switch_statement_list_1(),
41605 714 => self.switch_item(&children[0], &children[1], &children[2]),
41606 715 => self.switch_item_group0_0(&children[0]),
41607 716 => self.switch_item_group0_1(&children[0]),
41608 717 => self.switch_item_group_0(&children[0]),
41609 718 => self.switch_item_group_1(&children[0]),
41610 719 => self.switch_condition(&children[0], &children[1]),
41611 720 => self.switch_condition_list_0(&children[0], &children[1], &children[2]),
41612 721 => self.switch_condition_list_1(),
41613 722 => self.attribute(&children[0], &children[1], &children[2], &children[3]),
41614 723 => self.attribute_opt_0(&children[0], &children[1], &children[2]),
41615 724 => self.attribute_opt_1(),
41616 725 => self.attribute_list(&children[0], &children[1], &children[2]),
41617 726 => self.attribute_list_list_0(&children[0], &children[1], &children[2]),
41618 727 => self.attribute_list_list_1(),
41619 728 => self.attribute_list_opt_0(&children[0]),
41620 729 => self.attribute_list_opt_1(),
41621 730 => self.attribute_item_0(&children[0]),
41622 731 => self.attribute_item_1(&children[0]),
41623 732 => self.let_declaration(
41624 &children[0],
41625 &children[1],
41626 &children[2],
41627 &children[3],
41628 &children[4],
41629 &children[5],
41630 &children[6],
41631 &children[7],
41632 ),
41633 733 => self.let_declaration_opt_0(&children[0]),
41634 734 => self.let_declaration_opt_1(),
41635 735 => self.var_declaration(
41636 &children[0],
41637 &children[1],
41638 &children[2],
41639 &children[3],
41640 &children[4],
41641 &children[5],
41642 ),
41643 736 => self.var_declaration_opt_0(&children[0]),
41644 737 => self.var_declaration_opt_1(),
41645 738 => self.const_declaration(
41646 &children[0],
41647 &children[1],
41648 &children[2],
41649 &children[3],
41650 &children[4],
41651 &children[5],
41652 &children[6],
41653 ),
41654 739 => self.const_declaration_group_0(&children[0]),
41655 740 => self.const_declaration_group_1(&children[0]),
41656 741 => self.type_def_declaration(
41657 &children[0],
41658 &children[1],
41659 &children[2],
41660 &children[3],
41661 &children[4],
41662 ),
41663 742 => self.always_ff_declaration(&children[0], &children[1], &children[2]),
41664 743 => self.always_ff_declaration_opt_0(&children[0]),
41665 744 => self.always_ff_declaration_opt_1(),
41666 745 => {
41667 self.always_ff_event_list(&children[0], &children[1], &children[2], &children[3])
41668 }
41669 746 => self.always_ff_event_list_opt_0(&children[0], &children[1]),
41670 747 => self.always_ff_event_list_opt_1(),
41671 748 => self.always_ff_clock(&children[0]),
41672 749 => self.always_ff_reset(&children[0]),
41673 750 => self.always_comb_declaration(&children[0], &children[1]),
41674 751 => self.assign_declaration(
41675 &children[0],
41676 &children[1],
41677 &children[2],
41678 &children[3],
41679 &children[4],
41680 ),
41681 752 => self.assign_destination_0(&children[0]),
41682 753 => self.assign_destination_1(&children[0], &children[1], &children[2]),
41683 754 => self.assign_concatenation_list(&children[0], &children[1], &children[2]),
41684 755 => self.assign_concatenation_list_list_0(&children[0], &children[1], &children[2]),
41685 756 => self.assign_concatenation_list_list_1(),
41686 757 => self.assign_concatenation_list_opt_0(&children[0]),
41687 758 => self.assign_concatenation_list_opt_1(),
41688 759 => self.assign_concatenation_item(&children[0]),
41689 760 => self.connect_declaration(
41690 &children[0],
41691 &children[1],
41692 &children[2],
41693 &children[3],
41694 &children[4],
41695 ),
41696 761 => self.modport_declaration(
41697 &children[0],
41698 &children[1],
41699 &children[2],
41700 &children[3],
41701 &children[4],
41702 &children[5],
41703 ),
41704 762 => self.modport_declaration_opt0_0(&children[0], &children[1]),
41705 763 => self.modport_declaration_opt0_1(),
41706 764 => self.modport_declaration_opt_0(&children[0]),
41707 765 => self.modport_declaration_opt_1(),
41708 766 => self.modport_list(&children[0], &children[1], &children[2]),
41709 767 => self.modport_list_list_0(&children[0], &children[1], &children[2]),
41710 768 => self.modport_list_list_1(),
41711 769 => self.modport_list_opt_0(&children[0]),
41712 770 => self.modport_list_opt_1(),
41713 771 => self.modport_group(&children[0], &children[1]),
41714 772 => self.modport_group_group_0(&children[0], &children[1], &children[2]),
41715 773 => self.modport_group_group_1(&children[0]),
41716 774 => self.modport_group_list_0(&children[0], &children[1]),
41717 775 => self.modport_group_list_1(),
41718 776 => self.modport_item(&children[0], &children[1], &children[2]),
41719 777 => self.modport_default_0(&children[0]),
41720 778 => self.modport_default_1(&children[0]),
41721 779 => self.modport_default_2(&children[0], &children[1], &children[2], &children[3]),
41722 780 => self.modport_default_3(&children[0], &children[1], &children[2], &children[3]),
41723 781 => self.modport_default_list(&children[0], &children[1], &children[2]),
41724 782 => self.modport_default_list_list_0(&children[0], &children[1], &children[2]),
41725 783 => self.modport_default_list_list_1(),
41726 784 => self.modport_default_list_opt_0(&children[0]),
41727 785 => self.modport_default_list_opt_1(),
41728 786 => self.enum_declaration(
41729 &children[0],
41730 &children[1],
41731 &children[2],
41732 &children[3],
41733 &children[4],
41734 &children[5],
41735 ),
41736 787 => self.enum_declaration_opt_0(&children[0], &children[1]),
41737 788 => self.enum_declaration_opt_1(),
41738 789 => self.enum_list(&children[0], &children[1], &children[2]),
41739 790 => self.enum_list_list_0(&children[0], &children[1], &children[2]),
41740 791 => self.enum_list_list_1(),
41741 792 => self.enum_list_opt_0(&children[0]),
41742 793 => self.enum_list_opt_1(),
41743 794 => self.enum_group(&children[0], &children[1]),
41744 795 => self.enum_group_group_0(&children[0], &children[1], &children[2]),
41745 796 => self.enum_group_group_1(&children[0]),
41746 797 => self.enum_group_list_0(&children[0], &children[1]),
41747 798 => self.enum_group_list_1(),
41748 799 => self.enum_item(&children[0], &children[1]),
41749 800 => self.enum_item_opt_0(&children[0], &children[1]),
41750 801 => self.enum_item_opt_1(),
41751 802 => self.struct_union_0(&children[0]),
41752 803 => self.struct_union_1(&children[0]),
41753 804 => self.struct_union_declaration(
41754 &children[0],
41755 &children[1],
41756 &children[2],
41757 &children[3],
41758 &children[4],
41759 &children[5],
41760 ),
41761 805 => self.struct_union_declaration_opt_0(&children[0]),
41762 806 => self.struct_union_declaration_opt_1(),
41763 807 => self.struct_union_list(&children[0], &children[1], &children[2]),
41764 808 => self.struct_union_list_list_0(&children[0], &children[1], &children[2]),
41765 809 => self.struct_union_list_list_1(),
41766 810 => self.struct_union_list_opt_0(&children[0]),
41767 811 => self.struct_union_list_opt_1(),
41768 812 => self.struct_union_group(&children[0], &children[1]),
41769 813 => self.struct_union_group_group_0(&children[0], &children[1], &children[2]),
41770 814 => self.struct_union_group_group_1(&children[0]),
41771 815 => self.struct_union_group_list_0(&children[0], &children[1]),
41772 816 => self.struct_union_group_list_1(),
41773 817 => self.struct_union_item(&children[0], &children[1], &children[2]),
41774 818 => self.initial_declaration(&children[0], &children[1]),
41775 819 => self.final_declaration(&children[0], &children[1]),
41776 820 => self.inst_declaration(&children[0], &children[1], &children[2]),
41777 821 => self.bind_declaration(
41778 &children[0],
41779 &children[1],
41780 &children[2],
41781 &children[3],
41782 &children[4],
41783 ),
41784 822 => self.component_instantiation(
41785 &children[0],
41786 &children[1],
41787 &children[2],
41788 &children[3],
41789 &children[4],
41790 &children[5],
41791 &children[6],
41792 ),
41793 823 => self.component_instantiation_opt2_0(&children[0]),
41794 824 => self.component_instantiation_opt2_1(),
41795 825 => self.component_instantiation_opt1_0(&children[0]),
41796 826 => self.component_instantiation_opt1_1(),
41797 827 => self.component_instantiation_opt0_0(&children[0]),
41798 828 => self.component_instantiation_opt0_1(),
41799 829 => self.component_instantiation_opt_0(&children[0]),
41800 830 => self.component_instantiation_opt_1(),
41801 831 => self.inst_parameter(&children[0], &children[1], &children[2], &children[3]),
41802 832 => self.inst_parameter_opt_0(&children[0]),
41803 833 => self.inst_parameter_opt_1(),
41804 834 => self.inst_parameter_list(&children[0], &children[1], &children[2]),
41805 835 => self.inst_parameter_list_list_0(&children[0], &children[1], &children[2]),
41806 836 => self.inst_parameter_list_list_1(),
41807 837 => self.inst_parameter_list_opt_0(&children[0]),
41808 838 => self.inst_parameter_list_opt_1(),
41809 839 => self.inst_parameter_group(&children[0], &children[1]),
41810 840 => self.inst_parameter_group_group_0(&children[0], &children[1], &children[2]),
41811 841 => self.inst_parameter_group_group_1(&children[0]),
41812 842 => self.inst_parameter_group_list_0(&children[0], &children[1]),
41813 843 => self.inst_parameter_group_list_1(),
41814 844 => self.inst_parameter_item(&children[0], &children[1]),
41815 845 => self.inst_parameter_item_opt_0(&children[0], &children[1]),
41816 846 => self.inst_parameter_item_opt_1(),
41817 847 => self.inst_port(&children[0], &children[1], &children[2]),
41818 848 => self.inst_port_opt_0(&children[0]),
41819 849 => self.inst_port_opt_1(),
41820 850 => self.inst_port_list(&children[0], &children[1], &children[2]),
41821 851 => self.inst_port_list_list_0(&children[0], &children[1], &children[2]),
41822 852 => self.inst_port_list_list_1(),
41823 853 => self.inst_port_list_opt_0(&children[0]),
41824 854 => self.inst_port_list_opt_1(),
41825 855 => self.inst_port_group(&children[0], &children[1]),
41826 856 => self.inst_port_group_group_0(&children[0], &children[1], &children[2]),
41827 857 => self.inst_port_group_group_1(&children[0]),
41828 858 => self.inst_port_group_list_0(&children[0], &children[1]),
41829 859 => self.inst_port_group_list_1(),
41830 860 => self.inst_port_item(&children[0], &children[1]),
41831 861 => self.inst_port_item_opt_0(&children[0], &children[1]),
41832 862 => self.inst_port_item_opt_1(),
41833 863 => self.with_parameter(&children[0], &children[1], &children[2], &children[3]),
41834 864 => self.with_parameter_opt_0(&children[0]),
41835 865 => self.with_parameter_opt_1(),
41836 866 => self.with_parameter_list(&children[0], &children[1], &children[2]),
41837 867 => self.with_parameter_list_list_0(&children[0], &children[1], &children[2]),
41838 868 => self.with_parameter_list_list_1(),
41839 869 => self.with_parameter_list_opt_0(&children[0]),
41840 870 => self.with_parameter_list_opt_1(),
41841 871 => self.with_parameter_group(&children[0], &children[1]),
41842 872 => self.with_parameter_group_group_0(&children[0], &children[1], &children[2]),
41843 873 => self.with_parameter_group_group_1(&children[0]),
41844 874 => self.with_parameter_group_list_0(&children[0], &children[1]),
41845 875 => self.with_parameter_group_list_1(),
41846 876 => self.with_parameter_item(
41847 &children[0],
41848 &children[1],
41849 &children[2],
41850 &children[3],
41851 &children[4],
41852 ),
41853 877 => self.with_parameter_item_group0_0(&children[0]),
41854 878 => self.with_parameter_item_group0_1(&children[0]),
41855 879 => self.with_parameter_item_group_0(&children[0]),
41856 880 => self.with_parameter_item_group_1(&children[0]),
41857 881 => self.with_parameter_item_opt_0(&children[0], &children[1]),
41858 882 => self.with_parameter_item_opt_1(),
41859 883 => self.generic_bound_0(&children[0]),
41860 884 => self.generic_bound_1(&children[0], &children[1]),
41861 885 => self.generic_bound_2(&children[0]),
41862 886 => self.with_generic_parameter(&children[0], &children[1], &children[2]),
41863 887 => self.with_generic_parameter_list(&children[0], &children[1], &children[2]),
41864 888 => {
41865 self.with_generic_parameter_list_list_0(&children[0], &children[1], &children[2])
41866 }
41867 889 => self.with_generic_parameter_list_list_1(),
41868 890 => self.with_generic_parameter_list_opt_0(&children[0]),
41869 891 => self.with_generic_parameter_list_opt_1(),
41870 892 => self.with_generic_parameter_item(
41871 &children[0],
41872 &children[1],
41873 &children[2],
41874 &children[3],
41875 ),
41876 893 => self.with_generic_parameter_item_opt_0(&children[0], &children[1]),
41877 894 => self.with_generic_parameter_item_opt_1(),
41878 895 => self.generic_proto_bound_0(&children[0]),
41879 896 => self.generic_proto_bound_1(&children[0]),
41880 897 => self.with_generic_argument(&children[0], &children[1], &children[2]),
41881 898 => self.with_generic_argument_opt_0(&children[0]),
41882 899 => self.with_generic_argument_opt_1(),
41883 900 => self.with_generic_argument_list(&children[0], &children[1], &children[2]),
41884 901 => self.with_generic_argument_list_list_0(&children[0], &children[1], &children[2]),
41885 902 => self.with_generic_argument_list_list_1(),
41886 903 => self.with_generic_argument_list_opt_0(&children[0]),
41887 904 => self.with_generic_argument_list_opt_1(),
41888 905 => self.with_generic_argument_item_0(&children[0]),
41889 906 => self.with_generic_argument_item_1(&children[0]),
41890 907 => self.with_generic_argument_item_2(&children[0]),
41891 908 => self.with_generic_argument_item_3(&children[0]),
41892 909 => self.port_declaration(&children[0], &children[1], &children[2]),
41893 910 => self.port_declaration_opt_0(&children[0]),
41894 911 => self.port_declaration_opt_1(),
41895 912 => self.port_declaration_list(&children[0], &children[1], &children[2]),
41896 913 => self.port_declaration_list_list_0(&children[0], &children[1], &children[2]),
41897 914 => self.port_declaration_list_list_1(),
41898 915 => self.port_declaration_list_opt_0(&children[0]),
41899 916 => self.port_declaration_list_opt_1(),
41900 917 => self.port_declaration_group(&children[0], &children[1]),
41901 918 => self.port_declaration_group_group_0(&children[0], &children[1], &children[2]),
41902 919 => self.port_declaration_group_group_1(&children[0]),
41903 920 => self.port_declaration_group_list_0(&children[0], &children[1]),
41904 921 => self.port_declaration_group_list_1(),
41905 922 => self.port_declaration_item(&children[0], &children[1], &children[2]),
41906 923 => self.port_declaration_item_group_0(&children[0]),
41907 924 => self.port_declaration_item_group_1(&children[0]),
41908 925 => self.port_type_concrete(&children[0], &children[1], &children[2], &children[3]),
41909 926 => self.port_type_concrete_opt0_0(&children[0], &children[1]),
41910 927 => self.port_type_concrete_opt0_1(),
41911 928 => self.port_type_concrete_opt_0(&children[0]),
41912 929 => self.port_type_concrete_opt_1(),
41913 930 => self.port_default_value(&children[0]),
41914 931 => self.port_type_abstract(&children[0], &children[1], &children[2], &children[3]),
41915 932 => self.port_type_abstract_opt1_0(&children[0]),
41916 933 => self.port_type_abstract_opt1_1(),
41917 934 => self.port_type_abstract_opt0_0(&children[0], &children[1]),
41918 935 => self.port_type_abstract_opt0_1(),
41919 936 => self.port_type_abstract_opt_0(&children[0]),
41920 937 => self.port_type_abstract_opt_1(),
41921 938 => self.direction_0(&children[0]),
41922 939 => self.direction_1(&children[0]),
41923 940 => self.direction_2(&children[0]),
41924 941 => self.direction_3(&children[0]),
41925 942 => self.direction_4(&children[0]),
41926 943 => self.function_declaration(
41927 &children[0],
41928 &children[1],
41929 &children[2],
41930 &children[3],
41931 &children[4],
41932 &children[5],
41933 ),
41934 944 => self.function_declaration_opt1_0(&children[0], &children[1]),
41935 945 => self.function_declaration_opt1_1(),
41936 946 => self.function_declaration_opt0_0(&children[0]),
41937 947 => self.function_declaration_opt0_1(),
41938 948 => self.function_declaration_opt_0(&children[0]),
41939 949 => self.function_declaration_opt_1(),
41940 950 => self.import_declaration(&children[0], &children[1], &children[2], &children[3]),
41941 951 => self.import_declaration_opt_0(&children[0], &children[1]),
41942 952 => self.import_declaration_opt_1(),
41943 953 => self.unsafe_block(
41944 &children[0],
41945 &children[1],
41946 &children[2],
41947 &children[3],
41948 &children[4],
41949 &children[5],
41950 &children[6],
41951 ),
41952 954 => self.unsafe_block_list_0(&children[0], &children[1]),
41953 955 => self.unsafe_block_list_1(),
41954 956 => self.module_declaration(
41955 &children[0],
41956 &children[1],
41957 &children[2],
41958 &children[3],
41959 &children[4],
41960 &children[5],
41961 &children[6],
41962 &children[7],
41963 &children[8],
41964 ),
41965 957 => self.module_declaration_list_0(&children[0], &children[1]),
41966 958 => self.module_declaration_list_1(),
41967 959 => self.module_declaration_opt2_0(&children[0]),
41968 960 => self.module_declaration_opt2_1(),
41969 961 => self.module_declaration_opt1_0(&children[0]),
41970 962 => self.module_declaration_opt1_1(),
41971 963 => self.module_declaration_opt0_0(&children[0], &children[1]),
41972 964 => self.module_declaration_opt0_1(),
41973 965 => self.module_declaration_opt_0(&children[0]),
41974 966 => self.module_declaration_opt_1(),
41975 967 => self.module_group(&children[0], &children[1]),
41976 968 => self.module_group_group_0(&children[0], &children[1], &children[2]),
41977 969 => self.module_group_group_list_0(&children[0], &children[1]),
41978 970 => self.module_group_group_list_1(),
41979 971 => self.module_group_group_1(&children[0]),
41980 972 => self.module_group_list_0(&children[0], &children[1]),
41981 973 => self.module_group_list_1(),
41982 974 => self.module_item(&children[0]),
41983 975 => self.interface_declaration(
41984 &children[0],
41985 &children[1],
41986 &children[2],
41987 &children[3],
41988 &children[4],
41989 &children[5],
41990 &children[6],
41991 &children[7],
41992 ),
41993 976 => self.interface_declaration_list_0(&children[0], &children[1]),
41994 977 => self.interface_declaration_list_1(),
41995 978 => self.interface_declaration_opt1_0(&children[0]),
41996 979 => self.interface_declaration_opt1_1(),
41997 980 => self.interface_declaration_opt0_0(&children[0], &children[1]),
41998 981 => self.interface_declaration_opt0_1(),
41999 982 => self.interface_declaration_opt_0(&children[0]),
42000 983 => self.interface_declaration_opt_1(),
42001 984 => self.interface_group(&children[0], &children[1]),
42002 985 => self.interface_group_group_0(&children[0], &children[1], &children[2]),
42003 986 => self.interface_group_group_list_0(&children[0], &children[1]),
42004 987 => self.interface_group_group_list_1(),
42005 988 => self.interface_group_group_1(&children[0]),
42006 989 => self.interface_group_list_0(&children[0], &children[1]),
42007 990 => self.interface_group_list_1(),
42008 991 => self.interface_item_0(&children[0]),
42009 992 => self.interface_item_1(&children[0]),
42010 993 => self.generate_if_declaration(
42011 &children[0],
42012 &children[1],
42013 &children[2],
42014 &children[3],
42015 &children[4],
42016 ),
42017 994 => self.generate_if_declaration_list_0(
42018 &children[0],
42019 &children[1],
42020 &children[2],
42021 &children[3],
42022 &children[4],
42023 ),
42024 995 => self.generate_if_declaration_list_1(),
42025 996 => self.generate_if_declaration_opt_0(&children[0], &children[1]),
42026 997 => self.generate_if_declaration_opt_1(),
42027 998 => self.generate_for_declaration(
42028 &children[0],
42029 &children[1],
42030 &children[2],
42031 &children[3],
42032 &children[4],
42033 &children[5],
42034 &children[6],
42035 ),
42036 999 => self.generate_for_declaration_opt0_0(&children[0], &children[1], &children[2]),
42037 1000 => self.generate_for_declaration_opt0_1(),
42038 1001 => self.generate_for_declaration_opt_0(&children[0]),
42039 1002 => self.generate_for_declaration_opt_1(),
42040 1003 => self.generate_block_declaration(&children[0]),
42041 1004 => self.generate_named_block(
42042 &children[0],
42043 &children[1],
42044 &children[2],
42045 &children[3],
42046 &children[4],
42047 ),
42048 1005 => self.generate_named_block_list_0(&children[0], &children[1]),
42049 1006 => self.generate_named_block_list_1(),
42050 1007 => self.generate_optional_named_block(
42051 &children[0],
42052 &children[1],
42053 &children[2],
42054 &children[3],
42055 ),
42056 1008 => self.generate_optional_named_block_list_0(&children[0], &children[1]),
42057 1009 => self.generate_optional_named_block_list_1(),
42058 1010 => self.generate_optional_named_block_opt_0(&children[0], &children[1]),
42059 1011 => self.generate_optional_named_block_opt_1(),
42060 1012 => self.generate_group(&children[0], &children[1]),
42061 1013 => self.generate_group_group_0(&children[0], &children[1], &children[2]),
42062 1014 => self.generate_group_group_list_0(&children[0], &children[1]),
42063 1015 => self.generate_group_group_list_1(),
42064 1016 => self.generate_group_group_1(&children[0]),
42065 1017 => self.generate_group_list_0(&children[0], &children[1]),
42066 1018 => self.generate_group_list_1(),
42067 1019 => self.generate_item_0(&children[0]),
42068 1020 => self.generate_item_1(&children[0]),
42069 1021 => self.generate_item_2(&children[0]),
42070 1022 => self.generate_item_3(&children[0]),
42071 1023 => self.generate_item_4(&children[0]),
42072 1024 => self.generate_item_5(&children[0]),
42073 1025 => self.generate_item_6(&children[0]),
42074 1026 => self.generate_item_7(&children[0]),
42075 1027 => self.generate_item_8(&children[0]),
42076 1028 => self.generate_item_9(&children[0]),
42077 1029 => self.generate_item_10(&children[0]),
42078 1030 => self.generate_item_11(&children[0]),
42079 1031 => self.generate_item_12(&children[0]),
42080 1032 => self.generate_item_13(&children[0]),
42081 1033 => self.generate_item_14(&children[0]),
42082 1034 => self.generate_item_15(&children[0]),
42083 1035 => self.generate_item_16(&children[0]),
42084 1036 => self.generate_item_17(&children[0]),
42085 1037 => self.generate_item_18(&children[0]),
42086 1038 => self.generate_item_19(&children[0]),
42087 1039 => self.generate_item_20(&children[0]),
42088 1040 => self.generate_item_21(&children[0]),
42089 1041 => self.package_declaration(
42090 &children[0],
42091 &children[1],
42092 &children[2],
42093 &children[3],
42094 &children[4],
42095 &children[5],
42096 &children[6],
42097 ),
42098 1042 => self.package_declaration_list_0(&children[0], &children[1]),
42099 1043 => self.package_declaration_list_1(),
42100 1044 => self.package_declaration_opt0_0(&children[0], &children[1]),
42101 1045 => self.package_declaration_opt0_1(),
42102 1046 => self.package_declaration_opt_0(&children[0]),
42103 1047 => self.package_declaration_opt_1(),
42104 1048 => self.package_group(&children[0], &children[1]),
42105 1049 => self.package_group_group_0(&children[0], &children[1], &children[2]),
42106 1050 => self.package_group_group_list_0(&children[0], &children[1]),
42107 1051 => self.package_group_group_list_1(),
42108 1052 => self.package_group_group_1(&children[0]),
42109 1053 => self.package_group_list_0(&children[0], &children[1]),
42110 1054 => self.package_group_list_1(),
42111 1055 => self.package_item_0(&children[0]),
42112 1056 => self.package_item_1(&children[0]),
42113 1057 => self.package_item_2(&children[0]),
42114 1058 => self.package_item_3(&children[0]),
42115 1059 => self.package_item_4(&children[0]),
42116 1060 => self.package_item_5(&children[0]),
42117 1061 => self.package_item_6(&children[0]),
42118 1062 => self.package_item_7(&children[0]),
42119 1063 => self.alias_declaration(
42120 &children[0],
42121 &children[1],
42122 &children[2],
42123 &children[3],
42124 &children[4],
42125 &children[5],
42126 ),
42127 1064 => self.alias_declaration_group_0(&children[0]),
42128 1065 => self.alias_declaration_group_1(&children[0]),
42129 1066 => self.alias_declaration_group_2(&children[0]),
42130 1067 => self.proto_declaration(&children[0], &children[1]),
42131 1068 => self.proto_declaration_group_0(&children[0]),
42132 1069 => self.proto_declaration_group_1(&children[0]),
42133 1070 => self.proto_declaration_group_2(&children[0]),
42134 1071 => self.proto_module_declaration(
42135 &children[0],
42136 &children[1],
42137 &children[2],
42138 &children[3],
42139 &children[4],
42140 ),
42141 1072 => self.proto_module_declaration_opt0_0(&children[0]),
42142 1073 => self.proto_module_declaration_opt0_1(),
42143 1074 => self.proto_module_declaration_opt_0(&children[0]),
42144 1075 => self.proto_module_declaration_opt_1(),
42145 1076 => self.proto_interface_declaration(
42146 &children[0],
42147 &children[1],
42148 &children[2],
42149 &children[3],
42150 &children[4],
42151 &children[5],
42152 ),
42153 1077 => self.proto_interface_declaration_list_0(&children[0], &children[1]),
42154 1078 => self.proto_interface_declaration_list_1(),
42155 1079 => self.proto_interface_declaration_opt_0(&children[0]),
42156 1080 => self.proto_interface_declaration_opt_1(),
42157 1081 => self.proto_interface_item_0(&children[0]),
42158 1082 => self.proto_interface_item_1(&children[0]),
42159 1083 => self.proto_interface_item_2(&children[0]),
42160 1084 => self.proto_interface_item_3(&children[0]),
42161 1085 => self.proto_interface_item_4(&children[0]),
42162 1086 => self.proto_interface_item_5(&children[0]),
42163 1087 => self.proto_interface_item_6(&children[0]),
42164 1088 => self.proto_package_declaration(
42165 &children[0],
42166 &children[1],
42167 &children[2],
42168 &children[3],
42169 &children[4],
42170 ),
42171 1089 => self.proto_package_declaration_list_0(&children[0], &children[1]),
42172 1090 => self.proto_package_declaration_list_1(),
42173 1091 => self.proto_pacakge_item_0(&children[0]),
42174 1092 => self.proto_pacakge_item_1(&children[0]),
42175 1093 => self.proto_pacakge_item_2(&children[0]),
42176 1094 => self.proto_pacakge_item_3(&children[0]),
42177 1095 => self.proto_pacakge_item_4(&children[0]),
42178 1096 => self.proto_pacakge_item_5(&children[0]),
42179 1097 => self.proto_pacakge_item_6(&children[0]),
42180 1098 => self.proto_const_declaration(
42181 &children[0],
42182 &children[1],
42183 &children[2],
42184 &children[3],
42185 &children[4],
42186 ),
42187 1099 => self.proto_const_declaration_group_0(&children[0]),
42188 1100 => self.proto_const_declaration_group_1(&children[0]),
42189 1101 => self.proto_type_def_declaration(
42190 &children[0],
42191 &children[1],
42192 &children[2],
42193 &children[3],
42194 ),
42195 1102 => self.proto_type_def_declaration_opt_0(&children[0], &children[1]),
42196 1103 => self.proto_type_def_declaration_opt_1(),
42197 1104 => self.proto_function_declaration(
42198 &children[0],
42199 &children[1],
42200 &children[2],
42201 &children[3],
42202 &children[4],
42203 &children[5],
42204 ),
42205 1105 => self.proto_function_declaration_opt1_0(&children[0], &children[1]),
42206 1106 => self.proto_function_declaration_opt1_1(),
42207 1107 => self.proto_function_declaration_opt0_0(&children[0]),
42208 1108 => self.proto_function_declaration_opt0_1(),
42209 1109 => self.proto_function_declaration_opt_0(&children[0]),
42210 1110 => self.proto_function_declaration_opt_1(),
42211 1111 => self.proto_alias_declaration(
42212 &children[0],
42213 &children[1],
42214 &children[2],
42215 &children[3],
42216 &children[4],
42217 &children[5],
42218 ),
42219 1112 => self.proto_alias_declaration_group_0(&children[0]),
42220 1113 => self.proto_alias_declaration_group_1(&children[0]),
42221 1114 => self.proto_alias_declaration_group_2(&children[0]),
42222 1115 => self.embed_declaration(
42223 &children[0],
42224 &children[1],
42225 &children[2],
42226 &children[3],
42227 &children[4],
42228 &children[5],
42229 ),
42230 1116 => self.embed_content(&children[0], &children[1], &children[2]),
42231 1117 => self.embed_content_list_0(&children[0], &children[1]),
42232 1118 => self.embed_content_list_1(),
42233 1119 => self.embed_scoped_identifier(&children[0], &children[1], &children[2]),
42234 1120 => self.embed_item_0(&children[0], &children[1], &children[2]),
42235 1121 => self.embed_item_list_0(&children[0], &children[1]),
42236 1122 => self.embed_item_list_1(),
42237 1123 => self.embed_item_1(&children[0]),
42238 1124 => self.embed_item_2(&children[0]),
42239 1125 => self.include_declaration(
42240 &children[0],
42241 &children[1],
42242 &children[2],
42243 &children[3],
42244 &children[4],
42245 &children[5],
42246 &children[6],
42247 ),
42248 1126 => self.description_group(&children[0], &children[1]),
42249 1127 => self.description_group_group_0(&children[0], &children[1], &children[2]),
42250 1128 => self.description_group_group_list_0(&children[0], &children[1]),
42251 1129 => self.description_group_group_list_1(),
42252 1130 => self.description_group_group_1(&children[0]),
42253 1131 => self.description_group_list_0(&children[0], &children[1]),
42254 1132 => self.description_group_list_1(),
42255 1133 => self.description_item_0(&children[0], &children[1]),
42256 1134 => self.description_item_1(&children[0]),
42257 1135 => self.description_item_2(&children[0]),
42258 1136 => self.description_item_3(&children[0]),
42259 1137 => self.description_item_4(&children[0]),
42260 1138 => self.description_item_opt_0(&children[0]),
42261 1139 => self.description_item_opt_1(),
42262 1140 => self.public_description_item_0(&children[0]),
42263 1141 => self.public_description_item_1(&children[0]),
42264 1142 => self.public_description_item_2(&children[0]),
42265 1143 => self.public_description_item_3(&children[0]),
42266 1144 => self.public_description_item_4(&children[0]),
42267 1145 => self.public_description_item_5(&children[0]),
42268 1146 => self.veryl(&children[0], &children[1]),
42269 1147 => self.veryl_list_0(&children[0], &children[1]),
42270 1148 => self.veryl_list_1(),
42271 _ => Err(ParserError::InternalError(format!(
42272 "Unhandled production number: {prod_num}"
42273 ))
42274 .into()),
42275 }
42276 }
42277
42278 fn on_comment(&mut self, token: Token<'t>) {
42279 self.user_grammar.on_comment(token)
42280 }
42281}