aboutsummaryrefslogtreecommitdiff
path: root/vendor/tree-sitter-php/src/grammar.json
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2026-01-21 23:45:20 +0100
committerMitja Felicijan <mitja.felicijan@gmail.com>2026-01-21 23:45:20 +0100
commit8ab1da7853f6dd309f2d3677ca109737f929ab4a (patch)
tree8afa3fafa23badd9b99aca51fce05a15ee7c2f48 /vendor/tree-sitter-php/src/grammar.json
parentdcacc00e3750300617ba6e16eb346713f91a783a (diff)
downloadcrep-8ab1da7853f6dd309f2d3677ca109737f929ab4a.tar.gz
Add PHP support
Diffstat (limited to 'vendor/tree-sitter-php/src/grammar.json')
-rw-r--r--vendor/tree-sitter-php/src/grammar.json9242
1 files changed, 9242 insertions, 0 deletions
diff --git a/vendor/tree-sitter-php/src/grammar.json b/vendor/tree-sitter-php/src/grammar.json
new file mode 100644
index 0000000..4b3aa4e
--- /dev/null
+++ b/vendor/tree-sitter-php/src/grammar.json
@@ -0,0 +1,9242 @@
1{
2 "name": "php",
3 "word": "name",
4 "rules": {
5 "program": {
6 "type": "SEQ",
7 "members": [
8 {
9 "type": "CHOICE",
10 "members": [
11 {
12 "type": "SYMBOL",
13 "name": "text"
14 },
15 {
16 "type": "BLANK"
17 }
18 ]
19 },
20 {
21 "type": "CHOICE",
22 "members": [
23 {
24 "type": "SEQ",
25 "members": [
26 {
27 "type": "SYMBOL",
28 "name": "php_tag"
29 },
30 {
31 "type": "REPEAT",
32 "content": {
33 "type": "SYMBOL",
34 "name": "statement"
35 }
36 }
37 ]
38 },
39 {
40 "type": "BLANK"
41 }
42 ]
43 }
44 ]
45 },
46 "php_tag": {
47 "type": "PATTERN",
48 "value": "<\\?([pP][hH][pP]|=)?"
49 },
50 "text_interpolation": {
51 "type": "SEQ",
52 "members": [
53 {
54 "type": "STRING",
55 "value": "?>"
56 },
57 {
58 "type": "CHOICE",
59 "members": [
60 {
61 "type": "SYMBOL",
62 "name": "text"
63 },
64 {
65 "type": "BLANK"
66 }
67 ]
68 },
69 {
70 "type": "CHOICE",
71 "members": [
72 {
73 "type": "SYMBOL",
74 "name": "php_tag"
75 },
76 {
77 "type": "SYMBOL",
78 "name": "_eof"
79 }
80 ]
81 }
82 ]
83 },
84 "text": {
85 "type": "REPEAT1",
86 "content": {
87 "type": "CHOICE",
88 "members": [
89 {
90 "type": "TOKEN",
91 "content": {
92 "type": "PREC",
93 "value": -1,
94 "content": {
95 "type": "PATTERN",
96 "value": "<"
97 }
98 }
99 },
100 {
101 "type": "TOKEN",
102 "content": {
103 "type": "PREC",
104 "value": 1,
105 "content": {
106 "type": "PATTERN",
107 "value": "[^\\s<][^<]*"
108 }
109 }
110 }
111 ]
112 }
113 },
114 "statement": {
115 "type": "CHOICE",
116 "members": [
117 {
118 "type": "SYMBOL",
119 "name": "empty_statement"
120 },
121 {
122 "type": "SYMBOL",
123 "name": "compound_statement"
124 },
125 {
126 "type": "SYMBOL",
127 "name": "named_label_statement"
128 },
129 {
130 "type": "SYMBOL",
131 "name": "expression_statement"
132 },
133 {
134 "type": "SYMBOL",
135 "name": "if_statement"
136 },
137 {
138 "type": "SYMBOL",
139 "name": "switch_statement"
140 },
141 {
142 "type": "SYMBOL",
143 "name": "while_statement"
144 },
145 {
146 "type": "SYMBOL",
147 "name": "do_statement"
148 },
149 {
150 "type": "SYMBOL",
151 "name": "for_statement"
152 },
153 {
154 "type": "SYMBOL",
155 "name": "foreach_statement"
156 },
157 {
158 "type": "SYMBOL",
159 "name": "goto_statement"
160 },
161 {
162 "type": "SYMBOL",
163 "name": "continue_statement"
164 },
165 {
166 "type": "SYMBOL",
167 "name": "break_statement"
168 },
169 {
170 "type": "SYMBOL",
171 "name": "return_statement"
172 },
173 {
174 "type": "SYMBOL",
175 "name": "try_statement"
176 },
177 {
178 "type": "SYMBOL",
179 "name": "declare_statement"
180 },
181 {
182 "type": "SYMBOL",
183 "name": "echo_statement"
184 },
185 {
186 "type": "SYMBOL",
187 "name": "exit_statement"
188 },
189 {
190 "type": "SYMBOL",
191 "name": "unset_statement"
192 },
193 {
194 "type": "SYMBOL",
195 "name": "const_declaration"
196 },
197 {
198 "type": "SYMBOL",
199 "name": "function_definition"
200 },
201 {
202 "type": "SYMBOL",
203 "name": "class_declaration"
204 },
205 {
206 "type": "SYMBOL",
207 "name": "interface_declaration"
208 },
209 {
210 "type": "SYMBOL",
211 "name": "trait_declaration"
212 },
213 {
214 "type": "SYMBOL",
215 "name": "enum_declaration"
216 },
217 {
218 "type": "SYMBOL",
219 "name": "namespace_definition"
220 },
221 {
222 "type": "SYMBOL",
223 "name": "namespace_use_declaration"
224 },
225 {
226 "type": "SYMBOL",
227 "name": "global_declaration"
228 },
229 {
230 "type": "SYMBOL",
231 "name": "function_static_declaration"
232 }
233 ]
234 },
235 "empty_statement": {
236 "type": "PREC",
237 "value": -1,
238 "content": {
239 "type": "STRING",
240 "value": ";"
241 }
242 },
243 "reference_modifier": {
244 "type": "STRING",
245 "value": "&"
246 },
247 "function_static_declaration": {
248 "type": "SEQ",
249 "members": [
250 {
251 "type": "ALIAS",
252 "content": {
253 "type": "PATTERN",
254 "value": "static",
255 "flags": "i"
256 },
257 "named": false,
258 "value": "static"
259 },
260 {
261 "type": "SEQ",
262 "members": [
263 {
264 "type": "SYMBOL",
265 "name": "static_variable_declaration"
266 },
267 {
268 "type": "REPEAT",
269 "content": {
270 "type": "SEQ",
271 "members": [
272 {
273 "type": "STRING",
274 "value": ","
275 },
276 {
277 "type": "SYMBOL",
278 "name": "static_variable_declaration"
279 }
280 ]
281 }
282 }
283 ]
284 },
285 {
286 "type": "SYMBOL",
287 "name": "_semicolon"
288 }
289 ]
290 },
291 "static_variable_declaration": {
292 "type": "SEQ",
293 "members": [
294 {
295 "type": "FIELD",
296 "name": "name",
297 "content": {
298 "type": "SYMBOL",
299 "name": "variable_name"
300 }
301 },
302 {
303 "type": "CHOICE",
304 "members": [
305 {
306 "type": "SEQ",
307 "members": [
308 {
309 "type": "STRING",
310 "value": "="
311 },
312 {
313 "type": "FIELD",
314 "name": "value",
315 "content": {
316 "type": "SYMBOL",
317 "name": "expression"
318 }
319 }
320 ]
321 },
322 {
323 "type": "BLANK"
324 }
325 ]
326 }
327 ]
328 },
329 "global_declaration": {
330 "type": "SEQ",
331 "members": [
332 {
333 "type": "ALIAS",
334 "content": {
335 "type": "PATTERN",
336 "value": "global",
337 "flags": "i"
338 },
339 "named": false,
340 "value": "global"
341 },
342 {
343 "type": "SEQ",
344 "members": [
345 {
346 "type": "SYMBOL",
347 "name": "_simple_variable"
348 },
349 {
350 "type": "REPEAT",
351 "content": {
352 "type": "SEQ",
353 "members": [
354 {
355 "type": "STRING",
356 "value": ","
357 },
358 {
359 "type": "SYMBOL",
360 "name": "_simple_variable"
361 }
362 ]
363 }
364 }
365 ]
366 },
367 {
368 "type": "SYMBOL",
369 "name": "_semicolon"
370 }
371 ]
372 },
373 "namespace_definition": {
374 "type": "SEQ",
375 "members": [
376 {
377 "type": "ALIAS",
378 "content": {
379 "type": "PATTERN",
380 "value": "namespace",
381 "flags": "i"
382 },
383 "named": false,
384 "value": "namespace"
385 },
386 {
387 "type": "CHOICE",
388 "members": [
389 {
390 "type": "SEQ",
391 "members": [
392 {
393 "type": "FIELD",
394 "name": "name",
395 "content": {
396 "type": "SYMBOL",
397 "name": "namespace_name"
398 }
399 },
400 {
401 "type": "SYMBOL",
402 "name": "_semicolon"
403 }
404 ]
405 },
406 {
407 "type": "SEQ",
408 "members": [
409 {
410 "type": "FIELD",
411 "name": "name",
412 "content": {
413 "type": "CHOICE",
414 "members": [
415 {
416 "type": "SYMBOL",
417 "name": "namespace_name"
418 },
419 {
420 "type": "BLANK"
421 }
422 ]
423 }
424 },
425 {
426 "type": "FIELD",
427 "name": "body",
428 "content": {
429 "type": "SYMBOL",
430 "name": "compound_statement"
431 }
432 }
433 ]
434 }
435 ]
436 }
437 ]
438 },
439 "namespace_use_declaration": {
440 "type": "SEQ",
441 "members": [
442 {
443 "type": "ALIAS",
444 "content": {
445 "type": "PATTERN",
446 "value": "use",
447 "flags": "i"
448 },
449 "named": false,
450 "value": "use"
451 },
452 {
453 "type": "CHOICE",
454 "members": [
455 {
456 "type": "SEQ",
457 "members": [
458 {
459 "type": "SYMBOL",
460 "name": "namespace_use_clause"
461 },
462 {
463 "type": "REPEAT",
464 "content": {
465 "type": "SEQ",
466 "members": [
467 {
468 "type": "STRING",
469 "value": ","
470 },
471 {
472 "type": "SYMBOL",
473 "name": "namespace_use_clause"
474 }
475 ]
476 }
477 }
478 ]
479 },
480 {
481 "type": "SYMBOL",
482 "name": "_namespace_use_group"
483 }
484 ]
485 },
486 {
487 "type": "SYMBOL",
488 "name": "_semicolon"
489 }
490 ]
491 },
492 "namespace_use_clause": {
493 "type": "SEQ",
494 "members": [
495 {
496 "type": "FIELD",
497 "name": "type",
498 "content": {
499 "type": "CHOICE",
500 "members": [
501 {
502 "type": "SYMBOL",
503 "name": "_namespace_use_type"
504 },
505 {
506 "type": "BLANK"
507 }
508 ]
509 }
510 },
511 {
512 "type": "SYMBOL",
513 "name": "_name"
514 },
515 {
516 "type": "CHOICE",
517 "members": [
518 {
519 "type": "SEQ",
520 "members": [
521 {
522 "type": "ALIAS",
523 "content": {
524 "type": "PATTERN",
525 "value": "as",
526 "flags": "i"
527 },
528 "named": false,
529 "value": "as"
530 },
531 {
532 "type": "FIELD",
533 "name": "alias",
534 "content": {
535 "type": "SYMBOL",
536 "name": "name"
537 }
538 }
539 ]
540 },
541 {
542 "type": "BLANK"
543 }
544 ]
545 }
546 ]
547 },
548 "_namespace_use_type": {
549 "type": "CHOICE",
550 "members": [
551 {
552 "type": "ALIAS",
553 "content": {
554 "type": "PATTERN",
555 "value": "function",
556 "flags": "i"
557 },
558 "named": false,
559 "value": "function"
560 },
561 {
562 "type": "ALIAS",
563 "content": {
564 "type": "PATTERN",
565 "value": "const",
566 "flags": "i"
567 },
568 "named": false,
569 "value": "const"
570 }
571 ]
572 },
573 "qualified_name": {
574 "type": "SEQ",
575 "members": [
576 {
577 "type": "FIELD",
578 "name": "prefix",
579 "content": {
580 "type": "SEQ",
581 "members": [
582 {
583 "type": "CHOICE",
584 "members": [
585 {
586 "type": "SYMBOL",
587 "name": "namespace_name"
588 },
589 {
590 "type": "BLANK"
591 }
592 ]
593 },
594 {
595 "type": "STRING",
596 "value": "\\"
597 }
598 ]
599 }
600 },
601 {
602 "type": "SYMBOL",
603 "name": "name"
604 }
605 ]
606 },
607 "_name": {
608 "type": "CHOICE",
609 "members": [
610 {
611 "type": "SYMBOL",
612 "name": "_identifier"
613 },
614 {
615 "type": "SYMBOL",
616 "name": "qualified_name"
617 }
618 ]
619 },
620 "namespace_name": {
621 "type": "SEQ",
622 "members": [
623 {
624 "type": "CHOICE",
625 "members": [
626 {
627 "type": "STRING",
628 "value": "\\"
629 },
630 {
631 "type": "BLANK"
632 }
633 ]
634 },
635 {
636 "type": "SYMBOL",
637 "name": "name"
638 },
639 {
640 "type": "REPEAT",
641 "content": {
642 "type": "SEQ",
643 "members": [
644 {
645 "type": "STRING",
646 "value": "\\"
647 },
648 {
649 "type": "SYMBOL",
650 "name": "name"
651 }
652 ]
653 }
654 }
655 ]
656 },
657 "_namespace_use_group": {
658 "type": "SEQ",
659 "members": [
660 {
661 "type": "FIELD",
662 "name": "type",
663 "content": {
664 "type": "CHOICE",
665 "members": [
666 {
667 "type": "SYMBOL",
668 "name": "_namespace_use_type"
669 },
670 {
671 "type": "BLANK"
672 }
673 ]
674 }
675 },
676 {
677 "type": "SYMBOL",
678 "name": "namespace_name"
679 },
680 {
681 "type": "STRING",
682 "value": "\\"
683 },
684 {
685 "type": "FIELD",
686 "name": "body",
687 "content": {
688 "type": "SYMBOL",
689 "name": "namespace_use_group"
690 }
691 }
692 ]
693 },
694 "namespace_use_group": {
695 "type": "SEQ",
696 "members": [
697 {
698 "type": "STRING",
699 "value": "{"
700 },
701 {
702 "type": "SEQ",
703 "members": [
704 {
705 "type": "SYMBOL",
706 "name": "namespace_use_clause"
707 },
708 {
709 "type": "REPEAT",
710 "content": {
711 "type": "SEQ",
712 "members": [
713 {
714 "type": "STRING",
715 "value": ","
716 },
717 {
718 "type": "SYMBOL",
719 "name": "namespace_use_clause"
720 }
721 ]
722 }
723 }
724 ]
725 },
726 {
727 "type": "STRING",
728 "value": "}"
729 }
730 ]
731 },
732 "trait_declaration": {
733 "type": "SEQ",
734 "members": [
735 {
736 "type": "CHOICE",
737 "members": [
738 {
739 "type": "FIELD",
740 "name": "attributes",
741 "content": {
742 "type": "SYMBOL",
743 "name": "attribute_list"
744 }
745 },
746 {
747 "type": "BLANK"
748 }
749 ]
750 },
751 {
752 "type": "ALIAS",
753 "content": {
754 "type": "PATTERN",
755 "value": "trait",
756 "flags": "i"
757 },
758 "named": false,
759 "value": "trait"
760 },
761 {
762 "type": "FIELD",
763 "name": "name",
764 "content": {
765 "type": "SYMBOL",
766 "name": "name"
767 }
768 },
769 {
770 "type": "FIELD",
771 "name": "body",
772 "content": {
773 "type": "SYMBOL",
774 "name": "declaration_list"
775 }
776 }
777 ]
778 },
779 "interface_declaration": {
780 "type": "SEQ",
781 "members": [
782 {
783 "type": "CHOICE",
784 "members": [
785 {
786 "type": "FIELD",
787 "name": "attributes",
788 "content": {
789 "type": "SYMBOL",
790 "name": "attribute_list"
791 }
792 },
793 {
794 "type": "BLANK"
795 }
796 ]
797 },
798 {
799 "type": "ALIAS",
800 "content": {
801 "type": "PATTERN",
802 "value": "interface",
803 "flags": "i"
804 },
805 "named": false,
806 "value": "interface"
807 },
808 {
809 "type": "FIELD",
810 "name": "name",
811 "content": {
812 "type": "SYMBOL",
813 "name": "name"
814 }
815 },
816 {
817 "type": "CHOICE",
818 "members": [
819 {
820 "type": "SYMBOL",
821 "name": "base_clause"
822 },
823 {
824 "type": "BLANK"
825 }
826 ]
827 },
828 {
829 "type": "FIELD",
830 "name": "body",
831 "content": {
832 "type": "SYMBOL",
833 "name": "declaration_list"
834 }
835 }
836 ]
837 },
838 "base_clause": {
839 "type": "SEQ",
840 "members": [
841 {
842 "type": "ALIAS",
843 "content": {
844 "type": "PATTERN",
845 "value": "extends",
846 "flags": "i"
847 },
848 "named": false,
849 "value": "extends"
850 },
851 {
852 "type": "SEQ",
853 "members": [
854 {
855 "type": "SYMBOL",
856 "name": "_name"
857 },
858 {
859 "type": "REPEAT",
860 "content": {
861 "type": "SEQ",
862 "members": [
863 {
864 "type": "STRING",
865 "value": ","
866 },
867 {
868 "type": "SYMBOL",
869 "name": "_name"
870 }
871 ]
872 }
873 }
874 ]
875 }
876 ]
877 },
878 "enum_declaration": {
879 "type": "PREC_RIGHT",
880 "value": 0,
881 "content": {
882 "type": "SEQ",
883 "members": [
884 {
885 "type": "CHOICE",
886 "members": [
887 {
888 "type": "FIELD",
889 "name": "attributes",
890 "content": {
891 "type": "SYMBOL",
892 "name": "attribute_list"
893 }
894 },
895 {
896 "type": "BLANK"
897 }
898 ]
899 },
900 {
901 "type": "ALIAS",
902 "content": {
903 "type": "PATTERN",
904 "value": "enum",
905 "flags": "i"
906 },
907 "named": false,
908 "value": "enum"
909 },
910 {
911 "type": "FIELD",
912 "name": "name",
913 "content": {
914 "type": "SYMBOL",
915 "name": "name"
916 }
917 },
918 {
919 "type": "CHOICE",
920 "members": [
921 {
922 "type": "SEQ",
923 "members": [
924 {
925 "type": "STRING",
926 "value": ":"
927 },
928 {
929 "type": "ALIAS",
930 "content": {
931 "type": "CHOICE",
932 "members": [
933 {
934 "type": "STRING",
935 "value": "string"
936 },
937 {
938 "type": "STRING",
939 "value": "int"
940 }
941 ]
942 },
943 "named": true,
944 "value": "primitive_type"
945 }
946 ]
947 },
948 {
949 "type": "BLANK"
950 }
951 ]
952 },
953 {
954 "type": "CHOICE",
955 "members": [
956 {
957 "type": "SYMBOL",
958 "name": "class_interface_clause"
959 },
960 {
961 "type": "BLANK"
962 }
963 ]
964 },
965 {
966 "type": "FIELD",
967 "name": "body",
968 "content": {
969 "type": "SYMBOL",
970 "name": "enum_declaration_list"
971 }
972 }
973 ]
974 }
975 },
976 "enum_declaration_list": {
977 "type": "SEQ",
978 "members": [
979 {
980 "type": "STRING",
981 "value": "{"
982 },
983 {
984 "type": "REPEAT",
985 "content": {
986 "type": "SYMBOL",
987 "name": "_enum_member_declaration"
988 }
989 },
990 {
991 "type": "STRING",
992 "value": "}"
993 }
994 ]
995 },
996 "_enum_member_declaration": {
997 "type": "CHOICE",
998 "members": [
999 {
1000 "type": "SYMBOL",
1001 "name": "enum_case"
1002 },
1003 {
1004 "type": "SYMBOL",
1005 "name": "method_declaration"
1006 },
1007 {
1008 "type": "SYMBOL",
1009 "name": "use_declaration"
1010 }
1011 ]
1012 },
1013 "enum_case": {
1014 "type": "SEQ",
1015 "members": [
1016 {
1017 "type": "CHOICE",
1018 "members": [
1019 {
1020 "type": "FIELD",
1021 "name": "attributes",
1022 "content": {
1023 "type": "SYMBOL",
1024 "name": "attribute_list"
1025 }
1026 },
1027 {
1028 "type": "BLANK"
1029 }
1030 ]
1031 },
1032 {
1033 "type": "ALIAS",
1034 "content": {
1035 "type": "PATTERN",
1036 "value": "case",
1037 "flags": "i"
1038 },
1039 "named": false,
1040 "value": "case"
1041 },
1042 {
1043 "type": "FIELD",
1044 "name": "name",
1045 "content": {
1046 "type": "SYMBOL",
1047 "name": "name"
1048 }
1049 },
1050 {
1051 "type": "CHOICE",
1052 "members": [
1053 {
1054 "type": "SEQ",
1055 "members": [
1056 {
1057 "type": "STRING",
1058 "value": "="
1059 },
1060 {
1061 "type": "FIELD",
1062 "name": "value",
1063 "content": {
1064 "type": "CHOICE",
1065 "members": [
1066 {
1067 "type": "SYMBOL",
1068 "name": "_string"
1069 },
1070 {
1071 "type": "SYMBOL",
1072 "name": "integer"
1073 }
1074 ]
1075 }
1076 }
1077 ]
1078 },
1079 {
1080 "type": "BLANK"
1081 }
1082 ]
1083 },
1084 {
1085 "type": "SYMBOL",
1086 "name": "_semicolon"
1087 }
1088 ]
1089 },
1090 "class_declaration": {
1091 "type": "PREC_RIGHT",
1092 "value": 0,
1093 "content": {
1094 "type": "SEQ",
1095 "members": [
1096 {
1097 "type": "CHOICE",
1098 "members": [
1099 {
1100 "type": "FIELD",
1101 "name": "attributes",
1102 "content": {
1103 "type": "SYMBOL",
1104 "name": "attribute_list"
1105 }
1106 },
1107 {
1108 "type": "BLANK"
1109 }
1110 ]
1111 },
1112 {
1113 "type": "REPEAT",
1114 "content": {
1115 "type": "SYMBOL",
1116 "name": "_modifier"
1117 }
1118 },
1119 {
1120 "type": "ALIAS",
1121 "content": {
1122 "type": "PATTERN",
1123 "value": "class",
1124 "flags": "i"
1125 },
1126 "named": false,
1127 "value": "class"
1128 },
1129 {
1130 "type": "FIELD",
1131 "name": "name",
1132 "content": {
1133 "type": "SYMBOL",
1134 "name": "name"
1135 }
1136 },
1137 {
1138 "type": "CHOICE",
1139 "members": [
1140 {
1141 "type": "SYMBOL",
1142 "name": "base_clause"
1143 },
1144 {
1145 "type": "BLANK"
1146 }
1147 ]
1148 },
1149 {
1150 "type": "CHOICE",
1151 "members": [
1152 {
1153 "type": "SYMBOL",
1154 "name": "class_interface_clause"
1155 },
1156 {
1157 "type": "BLANK"
1158 }
1159 ]
1160 },
1161 {
1162 "type": "FIELD",
1163 "name": "body",
1164 "content": {
1165 "type": "SYMBOL",
1166 "name": "declaration_list"
1167 }
1168 }
1169 ]
1170 }
1171 },
1172 "declaration_list": {
1173 "type": "SEQ",
1174 "members": [
1175 {
1176 "type": "STRING",
1177 "value": "{"
1178 },
1179 {
1180 "type": "REPEAT",
1181 "content": {
1182 "type": "SYMBOL",
1183 "name": "_member_declaration"
1184 }
1185 },
1186 {
1187 "type": "STRING",
1188 "value": "}"
1189 }
1190 ]
1191 },
1192 "final_modifier": {
1193 "type": "ALIAS",
1194 "content": {
1195 "type": "PATTERN",
1196 "value": "final",
1197 "flags": "i"
1198 },
1199 "named": false,
1200 "value": "final"
1201 },
1202 "abstract_modifier": {
1203 "type": "ALIAS",
1204 "content": {
1205 "type": "PATTERN",
1206 "value": "abstract",
1207 "flags": "i"
1208 },
1209 "named": false,
1210 "value": "abstract"
1211 },
1212 "readonly_modifier": {
1213 "type": "ALIAS",
1214 "content": {
1215 "type": "PATTERN",
1216 "value": "readonly",
1217 "flags": "i"
1218 },
1219 "named": false,
1220 "value": "readonly"
1221 },
1222 "class_interface_clause": {
1223 "type": "SEQ",
1224 "members": [
1225 {
1226 "type": "ALIAS",
1227 "content": {
1228 "type": "PATTERN",
1229 "value": "implements",
1230 "flags": "i"
1231 },
1232 "named": false,
1233 "value": "implements"
1234 },
1235 {
1236 "type": "SEQ",
1237 "members": [
1238 {
1239 "type": "SYMBOL",
1240 "name": "_name"
1241 },
1242 {
1243 "type": "REPEAT",
1244 "content": {
1245 "type": "SEQ",
1246 "members": [
1247 {
1248 "type": "STRING",
1249 "value": ","
1250 },
1251 {
1252 "type": "SYMBOL",
1253 "name": "_name"
1254 }
1255 ]
1256 }
1257 }
1258 ]
1259 }
1260 ]
1261 },
1262 "_member_declaration": {
1263 "type": "CHOICE",
1264 "members": [
1265 {
1266 "type": "ALIAS",
1267 "content": {
1268 "type": "SYMBOL",
1269 "name": "_class_const_declaration"
1270 },
1271 "named": true,
1272 "value": "const_declaration"
1273 },
1274 {
1275 "type": "SYMBOL",
1276 "name": "property_declaration"
1277 },
1278 {
1279 "type": "SYMBOL",
1280 "name": "method_declaration"
1281 },
1282 {
1283 "type": "SYMBOL",
1284 "name": "use_declaration"
1285 }
1286 ]
1287 },
1288 "const_declaration": {
1289 "type": "SYMBOL",
1290 "name": "_const_declaration"
1291 },
1292 "_class_const_declaration": {
1293 "type": "SEQ",
1294 "members": [
1295 {
1296 "type": "CHOICE",
1297 "members": [
1298 {
1299 "type": "FIELD",
1300 "name": "attributes",
1301 "content": {
1302 "type": "SYMBOL",
1303 "name": "attribute_list"
1304 }
1305 },
1306 {
1307 "type": "BLANK"
1308 }
1309 ]
1310 },
1311 {
1312 "type": "CHOICE",
1313 "members": [
1314 {
1315 "type": "SYMBOL",
1316 "name": "final_modifier"
1317 },
1318 {
1319 "type": "BLANK"
1320 }
1321 ]
1322 },
1323 {
1324 "type": "SYMBOL",
1325 "name": "_const_declaration"
1326 }
1327 ]
1328 },
1329 "_const_declaration": {
1330 "type": "SEQ",
1331 "members": [
1332 {
1333 "type": "REPEAT",
1334 "content": {
1335 "type": "SYMBOL",
1336 "name": "_modifier"
1337 }
1338 },
1339 {
1340 "type": "ALIAS",
1341 "content": {
1342 "type": "PATTERN",
1343 "value": "const",
1344 "flags": "i"
1345 },
1346 "named": false,
1347 "value": "const"
1348 },
1349 {
1350 "type": "CHOICE",
1351 "members": [
1352 {
1353 "type": "FIELD",
1354 "name": "type",
1355 "content": {
1356 "type": "SYMBOL",
1357 "name": "type"
1358 }
1359 },
1360 {
1361 "type": "BLANK"
1362 }
1363 ]
1364 },
1365 {
1366 "type": "SEQ",
1367 "members": [
1368 {
1369 "type": "SYMBOL",
1370 "name": "const_element"
1371 },
1372 {
1373 "type": "REPEAT",
1374 "content": {
1375 "type": "SEQ",
1376 "members": [
1377 {
1378 "type": "STRING",
1379 "value": ","
1380 },
1381 {
1382 "type": "SYMBOL",
1383 "name": "const_element"
1384 }
1385 ]
1386 }
1387 }
1388 ]
1389 },
1390 {
1391 "type": "SYMBOL",
1392 "name": "_semicolon"
1393 }
1394 ]
1395 },
1396 "property_declaration": {
1397 "type": "SEQ",
1398 "members": [
1399 {
1400 "type": "CHOICE",
1401 "members": [
1402 {
1403 "type": "FIELD",
1404 "name": "attributes",
1405 "content": {
1406 "type": "SYMBOL",
1407 "name": "attribute_list"
1408 }
1409 },
1410 {
1411 "type": "BLANK"
1412 }
1413 ]
1414 },
1415 {
1416 "type": "REPEAT1",
1417 "content": {
1418 "type": "SYMBOL",
1419 "name": "_modifier"
1420 }
1421 },
1422 {
1423 "type": "CHOICE",
1424 "members": [
1425 {
1426 "type": "FIELD",
1427 "name": "type",
1428 "content": {
1429 "type": "SYMBOL",
1430 "name": "type"
1431 }
1432 },
1433 {
1434 "type": "BLANK"
1435 }
1436 ]
1437 },
1438 {
1439 "type": "SEQ",
1440 "members": [
1441 {
1442 "type": "SYMBOL",
1443 "name": "property_element"
1444 },
1445 {
1446 "type": "REPEAT",
1447 "content": {
1448 "type": "SEQ",
1449 "members": [
1450 {
1451 "type": "STRING",
1452 "value": ","
1453 },
1454 {
1455 "type": "SYMBOL",
1456 "name": "property_element"
1457 }
1458 ]
1459 }
1460 }
1461 ]
1462 },
1463 {
1464 "type": "CHOICE",
1465 "members": [
1466 {
1467 "type": "SYMBOL",
1468 "name": "_semicolon"
1469 },
1470 {
1471 "type": "SYMBOL",
1472 "name": "property_hook_list"
1473 }
1474 ]
1475 }
1476 ]
1477 },
1478 "_modifier": {
1479 "type": "PREC_LEFT",
1480 "value": 0,
1481 "content": {
1482 "type": "CHOICE",
1483 "members": [
1484 {
1485 "type": "SYMBOL",
1486 "name": "var_modifier"
1487 },
1488 {
1489 "type": "SYMBOL",
1490 "name": "visibility_modifier"
1491 },
1492 {
1493 "type": "SYMBOL",
1494 "name": "static_modifier"
1495 },
1496 {
1497 "type": "SYMBOL",
1498 "name": "final_modifier"
1499 },
1500 {
1501 "type": "SYMBOL",
1502 "name": "abstract_modifier"
1503 },
1504 {
1505 "type": "SYMBOL",
1506 "name": "readonly_modifier"
1507 }
1508 ]
1509 }
1510 },
1511 "property_element": {
1512 "type": "SEQ",
1513 "members": [
1514 {
1515 "type": "FIELD",
1516 "name": "name",
1517 "content": {
1518 "type": "SYMBOL",
1519 "name": "variable_name"
1520 }
1521 },
1522 {
1523 "type": "CHOICE",
1524 "members": [
1525 {
1526 "type": "SEQ",
1527 "members": [
1528 {
1529 "type": "STRING",
1530 "value": "="
1531 },
1532 {
1533 "type": "FIELD",
1534 "name": "default_value",
1535 "content": {
1536 "type": "SYMBOL",
1537 "name": "expression"
1538 }
1539 }
1540 ]
1541 },
1542 {
1543 "type": "BLANK"
1544 }
1545 ]
1546 }
1547 ]
1548 },
1549 "property_hook_list": {
1550 "type": "SEQ",
1551 "members": [
1552 {
1553 "type": "STRING",
1554 "value": "{"
1555 },
1556 {
1557 "type": "REPEAT",
1558 "content": {
1559 "type": "SYMBOL",
1560 "name": "property_hook"
1561 }
1562 },
1563 {
1564 "type": "STRING",
1565 "value": "}"
1566 }
1567 ]
1568 },
1569 "property_hook": {
1570 "type": "SEQ",
1571 "members": [
1572 {
1573 "type": "CHOICE",
1574 "members": [
1575 {
1576 "type": "FIELD",
1577 "name": "attributes",
1578 "content": {
1579 "type": "SYMBOL",
1580 "name": "attribute_list"
1581 }
1582 },
1583 {
1584 "type": "BLANK"
1585 }
1586 ]
1587 },
1588 {
1589 "type": "CHOICE",
1590 "members": [
1591 {
1592 "type": "FIELD",
1593 "name": "final",
1594 "content": {
1595 "type": "SYMBOL",
1596 "name": "final_modifier"
1597 }
1598 },
1599 {
1600 "type": "BLANK"
1601 }
1602 ]
1603 },
1604 {
1605 "type": "CHOICE",
1606 "members": [
1607 {
1608 "type": "FIELD",
1609 "name": "reference_modifier",
1610 "content": {
1611 "type": "SYMBOL",
1612 "name": "reference_modifier"
1613 }
1614 },
1615 {
1616 "type": "BLANK"
1617 }
1618 ]
1619 },
1620 {
1621 "type": "SYMBOL",
1622 "name": "name"
1623 },
1624 {
1625 "type": "CHOICE",
1626 "members": [
1627 {
1628 "type": "FIELD",
1629 "name": "parameters",
1630 "content": {
1631 "type": "SYMBOL",
1632 "name": "formal_parameters"
1633 }
1634 },
1635 {
1636 "type": "BLANK"
1637 }
1638 ]
1639 },
1640 {
1641 "type": "SYMBOL",
1642 "name": "_property_hook_body"
1643 }
1644 ]
1645 },
1646 "_property_hook_body": {
1647 "type": "CHOICE",
1648 "members": [
1649 {
1650 "type": "SEQ",
1651 "members": [
1652 {
1653 "type": "STRING",
1654 "value": "=>"
1655 },
1656 {
1657 "type": "FIELD",
1658 "name": "body",
1659 "content": {
1660 "type": "SYMBOL",
1661 "name": "expression"
1662 }
1663 },
1664 {
1665 "type": "SYMBOL",
1666 "name": "_semicolon"
1667 }
1668 ]
1669 },
1670 {
1671 "type": "FIELD",
1672 "name": "body",
1673 "content": {
1674 "type": "SYMBOL",
1675 "name": "compound_statement"
1676 }
1677 },
1678 {
1679 "type": "SYMBOL",
1680 "name": "_semicolon"
1681 }
1682 ]
1683 },
1684 "method_declaration": {
1685 "type": "SEQ",
1686 "members": [
1687 {
1688 "type": "CHOICE",
1689 "members": [
1690 {
1691 "type": "FIELD",
1692 "name": "attributes",
1693 "content": {
1694 "type": "SYMBOL",
1695 "name": "attribute_list"
1696 }
1697 },
1698 {
1699 "type": "BLANK"
1700 }
1701 ]
1702 },
1703 {
1704 "type": "REPEAT",
1705 "content": {
1706 "type": "SYMBOL",
1707 "name": "_modifier"
1708 }
1709 },
1710 {
1711 "type": "SYMBOL",
1712 "name": "_function_definition_header"
1713 },
1714 {
1715 "type": "CHOICE",
1716 "members": [
1717 {
1718 "type": "FIELD",
1719 "name": "body",
1720 "content": {
1721 "type": "SYMBOL",
1722 "name": "compound_statement"
1723 }
1724 },
1725 {
1726 "type": "SYMBOL",
1727 "name": "_semicolon"
1728 }
1729 ]
1730 }
1731 ]
1732 },
1733 "var_modifier": {
1734 "type": "PATTERN",
1735 "value": "var",
1736 "flags": "i"
1737 },
1738 "static_modifier": {
1739 "type": "ALIAS",
1740 "content": {
1741 "type": "PATTERN",
1742 "value": "static",
1743 "flags": "i"
1744 },
1745 "named": false,
1746 "value": "static"
1747 },
1748 "use_declaration": {
1749 "type": "SEQ",
1750 "members": [
1751 {
1752 "type": "ALIAS",
1753 "content": {
1754 "type": "PATTERN",
1755 "value": "use",
1756 "flags": "i"
1757 },
1758 "named": false,
1759 "value": "use"
1760 },
1761 {
1762 "type": "SEQ",
1763 "members": [
1764 {
1765 "type": "SYMBOL",
1766 "name": "_name"
1767 },
1768 {
1769 "type": "REPEAT",
1770 "content": {
1771 "type": "SEQ",
1772 "members": [
1773 {
1774 "type": "STRING",
1775 "value": ","
1776 },
1777 {
1778 "type": "SYMBOL",
1779 "name": "_name"
1780 }
1781 ]
1782 }
1783 }
1784 ]
1785 },
1786 {
1787 "type": "CHOICE",
1788 "members": [
1789 {
1790 "type": "SYMBOL",
1791 "name": "use_list"
1792 },
1793 {
1794 "type": "SYMBOL",
1795 "name": "_semicolon"
1796 }
1797 ]
1798 }
1799 ]
1800 },
1801 "use_list": {
1802 "type": "SEQ",
1803 "members": [
1804 {
1805 "type": "STRING",
1806 "value": "{"
1807 },
1808 {
1809 "type": "REPEAT",
1810 "content": {
1811 "type": "SEQ",
1812 "members": [
1813 {
1814 "type": "CHOICE",
1815 "members": [
1816 {
1817 "type": "SYMBOL",
1818 "name": "use_instead_of_clause"
1819 },
1820 {
1821 "type": "SYMBOL",
1822 "name": "use_as_clause"
1823 }
1824 ]
1825 },
1826 {
1827 "type": "SYMBOL",
1828 "name": "_semicolon"
1829 }
1830 ]
1831 }
1832 },
1833 {
1834 "type": "STRING",
1835 "value": "}"
1836 }
1837 ]
1838 },
1839 "use_instead_of_clause": {
1840 "type": "PREC_LEFT",
1841 "value": 0,
1842 "content": {
1843 "type": "SEQ",
1844 "members": [
1845 {
1846 "type": "SYMBOL",
1847 "name": "class_constant_access_expression"
1848 },
1849 {
1850 "type": "ALIAS",
1851 "content": {
1852 "type": "PATTERN",
1853 "value": "insteadof",
1854 "flags": "i"
1855 },
1856 "named": false,
1857 "value": "insteadof"
1858 },
1859 {
1860 "type": "SYMBOL",
1861 "name": "name"
1862 }
1863 ]
1864 }
1865 },
1866 "use_as_clause": {
1867 "type": "SEQ",
1868 "members": [
1869 {
1870 "type": "CHOICE",
1871 "members": [
1872 {
1873 "type": "SYMBOL",
1874 "name": "class_constant_access_expression"
1875 },
1876 {
1877 "type": "SYMBOL",
1878 "name": "name"
1879 }
1880 ]
1881 },
1882 {
1883 "type": "ALIAS",
1884 "content": {
1885 "type": "PATTERN",
1886 "value": "as",
1887 "flags": "i"
1888 },
1889 "named": false,
1890 "value": "as"
1891 },
1892 {
1893 "type": "CHOICE",
1894 "members": [
1895 {
1896 "type": "SEQ",
1897 "members": [
1898 {
1899 "type": "CHOICE",
1900 "members": [
1901 {
1902 "type": "SYMBOL",
1903 "name": "visibility_modifier"
1904 },
1905 {
1906 "type": "BLANK"
1907 }
1908 ]
1909 },
1910 {
1911 "type": "SYMBOL",
1912 "name": "name"
1913 }
1914 ]
1915 },
1916 {
1917 "type": "SEQ",
1918 "members": [
1919 {
1920 "type": "SYMBOL",
1921 "name": "visibility_modifier"
1922 },
1923 {
1924 "type": "CHOICE",
1925 "members": [
1926 {
1927 "type": "SYMBOL",
1928 "name": "name"
1929 },
1930 {
1931 "type": "BLANK"
1932 }
1933 ]
1934 }
1935 ]
1936 }
1937 ]
1938 }
1939 ]
1940 },
1941 "visibility_modifier": {
1942 "type": "CHOICE",
1943 "members": [
1944 {
1945 "type": "ALIAS",
1946 "content": {
1947 "type": "PATTERN",
1948 "value": "public",
1949 "flags": "i"
1950 },
1951 "named": false,
1952 "value": "public"
1953 },
1954 {
1955 "type": "ALIAS",
1956 "content": {
1957 "type": "PATTERN",
1958 "value": "protected",
1959 "flags": "i"
1960 },
1961 "named": false,
1962 "value": "protected"
1963 },
1964 {
1965 "type": "ALIAS",
1966 "content": {
1967 "type": "PATTERN",
1968 "value": "private",
1969 "flags": "i"
1970 },
1971 "named": false,
1972 "value": "private"
1973 }
1974 ]
1975 },
1976 "function_definition": {
1977 "type": "SEQ",
1978 "members": [
1979 {
1980 "type": "CHOICE",
1981 "members": [
1982 {
1983 "type": "FIELD",
1984 "name": "attributes",
1985 "content": {
1986 "type": "SYMBOL",
1987 "name": "attribute_list"
1988 }
1989 },
1990 {
1991 "type": "BLANK"
1992 }
1993 ]
1994 },
1995 {
1996 "type": "SYMBOL",
1997 "name": "_function_definition_header"
1998 },
1999 {
2000 "type": "FIELD",
2001 "name": "body",
2002 "content": {
2003 "type": "SYMBOL",
2004 "name": "compound_statement"
2005 }
2006 }
2007 ]
2008 },
2009 "_function_definition_header": {
2010 "type": "SEQ",
2011 "members": [
2012 {
2013 "type": "ALIAS",
2014 "content": {
2015 "type": "PATTERN",
2016 "value": "function",
2017 "flags": "i"
2018 },
2019 "named": false,
2020 "value": "function"
2021 },
2022 {
2023 "type": "CHOICE",
2024 "members": [
2025 {
2026 "type": "SYMBOL",
2027 "name": "reference_modifier"
2028 },
2029 {
2030 "type": "BLANK"
2031 }
2032 ]
2033 },
2034 {
2035 "type": "FIELD",
2036 "name": "name",
2037 "content": {
2038 "type": "SYMBOL",
2039 "name": "_identifier"
2040 }
2041 },
2042 {
2043 "type": "FIELD",
2044 "name": "parameters",
2045 "content": {
2046 "type": "SYMBOL",
2047 "name": "formal_parameters"
2048 }
2049 },
2050 {
2051 "type": "CHOICE",
2052 "members": [
2053 {
2054 "type": "SYMBOL",
2055 "name": "_return_type"
2056 },
2057 {
2058 "type": "BLANK"
2059 }
2060 ]
2061 }
2062 ]
2063 },
2064 "anonymous_function": {
2065 "type": "SEQ",
2066 "members": [
2067 {
2068 "type": "SYMBOL",
2069 "name": "_anonymous_function_header"
2070 },
2071 {
2072 "type": "FIELD",
2073 "name": "body",
2074 "content": {
2075 "type": "SYMBOL",
2076 "name": "compound_statement"
2077 }
2078 }
2079 ]
2080 },
2081 "anonymous_function_use_clause": {
2082 "type": "SEQ",
2083 "members": [
2084 {
2085 "type": "ALIAS",
2086 "content": {
2087 "type": "PATTERN",
2088 "value": "use",
2089 "flags": "i"
2090 },
2091 "named": false,
2092 "value": "use"
2093 },
2094 {
2095 "type": "STRING",
2096 "value": "("
2097 },
2098 {
2099 "type": "SEQ",
2100 "members": [
2101 {
2102 "type": "CHOICE",
2103 "members": [
2104 {
2105 "type": "SYMBOL",
2106 "name": "by_ref"
2107 },
2108 {
2109 "type": "SYMBOL",
2110 "name": "variable_name"
2111 }
2112 ]
2113 },
2114 {
2115 "type": "REPEAT",
2116 "content": {
2117 "type": "SEQ",
2118 "members": [
2119 {
2120 "type": "STRING",
2121 "value": ","
2122 },
2123 {
2124 "type": "CHOICE",
2125 "members": [
2126 {
2127 "type": "SYMBOL",
2128 "name": "by_ref"
2129 },
2130 {
2131 "type": "SYMBOL",
2132 "name": "variable_name"
2133 }
2134 ]
2135 }
2136 ]
2137 }
2138 }
2139 ]
2140 },
2141 {
2142 "type": "CHOICE",
2143 "members": [
2144 {
2145 "type": "STRING",
2146 "value": ","
2147 },
2148 {
2149 "type": "BLANK"
2150 }
2151 ]
2152 },
2153 {
2154 "type": "STRING",
2155 "value": ")"
2156 }
2157 ]
2158 },
2159 "_anonymous_function_header": {
2160 "type": "SEQ",
2161 "members": [
2162 {
2163 "type": "CHOICE",
2164 "members": [
2165 {
2166 "type": "FIELD",
2167 "name": "attributes",
2168 "content": {
2169 "type": "SYMBOL",
2170 "name": "attribute_list"
2171 }
2172 },
2173 {
2174 "type": "BLANK"
2175 }
2176 ]
2177 },
2178 {
2179 "type": "CHOICE",
2180 "members": [
2181 {
2182 "type": "FIELD",
2183 "name": "static_modifier",
2184 "content": {
2185 "type": "SYMBOL",
2186 "name": "static_modifier"
2187 }
2188 },
2189 {
2190 "type": "BLANK"
2191 }
2192 ]
2193 },
2194 {
2195 "type": "ALIAS",
2196 "content": {
2197 "type": "PATTERN",
2198 "value": "function",
2199 "flags": "i"
2200 },
2201 "named": false,
2202 "value": "function"
2203 },
2204 {
2205 "type": "CHOICE",
2206 "members": [
2207 {
2208 "type": "FIELD",
2209 "name": "reference_modifier",
2210 "content": {
2211 "type": "SYMBOL",
2212 "name": "reference_modifier"
2213 }
2214 },
2215 {
2216 "type": "BLANK"
2217 }
2218 ]
2219 },
2220 {
2221 "type": "FIELD",
2222 "name": "parameters",
2223 "content": {
2224 "type": "SYMBOL",
2225 "name": "formal_parameters"
2226 }
2227 },
2228 {
2229 "type": "CHOICE",
2230 "members": [
2231 {
2232 "type": "SYMBOL",
2233 "name": "anonymous_function_use_clause"
2234 },
2235 {
2236 "type": "BLANK"
2237 }
2238 ]
2239 },
2240 {
2241 "type": "CHOICE",
2242 "members": [
2243 {
2244 "type": "SYMBOL",
2245 "name": "_return_type"
2246 },
2247 {
2248 "type": "BLANK"
2249 }
2250 ]
2251 }
2252 ]
2253 },
2254 "_arrow_function_header": {
2255 "type": "SEQ",
2256 "members": [
2257 {
2258 "type": "CHOICE",
2259 "members": [
2260 {
2261 "type": "FIELD",
2262 "name": "attributes",
2263 "content": {
2264 "type": "SYMBOL",
2265 "name": "attribute_list"
2266 }
2267 },
2268 {
2269 "type": "BLANK"
2270 }
2271 ]
2272 },
2273 {
2274 "type": "CHOICE",
2275 "members": [
2276 {
2277 "type": "FIELD",
2278 "name": "static_modifier",
2279 "content": {
2280 "type": "SYMBOL",
2281 "name": "static_modifier"
2282 }
2283 },
2284 {
2285 "type": "BLANK"
2286 }
2287 ]
2288 },
2289 {
2290 "type": "ALIAS",
2291 "content": {
2292 "type": "PATTERN",
2293 "value": "fn",
2294 "flags": "i"
2295 },
2296 "named": false,
2297 "value": "fn"
2298 },
2299 {
2300 "type": "CHOICE",
2301 "members": [
2302 {
2303 "type": "FIELD",
2304 "name": "reference_modifier",
2305 "content": {
2306 "type": "SYMBOL",
2307 "name": "reference_modifier"
2308 }
2309 },
2310 {
2311 "type": "BLANK"
2312 }
2313 ]
2314 },
2315 {
2316 "type": "FIELD",
2317 "name": "parameters",
2318 "content": {
2319 "type": "SYMBOL",
2320 "name": "formal_parameters"
2321 }
2322 },
2323 {
2324 "type": "CHOICE",
2325 "members": [
2326 {
2327 "type": "SYMBOL",
2328 "name": "_return_type"
2329 },
2330 {
2331 "type": "BLANK"
2332 }
2333 ]
2334 }
2335 ]
2336 },
2337 "arrow_function": {
2338 "type": "SEQ",
2339 "members": [
2340 {
2341 "type": "SYMBOL",
2342 "name": "_arrow_function_header"
2343 },
2344 {
2345 "type": "STRING",
2346 "value": "=>"
2347 },
2348 {
2349 "type": "FIELD",
2350 "name": "body",
2351 "content": {
2352 "type": "SYMBOL",
2353 "name": "expression"
2354 }
2355 }
2356 ]
2357 },
2358 "formal_parameters": {
2359 "type": "SEQ",
2360 "members": [
2361 {
2362 "type": "STRING",
2363 "value": "("
2364 },
2365 {
2366 "type": "CHOICE",
2367 "members": [
2368 {
2369 "type": "SEQ",
2370 "members": [
2371 {
2372 "type": "CHOICE",
2373 "members": [
2374 {
2375 "type": "SYMBOL",
2376 "name": "simple_parameter"
2377 },
2378 {
2379 "type": "SYMBOL",
2380 "name": "variadic_parameter"
2381 },
2382 {
2383 "type": "SYMBOL",
2384 "name": "property_promotion_parameter"
2385 }
2386 ]
2387 },
2388 {
2389 "type": "REPEAT",
2390 "content": {
2391 "type": "SEQ",
2392 "members": [
2393 {
2394 "type": "STRING",
2395 "value": ","
2396 },
2397 {
2398 "type": "CHOICE",
2399 "members": [
2400 {
2401 "type": "SYMBOL",
2402 "name": "simple_parameter"
2403 },
2404 {
2405 "type": "SYMBOL",
2406 "name": "variadic_parameter"
2407 },
2408 {
2409 "type": "SYMBOL",
2410 "name": "property_promotion_parameter"
2411 }
2412 ]
2413 }
2414 ]
2415 }
2416 }
2417 ]
2418 },
2419 {
2420 "type": "BLANK"
2421 }
2422 ]
2423 },
2424 {
2425 "type": "CHOICE",
2426 "members": [
2427 {
2428 "type": "STRING",
2429 "value": ","
2430 },
2431 {
2432 "type": "BLANK"
2433 }
2434 ]
2435 },
2436 {
2437 "type": "STRING",
2438 "value": ")"
2439 }
2440 ]
2441 },
2442 "property_promotion_parameter": {
2443 "type": "SEQ",
2444 "members": [
2445 {
2446 "type": "CHOICE",
2447 "members": [
2448 {
2449 "type": "FIELD",
2450 "name": "attributes",
2451 "content": {
2452 "type": "SYMBOL",
2453 "name": "attribute_list"
2454 }
2455 },
2456 {
2457 "type": "BLANK"
2458 }
2459 ]
2460 },
2461 {
2462 "type": "FIELD",
2463 "name": "visibility",
2464 "content": {
2465 "type": "SYMBOL",
2466 "name": "visibility_modifier"
2467 }
2468 },
2469 {
2470 "type": "FIELD",
2471 "name": "readonly",
2472 "content": {
2473 "type": "CHOICE",
2474 "members": [
2475 {
2476 "type": "SYMBOL",
2477 "name": "readonly_modifier"
2478 },
2479 {
2480 "type": "BLANK"
2481 }
2482 ]
2483 }
2484 },
2485 {
2486 "type": "FIELD",
2487 "name": "type",
2488 "content": {
2489 "type": "CHOICE",
2490 "members": [
2491 {
2492 "type": "SYMBOL",
2493 "name": "type"
2494 },
2495 {
2496 "type": "BLANK"
2497 }
2498 ]
2499 }
2500 },
2501 {
2502 "type": "FIELD",
2503 "name": "name",
2504 "content": {
2505 "type": "CHOICE",
2506 "members": [
2507 {
2508 "type": "SYMBOL",
2509 "name": "by_ref"
2510 },
2511 {
2512 "type": "SYMBOL",
2513 "name": "variable_name"
2514 }
2515 ]
2516 }
2517 },
2518 {
2519 "type": "CHOICE",
2520 "members": [
2521 {
2522 "type": "SEQ",
2523 "members": [
2524 {
2525 "type": "STRING",
2526 "value": "="
2527 },
2528 {
2529 "type": "FIELD",
2530 "name": "default_value",
2531 "content": {
2532 "type": "SYMBOL",
2533 "name": "expression"
2534 }
2535 }
2536 ]
2537 },
2538 {
2539 "type": "BLANK"
2540 }
2541 ]
2542 },
2543 {
2544 "type": "CHOICE",
2545 "members": [
2546 {
2547 "type": "SYMBOL",
2548 "name": "property_hook_list"
2549 },
2550 {
2551 "type": "BLANK"
2552 }
2553 ]
2554 }
2555 ]
2556 },
2557 "simple_parameter": {
2558 "type": "SEQ",
2559 "members": [
2560 {
2561 "type": "CHOICE",
2562 "members": [
2563 {
2564 "type": "FIELD",
2565 "name": "attributes",
2566 "content": {
2567 "type": "SYMBOL",
2568 "name": "attribute_list"
2569 }
2570 },
2571 {
2572 "type": "BLANK"
2573 }
2574 ]
2575 },
2576 {
2577 "type": "FIELD",
2578 "name": "type",
2579 "content": {
2580 "type": "CHOICE",
2581 "members": [
2582 {
2583 "type": "SYMBOL",
2584 "name": "type"
2585 },
2586 {
2587 "type": "BLANK"
2588 }
2589 ]
2590 }
2591 },
2592 {
2593 "type": "CHOICE",
2594 "members": [
2595 {
2596 "type": "FIELD",
2597 "name": "reference_modifier",
2598 "content": {
2599 "type": "SYMBOL",
2600 "name": "reference_modifier"
2601 }
2602 },
2603 {
2604 "type": "BLANK"
2605 }
2606 ]
2607 },
2608 {
2609 "type": "FIELD",
2610 "name": "name",
2611 "content": {
2612 "type": "SYMBOL",
2613 "name": "variable_name"
2614 }
2615 },
2616 {
2617 "type": "CHOICE",
2618 "members": [
2619 {
2620 "type": "SEQ",
2621 "members": [
2622 {
2623 "type": "STRING",
2624 "value": "="
2625 },
2626 {
2627 "type": "FIELD",
2628 "name": "default_value",
2629 "content": {
2630 "type": "SYMBOL",
2631 "name": "expression"
2632 }
2633 }
2634 ]
2635 },
2636 {
2637 "type": "BLANK"
2638 }
2639 ]
2640 }
2641 ]
2642 },
2643 "variadic_parameter": {
2644 "type": "SEQ",
2645 "members": [
2646 {
2647 "type": "CHOICE",
2648 "members": [
2649 {
2650 "type": "FIELD",
2651 "name": "attributes",
2652 "content": {
2653 "type": "SYMBOL",
2654 "name": "attribute_list"
2655 }
2656 },
2657 {
2658 "type": "BLANK"
2659 }
2660 ]
2661 },
2662 {
2663 "type": "FIELD",
2664 "name": "type",
2665 "content": {
2666 "type": "CHOICE",
2667 "members": [
2668 {
2669 "type": "SYMBOL",
2670 "name": "type"
2671 },
2672 {
2673 "type": "BLANK"
2674 }
2675 ]
2676 }
2677 },
2678 {
2679 "type": "CHOICE",
2680 "members": [
2681 {
2682 "type": "FIELD",
2683 "name": "reference_modifier",
2684 "content": {
2685 "type": "SYMBOL",
2686 "name": "reference_modifier"
2687 }
2688 },
2689 {
2690 "type": "BLANK"
2691 }
2692 ]
2693 },
2694 {
2695 "type": "STRING",
2696 "value": "..."
2697 },
2698 {
2699 "type": "FIELD",
2700 "name": "name",
2701 "content": {
2702 "type": "SYMBOL",
2703 "name": "variable_name"
2704 }
2705 }
2706 ]
2707 },
2708 "type": {
2709 "type": "CHOICE",
2710 "members": [
2711 {
2712 "type": "SYMBOL",
2713 "name": "_types"
2714 },
2715 {
2716 "type": "SYMBOL",
2717 "name": "union_type"
2718 },
2719 {
2720 "type": "SYMBOL",
2721 "name": "intersection_type"
2722 },
2723 {
2724 "type": "SYMBOL",
2725 "name": "disjunctive_normal_form_type"
2726 }
2727 ]
2728 },
2729 "_types": {
2730 "type": "CHOICE",
2731 "members": [
2732 {
2733 "type": "SYMBOL",
2734 "name": "optional_type"
2735 },
2736 {
2737 "type": "SYMBOL",
2738 "name": "named_type"
2739 },
2740 {
2741 "type": "SYMBOL",
2742 "name": "primitive_type"
2743 }
2744 ]
2745 },
2746 "named_type": {
2747 "type": "CHOICE",
2748 "members": [
2749 {
2750 "type": "SYMBOL",
2751 "name": "name"
2752 },
2753 {
2754 "type": "SYMBOL",
2755 "name": "qualified_name"
2756 }
2757 ]
2758 },
2759 "optional_type": {
2760 "type": "SEQ",
2761 "members": [
2762 {
2763 "type": "STRING",
2764 "value": "?"
2765 },
2766 {
2767 "type": "CHOICE",
2768 "members": [
2769 {
2770 "type": "SYMBOL",
2771 "name": "named_type"
2772 },
2773 {
2774 "type": "SYMBOL",
2775 "name": "primitive_type"
2776 }
2777 ]
2778 }
2779 ]
2780 },
2781 "bottom_type": {
2782 "type": "STRING",
2783 "value": "never"
2784 },
2785 "union_type": {
2786 "type": "SEQ",
2787 "members": [
2788 {
2789 "type": "SYMBOL",
2790 "name": "_types"
2791 },
2792 {
2793 "type": "REPEAT",
2794 "content": {
2795 "type": "SEQ",
2796 "members": [
2797 {
2798 "type": "STRING",
2799 "value": "|"
2800 },
2801 {
2802 "type": "SYMBOL",
2803 "name": "_types"
2804 }
2805 ]
2806 }
2807 }
2808 ]
2809 },
2810 "intersection_type": {
2811 "type": "SEQ",
2812 "members": [
2813 {
2814 "type": "SYMBOL",
2815 "name": "_types"
2816 },
2817 {
2818 "type": "REPEAT",
2819 "content": {
2820 "type": "SEQ",
2821 "members": [
2822 {
2823 "type": "TOKEN",
2824 "content": {
2825 "type": "STRING",
2826 "value": "&"
2827 }
2828 },
2829 {
2830 "type": "SYMBOL",
2831 "name": "_types"
2832 }
2833 ]
2834 }
2835 }
2836 ]
2837 },
2838 "disjunctive_normal_form_type": {
2839 "type": "PREC_DYNAMIC",
2840 "value": -1,
2841 "content": {
2842 "type": "SEQ",
2843 "members": [
2844 {
2845 "type": "CHOICE",
2846 "members": [
2847 {
2848 "type": "SEQ",
2849 "members": [
2850 {
2851 "type": "STRING",
2852 "value": "("
2853 },
2854 {
2855 "type": "SYMBOL",
2856 "name": "intersection_type"
2857 },
2858 {
2859 "type": "STRING",
2860 "value": ")"
2861 }
2862 ]
2863 },
2864 {
2865 "type": "SYMBOL",
2866 "name": "_types"
2867 }
2868 ]
2869 },
2870 {
2871 "type": "REPEAT",
2872 "content": {
2873 "type": "SEQ",
2874 "members": [
2875 {
2876 "type": "STRING",
2877 "value": "|"
2878 },
2879 {
2880 "type": "CHOICE",
2881 "members": [
2882 {
2883 "type": "SEQ",
2884 "members": [
2885 {
2886 "type": "STRING",
2887 "value": "("
2888 },
2889 {
2890 "type": "SYMBOL",
2891 "name": "intersection_type"
2892 },
2893 {
2894 "type": "STRING",
2895 "value": ")"
2896 }
2897 ]
2898 },
2899 {
2900 "type": "SYMBOL",
2901 "name": "_types"
2902 }
2903 ]
2904 }
2905 ]
2906 }
2907 }
2908 ]
2909 }
2910 },
2911 "primitive_type": {
2912 "type": "CHOICE",
2913 "members": [
2914 {
2915 "type": "STRING",
2916 "value": "array"
2917 },
2918 {
2919 "type": "ALIAS",
2920 "content": {
2921 "type": "PATTERN",
2922 "value": "callable",
2923 "flags": "i"
2924 },
2925 "named": false,
2926 "value": "callable"
2927 },
2928 {
2929 "type": "STRING",
2930 "value": "iterable"
2931 },
2932 {
2933 "type": "STRING",
2934 "value": "bool"
2935 },
2936 {
2937 "type": "STRING",
2938 "value": "float"
2939 },
2940 {
2941 "type": "STRING",
2942 "value": "int"
2943 },
2944 {
2945 "type": "STRING",
2946 "value": "string"
2947 },
2948 {
2949 "type": "STRING",
2950 "value": "void"
2951 },
2952 {
2953 "type": "STRING",
2954 "value": "mixed"
2955 },
2956 {
2957 "type": "STRING",
2958 "value": "false"
2959 },
2960 {
2961 "type": "STRING",
2962 "value": "null"
2963 },
2964 {
2965 "type": "STRING",
2966 "value": "true"
2967 }
2968 ]
2969 },
2970 "cast_type": {
2971 "type": "CHOICE",
2972 "members": [
2973 {
2974 "type": "PATTERN",
2975 "value": "array",
2976 "flags": "i"
2977 },
2978 {
2979 "type": "PATTERN",
2980 "value": "binary",
2981 "flags": "i"
2982 },
2983 {
2984 "type": "PATTERN",
2985 "value": "bool",
2986 "flags": "i"
2987 },
2988 {
2989 "type": "PATTERN",
2990 "value": "boolean",
2991 "flags": "i"
2992 },
2993 {
2994 "type": "PATTERN",
2995 "value": "double",
2996 "flags": "i"
2997 },
2998 {
2999 "type": "PATTERN",
3000 "value": "int",
3001 "flags": "i"
3002 },
3003 {
3004 "type": "PATTERN",
3005 "value": "integer",
3006 "flags": "i"
3007 },
3008 {
3009 "type": "PATTERN",
3010 "value": "float",
3011 "flags": "i"
3012 },
3013 {
3014 "type": "PATTERN",
3015 "value": "object",
3016 "flags": "i"
3017 },
3018 {
3019 "type": "PATTERN",
3020 "value": "real",
3021 "flags": "i"
3022 },
3023 {
3024 "type": "PATTERN",
3025 "value": "string",
3026 "flags": "i"
3027 },
3028 {
3029 "type": "PATTERN",
3030 "value": "unset",
3031 "flags": "i"
3032 }
3033 ]
3034 },
3035 "_return_type": {
3036 "type": "SEQ",
3037 "members": [
3038 {
3039 "type": "STRING",
3040 "value": ":"
3041 },
3042 {
3043 "type": "FIELD",
3044 "name": "return_type",
3045 "content": {
3046 "type": "CHOICE",
3047 "members": [
3048 {
3049 "type": "SYMBOL",
3050 "name": "type"
3051 },
3052 {
3053 "type": "SYMBOL",
3054 "name": "bottom_type"
3055 }
3056 ]
3057 }
3058 }
3059 ]
3060 },
3061 "const_element": {
3062 "type": "SEQ",
3063 "members": [
3064 {
3065 "type": "SYMBOL",
3066 "name": "_identifier"
3067 },
3068 {
3069 "type": "STRING",
3070 "value": "="
3071 },
3072 {
3073 "type": "SYMBOL",
3074 "name": "expression"
3075 }
3076 ]
3077 },
3078 "echo_statement": {
3079 "type": "SEQ",
3080 "members": [
3081 {
3082 "type": "ALIAS",
3083 "content": {
3084 "type": "PATTERN",
3085 "value": "echo",
3086 "flags": "i"
3087 },
3088 "named": false,
3089 "value": "echo"
3090 },
3091 {
3092 "type": "SYMBOL",
3093 "name": "_expressions"
3094 },
3095 {
3096 "type": "SYMBOL",
3097 "name": "_semicolon"
3098 }
3099 ]
3100 },
3101 "exit_statement": {
3102 "type": "SEQ",
3103 "members": [
3104 {
3105 "type": "ALIAS",
3106 "content": {
3107 "type": "PATTERN",
3108 "value": "exit",
3109 "flags": "i"
3110 },
3111 "named": false,
3112 "value": "exit"
3113 },
3114 {
3115 "type": "CHOICE",
3116 "members": [
3117 {
3118 "type": "SEQ",
3119 "members": [
3120 {
3121 "type": "STRING",
3122 "value": "("
3123 },
3124 {
3125 "type": "CHOICE",
3126 "members": [
3127 {
3128 "type": "SYMBOL",
3129 "name": "expression"
3130 },
3131 {
3132 "type": "BLANK"
3133 }
3134 ]
3135 },
3136 {
3137 "type": "STRING",
3138 "value": ")"
3139 }
3140 ]
3141 },
3142 {
3143 "type": "BLANK"
3144 }
3145 ]
3146 },
3147 {
3148 "type": "SYMBOL",
3149 "name": "_semicolon"
3150 }
3151 ]
3152 },
3153 "unset_statement": {
3154 "type": "SEQ",
3155 "members": [
3156 {
3157 "type": "STRING",
3158 "value": "unset"
3159 },
3160 {
3161 "type": "STRING",
3162 "value": "("
3163 },
3164 {
3165 "type": "SEQ",
3166 "members": [
3167 {
3168 "type": "SYMBOL",
3169 "name": "_variable"
3170 },
3171 {
3172 "type": "REPEAT",
3173 "content": {
3174 "type": "SEQ",
3175 "members": [
3176 {
3177 "type": "STRING",
3178 "value": ","
3179 },
3180 {
3181 "type": "SYMBOL",
3182 "name": "_variable"
3183 }
3184 ]
3185 }
3186 }
3187 ]
3188 },
3189 {
3190 "type": "CHOICE",
3191 "members": [
3192 {
3193 "type": "STRING",
3194 "value": ","
3195 },
3196 {
3197 "type": "BLANK"
3198 }
3199 ]
3200 },
3201 {
3202 "type": "STRING",
3203 "value": ")"
3204 },
3205 {
3206 "type": "SYMBOL",
3207 "name": "_semicolon"
3208 }
3209 ]
3210 },
3211 "declare_statement": {
3212 "type": "SEQ",
3213 "members": [
3214 {
3215 "type": "ALIAS",
3216 "content": {
3217 "type": "PATTERN",
3218 "value": "declare",
3219 "flags": "i"
3220 },
3221 "named": false,
3222 "value": "declare"
3223 },
3224 {
3225 "type": "STRING",
3226 "value": "("
3227 },
3228 {
3229 "type": "SYMBOL",
3230 "name": "declare_directive"
3231 },
3232 {
3233 "type": "STRING",
3234 "value": ")"
3235 },
3236 {
3237 "type": "CHOICE",
3238 "members": [
3239 {
3240 "type": "SYMBOL",
3241 "name": "statement"
3242 },
3243 {
3244 "type": "SYMBOL",
3245 "name": "_semicolon"
3246 },
3247 {
3248 "type": "SEQ",
3249 "members": [
3250 {
3251 "type": "STRING",
3252 "value": ":"
3253 },
3254 {
3255 "type": "REPEAT",
3256 "content": {
3257 "type": "SYMBOL",
3258 "name": "statement"
3259 }
3260 },
3261 {
3262 "type": "ALIAS",
3263 "content": {
3264 "type": "PATTERN",
3265 "value": "enddeclare",
3266 "flags": "i"
3267 },
3268 "named": false,
3269 "value": "enddeclare"
3270 },
3271 {
3272 "type": "SYMBOL",
3273 "name": "_semicolon"
3274 }
3275 ]
3276 }
3277 ]
3278 }
3279 ]
3280 },
3281 "declare_directive": {
3282 "type": "SEQ",
3283 "members": [
3284 {
3285 "type": "CHOICE",
3286 "members": [
3287 {
3288 "type": "STRING",
3289 "value": "ticks"
3290 },
3291 {
3292 "type": "STRING",
3293 "value": "encoding"
3294 },
3295 {
3296 "type": "STRING",
3297 "value": "strict_types"
3298 }
3299 ]
3300 },
3301 {
3302 "type": "STRING",
3303 "value": "="
3304 },
3305 {
3306 "type": "SYMBOL",
3307 "name": "literal"
3308 }
3309 ]
3310 },
3311 "literal": {
3312 "type": "CHOICE",
3313 "members": [
3314 {
3315 "type": "SYMBOL",
3316 "name": "integer"
3317 },
3318 {
3319 "type": "SYMBOL",
3320 "name": "float"
3321 },
3322 {
3323 "type": "SYMBOL",
3324 "name": "_string"
3325 },
3326 {
3327 "type": "SYMBOL",
3328 "name": "boolean"
3329 },
3330 {
3331 "type": "SYMBOL",
3332 "name": "null"
3333 }
3334 ]
3335 },
3336 "float": {
3337 "type": "PATTERN",
3338 "value": "\\d*(_\\d+)*((\\.\\d*(_\\d+)*)?([eE][\\+-]?\\d+(_\\d+)*)|(\\.\\d*(_\\d+)*)([eE][\\+-]?\\d+(_\\d+)*)?)"
3339 },
3340 "try_statement": {
3341 "type": "SEQ",
3342 "members": [
3343 {
3344 "type": "ALIAS",
3345 "content": {
3346 "type": "PATTERN",
3347 "value": "try",
3348 "flags": "i"
3349 },
3350 "named": false,
3351 "value": "try"
3352 },
3353 {
3354 "type": "FIELD",
3355 "name": "body",
3356 "content": {
3357 "type": "SYMBOL",
3358 "name": "compound_statement"
3359 }
3360 },
3361 {
3362 "type": "REPEAT1",
3363 "content": {
3364 "type": "CHOICE",
3365 "members": [
3366 {
3367 "type": "SYMBOL",
3368 "name": "catch_clause"
3369 },
3370 {
3371 "type": "SYMBOL",
3372 "name": "finally_clause"
3373 }
3374 ]
3375 }
3376 }
3377 ]
3378 },
3379 "catch_clause": {
3380 "type": "SEQ",
3381 "members": [
3382 {
3383 "type": "ALIAS",
3384 "content": {
3385 "type": "PATTERN",
3386 "value": "catch",
3387 "flags": "i"
3388 },
3389 "named": false,
3390 "value": "catch"
3391 },
3392 {
3393 "type": "STRING",
3394 "value": "("
3395 },
3396 {
3397 "type": "FIELD",
3398 "name": "type",
3399 "content": {
3400 "type": "SYMBOL",
3401 "name": "type_list"
3402 }
3403 },
3404 {
3405 "type": "CHOICE",
3406 "members": [
3407 {
3408 "type": "FIELD",
3409 "name": "name",
3410 "content": {
3411 "type": "SYMBOL",
3412 "name": "variable_name"
3413 }
3414 },
3415 {
3416 "type": "BLANK"
3417 }
3418 ]
3419 },
3420 {
3421 "type": "STRING",
3422 "value": ")"
3423 },
3424 {
3425 "type": "FIELD",
3426 "name": "body",
3427 "content": {
3428 "type": "SYMBOL",
3429 "name": "compound_statement"
3430 }
3431 }
3432 ]
3433 },
3434 "type_list": {
3435 "type": "SEQ",
3436 "members": [
3437 {
3438 "type": "SYMBOL",
3439 "name": "named_type"
3440 },
3441 {
3442 "type": "REPEAT",
3443 "content": {
3444 "type": "SEQ",
3445 "members": [
3446 {
3447 "type": "STRING",
3448 "value": "|"
3449 },
3450 {
3451 "type": "SYMBOL",
3452 "name": "named_type"
3453 }
3454 ]
3455 }
3456 }
3457 ]
3458 },
3459 "finally_clause": {
3460 "type": "SEQ",
3461 "members": [
3462 {
3463 "type": "ALIAS",
3464 "content": {
3465 "type": "PATTERN",
3466 "value": "finally",
3467 "flags": "i"
3468 },
3469 "named": false,
3470 "value": "finally"
3471 },
3472 {
3473 "type": "FIELD",
3474 "name": "body",
3475 "content": {
3476 "type": "SYMBOL",
3477 "name": "compound_statement"
3478 }
3479 }
3480 ]
3481 },
3482 "goto_statement": {
3483 "type": "SEQ",
3484 "members": [
3485 {
3486 "type": "ALIAS",
3487 "content": {
3488 "type": "PATTERN",
3489 "value": "goto",
3490 "flags": "i"
3491 },
3492 "named": false,
3493 "value": "goto"
3494 },
3495 {
3496 "type": "SYMBOL",
3497 "name": "name"
3498 },
3499 {
3500 "type": "SYMBOL",
3501 "name": "_semicolon"
3502 }
3503 ]
3504 },
3505 "continue_statement": {
3506 "type": "SEQ",
3507 "members": [
3508 {
3509 "type": "ALIAS",
3510 "content": {
3511 "type": "PATTERN",
3512 "value": "continue",
3513 "flags": "i"
3514 },
3515 "named": false,
3516 "value": "continue"
3517 },
3518 {
3519 "type": "CHOICE",
3520 "members": [
3521 {
3522 "type": "SYMBOL",
3523 "name": "expression"
3524 },
3525 {
3526 "type": "BLANK"
3527 }
3528 ]
3529 },
3530 {
3531 "type": "SYMBOL",
3532 "name": "_semicolon"
3533 }
3534 ]
3535 },
3536 "break_statement": {
3537 "type": "SEQ",
3538 "members": [
3539 {
3540 "type": "ALIAS",
3541 "content": {
3542 "type": "PATTERN",
3543 "value": "break",
3544 "flags": "i"
3545 },
3546 "named": false,
3547 "value": "break"
3548 },
3549 {
3550 "type": "CHOICE",
3551 "members": [
3552 {
3553 "type": "SYMBOL",
3554 "name": "expression"
3555 },
3556 {
3557 "type": "BLANK"
3558 }
3559 ]
3560 },
3561 {
3562 "type": "SYMBOL",
3563 "name": "_semicolon"
3564 }
3565 ]
3566 },
3567 "integer": {
3568 "type": "TOKEN",
3569 "content": {
3570 "type": "CHOICE",
3571 "members": [
3572 {
3573 "type": "PATTERN",
3574 "value": "[1-9]\\d*(_\\d+)*"
3575 },
3576 {
3577 "type": "PATTERN",
3578 "value": "0[oO]?[0-7]*(_[0-7]+)*"
3579 },
3580 {
3581 "type": "PATTERN",
3582 "value": "0[xX][0-9a-fA-F]+(_[0-9a-fA-F]+)*"
3583 },
3584 {
3585 "type": "PATTERN",
3586 "value": "0[bB][01]+(_[01]+)*"
3587 }
3588 ]
3589 }
3590 },
3591 "return_statement": {
3592 "type": "SEQ",
3593 "members": [
3594 {
3595 "type": "ALIAS",
3596 "content": {
3597 "type": "PATTERN",
3598 "value": "return",
3599 "flags": "i"
3600 },
3601 "named": false,
3602 "value": "return"
3603 },
3604 {
3605 "type": "CHOICE",
3606 "members": [
3607 {
3608 "type": "SYMBOL",
3609 "name": "expression"
3610 },
3611 {
3612 "type": "BLANK"
3613 }
3614 ]
3615 },
3616 {
3617 "type": "SYMBOL",
3618 "name": "_semicolon"
3619 }
3620 ]
3621 },
3622 "throw_expression": {
3623 "type": "SEQ",
3624 "members": [
3625 {
3626 "type": "ALIAS",
3627 "content": {
3628 "type": "PATTERN",
3629 "value": "throw",
3630 "flags": "i"
3631 },
3632 "named": false,
3633 "value": "throw"
3634 },
3635 {
3636 "type": "SYMBOL",
3637 "name": "expression"
3638 }
3639 ]
3640 },
3641 "while_statement": {
3642 "type": "SEQ",
3643 "members": [
3644 {
3645 "type": "ALIAS",
3646 "content": {
3647 "type": "PATTERN",
3648 "value": "while",
3649 "flags": "i"
3650 },
3651 "named": false,
3652 "value": "while"
3653 },
3654 {
3655 "type": "FIELD",
3656 "name": "condition",
3657 "content": {
3658 "type": "SYMBOL",
3659 "name": "parenthesized_expression"
3660 }
3661 },
3662 {
3663 "type": "CHOICE",
3664 "members": [
3665 {
3666 "type": "FIELD",
3667 "name": "body",
3668 "content": {
3669 "type": "SYMBOL",
3670 "name": "statement"
3671 }
3672 },
3673 {
3674 "type": "SEQ",
3675 "members": [
3676 {
3677 "type": "FIELD",
3678 "name": "body",
3679 "content": {
3680 "type": "SYMBOL",
3681 "name": "colon_block"
3682 }
3683 },
3684 {
3685 "type": "ALIAS",
3686 "content": {
3687 "type": "PATTERN",
3688 "value": "endwhile",
3689 "flags": "i"
3690 },
3691 "named": false,
3692 "value": "endwhile"
3693 },
3694 {
3695 "type": "SYMBOL",
3696 "name": "_semicolon"
3697 }
3698 ]
3699 }
3700 ]
3701 }
3702 ]
3703 },
3704 "do_statement": {
3705 "type": "SEQ",
3706 "members": [
3707 {
3708 "type": "ALIAS",
3709 "content": {
3710 "type": "PATTERN",
3711 "value": "do",
3712 "flags": "i"
3713 },
3714 "named": false,
3715 "value": "do"
3716 },
3717 {
3718 "type": "FIELD",
3719 "name": "body",
3720 "content": {
3721 "type": "SYMBOL",
3722 "name": "statement"
3723 }
3724 },
3725 {
3726 "type": "ALIAS",
3727 "content": {
3728 "type": "PATTERN",
3729 "value": "while",
3730 "flags": "i"
3731 },
3732 "named": false,
3733 "value": "while"
3734 },
3735 {
3736 "type": "FIELD",
3737 "name": "condition",
3738 "content": {
3739 "type": "SYMBOL",
3740 "name": "parenthesized_expression"
3741 }
3742 },
3743 {
3744 "type": "SYMBOL",
3745 "name": "_semicolon"
3746 }
3747 ]
3748 },
3749 "for_statement": {
3750 "type": "SEQ",
3751 "members": [
3752 {
3753 "type": "ALIAS",
3754 "content": {
3755 "type": "PATTERN",
3756 "value": "for",
3757 "flags": "i"
3758 },
3759 "named": false,
3760 "value": "for"
3761 },
3762 {
3763 "type": "STRING",
3764 "value": "("
3765 },
3766 {
3767 "type": "FIELD",
3768 "name": "initialize",
3769 "content": {
3770 "type": "CHOICE",
3771 "members": [
3772 {
3773 "type": "SYMBOL",
3774 "name": "_expressions"
3775 },
3776 {
3777 "type": "BLANK"
3778 }
3779 ]
3780 }
3781 },
3782 {
3783 "type": "STRING",
3784 "value": ";"
3785 },
3786 {
3787 "type": "FIELD",
3788 "name": "condition",
3789 "content": {
3790 "type": "CHOICE",
3791 "members": [
3792 {
3793 "type": "SYMBOL",
3794 "name": "_expressions"
3795 },
3796 {
3797 "type": "BLANK"
3798 }
3799 ]
3800 }
3801 },
3802 {
3803 "type": "STRING",
3804 "value": ";"
3805 },
3806 {
3807 "type": "FIELD",
3808 "name": "update",
3809 "content": {
3810 "type": "CHOICE",
3811 "members": [
3812 {
3813 "type": "SYMBOL",
3814 "name": "_expressions"
3815 },
3816 {
3817 "type": "BLANK"
3818 }
3819 ]
3820 }
3821 },
3822 {
3823 "type": "STRING",
3824 "value": ")"
3825 },
3826 {
3827 "type": "CHOICE",
3828 "members": [
3829 {
3830 "type": "SYMBOL",
3831 "name": "_semicolon"
3832 },
3833 {
3834 "type": "FIELD",
3835 "name": "body",
3836 "content": {
3837 "type": "SYMBOL",
3838 "name": "statement"
3839 }
3840 },
3841 {
3842 "type": "SEQ",
3843 "members": [
3844 {
3845 "type": "STRING",
3846 "value": ":"
3847 },
3848 {
3849 "type": "FIELD",
3850 "name": "body",
3851 "content": {
3852 "type": "REPEAT",
3853 "content": {
3854 "type": "SYMBOL",
3855 "name": "statement"
3856 }
3857 }
3858 },
3859 {
3860 "type": "ALIAS",
3861 "content": {
3862 "type": "PATTERN",
3863 "value": "endfor",
3864 "flags": "i"
3865 },
3866 "named": false,
3867 "value": "endfor"
3868 },
3869 {
3870 "type": "SYMBOL",
3871 "name": "_semicolon"
3872 }
3873 ]
3874 }
3875 ]
3876 }
3877 ]
3878 },
3879 "_expressions": {
3880 "type": "CHOICE",
3881 "members": [
3882 {
3883 "type": "SYMBOL",
3884 "name": "expression"
3885 },
3886 {
3887 "type": "SYMBOL",
3888 "name": "sequence_expression"
3889 }
3890 ]
3891 },
3892 "sequence_expression": {
3893 "type": "PREC",
3894 "value": -1,
3895 "content": {
3896 "type": "SEQ",
3897 "members": [
3898 {
3899 "type": "SYMBOL",
3900 "name": "expression"
3901 },
3902 {
3903 "type": "STRING",
3904 "value": ","
3905 },
3906 {
3907 "type": "CHOICE",
3908 "members": [
3909 {
3910 "type": "SYMBOL",
3911 "name": "sequence_expression"
3912 },
3913 {
3914 "type": "SYMBOL",
3915 "name": "expression"
3916 }
3917 ]
3918 }
3919 ]
3920 }
3921 },
3922 "foreach_statement": {
3923 "type": "SEQ",
3924 "members": [
3925 {
3926 "type": "ALIAS",
3927 "content": {
3928 "type": "PATTERN",
3929 "value": "foreach",
3930 "flags": "i"
3931 },
3932 "named": false,
3933 "value": "foreach"
3934 },
3935 {
3936 "type": "STRING",
3937 "value": "("
3938 },
3939 {
3940 "type": "SYMBOL",
3941 "name": "expression"
3942 },
3943 {
3944 "type": "ALIAS",
3945 "content": {
3946 "type": "PATTERN",
3947 "value": "as",
3948 "flags": "i"
3949 },
3950 "named": false,
3951 "value": "as"
3952 },
3953 {
3954 "type": "CHOICE",
3955 "members": [
3956 {
3957 "type": "ALIAS",
3958 "content": {
3959 "type": "SYMBOL",
3960 "name": "foreach_pair"
3961 },
3962 "named": true,
3963 "value": "pair"
3964 },
3965 {
3966 "type": "SYMBOL",
3967 "name": "_foreach_value"
3968 }
3969 ]
3970 },
3971 {
3972 "type": "STRING",
3973 "value": ")"
3974 },
3975 {
3976 "type": "CHOICE",
3977 "members": [
3978 {
3979 "type": "SYMBOL",
3980 "name": "_semicolon"
3981 },
3982 {
3983 "type": "FIELD",
3984 "name": "body",
3985 "content": {
3986 "type": "SYMBOL",
3987 "name": "statement"
3988 }
3989 },
3990 {
3991 "type": "SEQ",
3992 "members": [
3993 {
3994 "type": "FIELD",
3995 "name": "body",
3996 "content": {
3997 "type": "SYMBOL",
3998 "name": "colon_block"
3999 }
4000 },
4001 {
4002 "type": "ALIAS",
4003 "content": {
4004 "type": "PATTERN",
4005 "value": "endforeach",
4006 "flags": "i"
4007 },
4008 "named": false,
4009 "value": "endforeach"
4010 },
4011 {
4012 "type": "SYMBOL",
4013 "name": "_semicolon"
4014 }
4015 ]
4016 }
4017 ]
4018 }
4019 ]
4020 },
4021 "foreach_pair": {
4022 "type": "SEQ",
4023 "members": [
4024 {
4025 "type": "SYMBOL",
4026 "name": "expression"
4027 },
4028 {
4029 "type": "STRING",
4030 "value": "=>"
4031 },
4032 {
4033 "type": "SYMBOL",
4034 "name": "_foreach_value"
4035 }
4036 ]
4037 },
4038 "_foreach_value": {
4039 "type": "CHOICE",
4040 "members": [
4041 {
4042 "type": "SYMBOL",
4043 "name": "by_ref"
4044 },
4045 {
4046 "type": "SYMBOL",
4047 "name": "expression"
4048 },
4049 {
4050 "type": "SYMBOL",
4051 "name": "list_literal"
4052 }
4053 ]
4054 },
4055 "if_statement": {
4056 "type": "SEQ",
4057 "members": [
4058 {
4059 "type": "ALIAS",
4060 "content": {
4061 "type": "PATTERN",
4062 "value": "if",
4063 "flags": "i"
4064 },
4065 "named": false,
4066 "value": "if"
4067 },
4068 {
4069 "type": "FIELD",
4070 "name": "condition",
4071 "content": {
4072 "type": "SYMBOL",
4073 "name": "parenthesized_expression"
4074 }
4075 },
4076 {
4077 "type": "CHOICE",
4078 "members": [
4079 {
4080 "type": "SEQ",
4081 "members": [
4082 {
4083 "type": "FIELD",
4084 "name": "body",
4085 "content": {
4086 "type": "SYMBOL",
4087 "name": "statement"
4088 }
4089 },
4090 {
4091 "type": "REPEAT",
4092 "content": {
4093 "type": "FIELD",
4094 "name": "alternative",
4095 "content": {
4096 "type": "SYMBOL",
4097 "name": "else_if_clause"
4098 }
4099 }
4100 },
4101 {
4102 "type": "CHOICE",
4103 "members": [
4104 {
4105 "type": "FIELD",
4106 "name": "alternative",
4107 "content": {
4108 "type": "SYMBOL",
4109 "name": "else_clause"
4110 }
4111 },
4112 {
4113 "type": "BLANK"
4114 }
4115 ]
4116 }
4117 ]
4118 },
4119 {
4120 "type": "SEQ",
4121 "members": [
4122 {
4123 "type": "FIELD",
4124 "name": "body",
4125 "content": {
4126 "type": "SYMBOL",
4127 "name": "colon_block"
4128 }
4129 },
4130 {
4131 "type": "REPEAT",
4132 "content": {
4133 "type": "FIELD",
4134 "name": "alternative",
4135 "content": {
4136 "type": "ALIAS",
4137 "content": {
4138 "type": "SYMBOL",
4139 "name": "else_if_clause_2"
4140 },
4141 "named": true,
4142 "value": "else_if_clause"
4143 }
4144 }
4145 },
4146 {
4147 "type": "CHOICE",
4148 "members": [
4149 {
4150 "type": "FIELD",
4151 "name": "alternative",
4152 "content": {
4153 "type": "ALIAS",
4154 "content": {
4155 "type": "SYMBOL",
4156 "name": "else_clause_2"
4157 },
4158 "named": true,
4159 "value": "else_clause"
4160 }
4161 },
4162 {
4163 "type": "BLANK"
4164 }
4165 ]
4166 },
4167 {
4168 "type": "ALIAS",
4169 "content": {
4170 "type": "PATTERN",
4171 "value": "endif",
4172 "flags": "i"
4173 },
4174 "named": false,
4175 "value": "endif"
4176 },
4177 {
4178 "type": "SYMBOL",
4179 "name": "_semicolon"
4180 }
4181 ]
4182 }
4183 ]
4184 }
4185 ]
4186 },
4187 "colon_block": {
4188 "type": "SEQ",
4189 "members": [
4190 {
4191 "type": "STRING",
4192 "value": ":"
4193 },
4194 {
4195 "type": "REPEAT",
4196 "content": {
4197 "type": "SYMBOL",
4198 "name": "statement"
4199 }
4200 }
4201 ]
4202 },
4203 "else_if_clause": {
4204 "type": "SEQ",
4205 "members": [
4206 {
4207 "type": "ALIAS",
4208 "content": {
4209 "type": "PATTERN",
4210 "value": "elseif",
4211 "flags": "i"
4212 },
4213 "named": false,
4214 "value": "elseif"
4215 },
4216 {
4217 "type": "FIELD",
4218 "name": "condition",
4219 "content": {
4220 "type": "SYMBOL",
4221 "name": "parenthesized_expression"
4222 }
4223 },
4224 {
4225 "type": "FIELD",
4226 "name": "body",
4227 "content": {
4228 "type": "SYMBOL",
4229 "name": "statement"
4230 }
4231 }
4232 ]
4233 },
4234 "else_clause": {
4235 "type": "SEQ",
4236 "members": [
4237 {
4238 "type": "ALIAS",
4239 "content": {
4240 "type": "PATTERN",
4241 "value": "else",
4242 "flags": "i"
4243 },
4244 "named": false,
4245 "value": "else"
4246 },
4247 {
4248 "type": "FIELD",
4249 "name": "body",
4250 "content": {
4251 "type": "SYMBOL",
4252 "name": "statement"
4253 }
4254 }
4255 ]
4256 },
4257 "else_if_clause_2": {
4258 "type": "SEQ",
4259 "members": [
4260 {
4261 "type": "ALIAS",
4262 "content": {
4263 "type": "PATTERN",
4264 "value": "elseif",
4265 "flags": "i"
4266 },
4267 "named": false,
4268 "value": "elseif"
4269 },
4270 {
4271 "type": "FIELD",
4272 "name": "condition",
4273 "content": {
4274 "type": "SYMBOL",
4275 "name": "parenthesized_expression"
4276 }
4277 },
4278 {
4279 "type": "FIELD",
4280 "name": "body",
4281 "content": {
4282 "type": "SYMBOL",
4283 "name": "colon_block"
4284 }
4285 }
4286 ]
4287 },
4288 "else_clause_2": {
4289 "type": "SEQ",
4290 "members": [
4291 {
4292 "type": "ALIAS",
4293 "content": {
4294 "type": "PATTERN",
4295 "value": "else",
4296 "flags": "i"
4297 },
4298 "named": false,
4299 "value": "else"
4300 },
4301 {
4302 "type": "FIELD",
4303 "name": "body",
4304 "content": {
4305 "type": "SYMBOL",
4306 "name": "colon_block"
4307 }
4308 }
4309 ]
4310 },
4311 "match_expression": {
4312 "type": "SEQ",
4313 "members": [
4314 {
4315 "type": "ALIAS",
4316 "content": {
4317 "type": "PATTERN",
4318 "value": "match",
4319 "flags": "i"
4320 },
4321 "named": false,
4322 "value": "match"
4323 },
4324 {
4325 "type": "FIELD",
4326 "name": "condition",
4327 "content": {
4328 "type": "SYMBOL",
4329 "name": "parenthesized_expression"
4330 }
4331 },
4332 {
4333 "type": "FIELD",
4334 "name": "body",
4335 "content": {
4336 "type": "SYMBOL",
4337 "name": "match_block"
4338 }
4339 }
4340 ]
4341 },
4342 "match_block": {
4343 "type": "PREC_LEFT",
4344 "value": 0,
4345 "content": {
4346 "type": "SEQ",
4347 "members": [
4348 {
4349 "type": "STRING",
4350 "value": "{"
4351 },
4352 {
4353 "type": "CHOICE",
4354 "members": [
4355 {
4356 "type": "SEQ",
4357 "members": [
4358 {
4359 "type": "CHOICE",
4360 "members": [
4361 {
4362 "type": "SYMBOL",
4363 "name": "match_conditional_expression"
4364 },
4365 {
4366 "type": "SYMBOL",
4367 "name": "match_default_expression"
4368 }
4369 ]
4370 },
4371 {
4372 "type": "REPEAT",
4373 "content": {
4374 "type": "SEQ",
4375 "members": [
4376 {
4377 "type": "STRING",
4378 "value": ","
4379 },
4380 {
4381 "type": "CHOICE",
4382 "members": [
4383 {
4384 "type": "SYMBOL",
4385 "name": "match_conditional_expression"
4386 },
4387 {
4388 "type": "SYMBOL",
4389 "name": "match_default_expression"
4390 }
4391 ]
4392 }
4393 ]
4394 }
4395 }
4396 ]
4397 },
4398 {
4399 "type": "BLANK"
4400 }
4401 ]
4402 },
4403 {
4404 "type": "CHOICE",
4405 "members": [
4406 {
4407 "type": "STRING",
4408 "value": ","
4409 },
4410 {
4411 "type": "BLANK"
4412 }
4413 ]
4414 },
4415 {
4416 "type": "STRING",
4417 "value": "}"
4418 }
4419 ]
4420 }
4421 },
4422 "match_condition_list": {
4423 "type": "SEQ",
4424 "members": [
4425 {
4426 "type": "SEQ",
4427 "members": [
4428 {
4429 "type": "SYMBOL",
4430 "name": "expression"
4431 },
4432 {
4433 "type": "REPEAT",
4434 "content": {
4435 "type": "SEQ",
4436 "members": [
4437 {
4438 "type": "STRING",
4439 "value": ","
4440 },
4441 {
4442 "type": "SYMBOL",
4443 "name": "expression"
4444 }
4445 ]
4446 }
4447 }
4448 ]
4449 },
4450 {
4451 "type": "CHOICE",
4452 "members": [
4453 {
4454 "type": "STRING",
4455 "value": ","
4456 },
4457 {
4458 "type": "BLANK"
4459 }
4460 ]
4461 }
4462 ]
4463 },
4464 "match_conditional_expression": {
4465 "type": "SEQ",
4466 "members": [
4467 {
4468 "type": "FIELD",
4469 "name": "conditional_expressions",
4470 "content": {
4471 "type": "SYMBOL",
4472 "name": "match_condition_list"
4473 }
4474 },
4475 {
4476 "type": "STRING",
4477 "value": "=>"
4478 },
4479 {
4480 "type": "FIELD",
4481 "name": "return_expression",
4482 "content": {
4483 "type": "SYMBOL",
4484 "name": "expression"
4485 }
4486 }
4487 ]
4488 },
4489 "match_default_expression": {
4490 "type": "SEQ",
4491 "members": [
4492 {
4493 "type": "ALIAS",
4494 "content": {
4495 "type": "PATTERN",
4496 "value": "default",
4497 "flags": "i"
4498 },
4499 "named": false,
4500 "value": "default"
4501 },
4502 {
4503 "type": "STRING",
4504 "value": "=>"
4505 },
4506 {
4507 "type": "FIELD",
4508 "name": "return_expression",
4509 "content": {
4510 "type": "SYMBOL",
4511 "name": "expression"
4512 }
4513 }
4514 ]
4515 },
4516 "switch_statement": {
4517 "type": "SEQ",
4518 "members": [
4519 {
4520 "type": "ALIAS",
4521 "content": {
4522 "type": "PATTERN",
4523 "value": "switch",
4524 "flags": "i"
4525 },
4526 "named": false,
4527 "value": "switch"
4528 },
4529 {
4530 "type": "FIELD",
4531 "name": "condition",
4532 "content": {
4533 "type": "SYMBOL",
4534 "name": "parenthesized_expression"
4535 }
4536 },
4537 {
4538 "type": "FIELD",
4539 "name": "body",
4540 "content": {
4541 "type": "SYMBOL",
4542 "name": "switch_block"
4543 }
4544 }
4545 ]
4546 },
4547 "switch_block": {
4548 "type": "CHOICE",
4549 "members": [
4550 {
4551 "type": "SEQ",
4552 "members": [
4553 {
4554 "type": "STRING",
4555 "value": "{"
4556 },
4557 {
4558 "type": "REPEAT",
4559 "content": {
4560 "type": "CHOICE",
4561 "members": [
4562 {
4563 "type": "SYMBOL",
4564 "name": "case_statement"
4565 },
4566 {
4567 "type": "SYMBOL",
4568 "name": "default_statement"
4569 }
4570 ]
4571 }
4572 },
4573 {
4574 "type": "STRING",
4575 "value": "}"
4576 }
4577 ]
4578 },
4579 {
4580 "type": "SEQ",
4581 "members": [
4582 {
4583 "type": "STRING",
4584 "value": ":"
4585 },
4586 {
4587 "type": "REPEAT",
4588 "content": {
4589 "type": "CHOICE",
4590 "members": [
4591 {
4592 "type": "SYMBOL",
4593 "name": "case_statement"
4594 },
4595 {
4596 "type": "SYMBOL",
4597 "name": "default_statement"
4598 }
4599 ]
4600 }
4601 },
4602 {
4603 "type": "ALIAS",
4604 "content": {
4605 "type": "PATTERN",
4606 "value": "endswitch",
4607 "flags": "i"
4608 },
4609 "named": false,
4610 "value": "endswitch"
4611 },
4612 {
4613 "type": "SYMBOL",
4614 "name": "_semicolon"
4615 }
4616 ]
4617 }
4618 ]
4619 },
4620 "case_statement": {
4621 "type": "SEQ",
4622 "members": [
4623 {
4624 "type": "ALIAS",
4625 "content": {
4626 "type": "PATTERN",
4627 "value": "case",
4628 "flags": "i"
4629 },
4630 "named": false,
4631 "value": "case"
4632 },
4633 {
4634 "type": "FIELD",
4635 "name": "value",
4636 "content": {
4637 "type": "SYMBOL",
4638 "name": "expression"
4639 }
4640 },
4641 {
4642 "type": "CHOICE",
4643 "members": [
4644 {
4645 "type": "STRING",
4646 "value": ":"
4647 },
4648 {
4649 "type": "STRING",
4650 "value": ";"
4651 }
4652 ]
4653 },
4654 {
4655 "type": "REPEAT",
4656 "content": {
4657 "type": "SYMBOL",
4658 "name": "statement"
4659 }
4660 }
4661 ]
4662 },
4663 "default_statement": {
4664 "type": "SEQ",
4665 "members": [
4666 {
4667 "type": "ALIAS",
4668 "content": {
4669 "type": "PATTERN",
4670 "value": "default",
4671 "flags": "i"
4672 },
4673 "named": false,
4674 "value": "default"
4675 },
4676 {
4677 "type": "CHOICE",
4678 "members": [
4679 {
4680 "type": "STRING",
4681 "value": ":"
4682 },
4683 {
4684 "type": "STRING",
4685 "value": ";"
4686 }
4687 ]
4688 },
4689 {
4690 "type": "REPEAT",
4691 "content": {
4692 "type": "SYMBOL",
4693 "name": "statement"
4694 }
4695 }
4696 ]
4697 },
4698 "compound_statement": {
4699 "type": "SEQ",
4700 "members": [
4701 {
4702 "type": "STRING",
4703 "value": "{"
4704 },
4705 {
4706 "type": "REPEAT",
4707 "content": {
4708 "type": "SYMBOL",
4709 "name": "statement"
4710 }
4711 },
4712 {
4713 "type": "STRING",
4714 "value": "}"
4715 }
4716 ]
4717 },
4718 "named_label_statement": {
4719 "type": "SEQ",
4720 "members": [
4721 {
4722 "type": "SYMBOL",
4723 "name": "name"
4724 },
4725 {
4726 "type": "STRING",
4727 "value": ":"
4728 }
4729 ]
4730 },
4731 "expression_statement": {
4732 "type": "SEQ",
4733 "members": [
4734 {
4735 "type": "SYMBOL",
4736 "name": "expression"
4737 },
4738 {
4739 "type": "SYMBOL",
4740 "name": "_semicolon"
4741 }
4742 ]
4743 },
4744 "expression": {
4745 "type": "CHOICE",
4746 "members": [
4747 {
4748 "type": "SYMBOL",
4749 "name": "conditional_expression"
4750 },
4751 {
4752 "type": "SYMBOL",
4753 "name": "match_expression"
4754 },
4755 {
4756 "type": "SYMBOL",
4757 "name": "augmented_assignment_expression"
4758 },
4759 {
4760 "type": "SYMBOL",
4761 "name": "assignment_expression"
4762 },
4763 {
4764 "type": "SYMBOL",
4765 "name": "reference_assignment_expression"
4766 },
4767 {
4768 "type": "SYMBOL",
4769 "name": "yield_expression"
4770 },
4771 {
4772 "type": "SYMBOL",
4773 "name": "_unary_expression"
4774 },
4775 {
4776 "type": "SYMBOL",
4777 "name": "error_suppression_expression"
4778 },
4779 {
4780 "type": "SYMBOL",
4781 "name": "binary_expression"
4782 },
4783 {
4784 "type": "SYMBOL",
4785 "name": "include_expression"
4786 },
4787 {
4788 "type": "SYMBOL",
4789 "name": "include_once_expression"
4790 },
4791 {
4792 "type": "SYMBOL",
4793 "name": "require_expression"
4794 },
4795 {
4796 "type": "SYMBOL",
4797 "name": "require_once_expression"
4798 }
4799 ]
4800 },
4801 "_unary_expression": {
4802 "type": "CHOICE",
4803 "members": [
4804 {
4805 "type": "SYMBOL",
4806 "name": "clone_expression"
4807 },
4808 {
4809 "type": "SYMBOL",
4810 "name": "primary_expression"
4811 },
4812 {
4813 "type": "SYMBOL",
4814 "name": "unary_op_expression"
4815 },
4816 {
4817 "type": "SYMBOL",
4818 "name": "cast_expression"
4819 }
4820 ]
4821 },
4822 "unary_op_expression": {
4823 "type": "PREC_LEFT",
4824 "value": 19,
4825 "content": {
4826 "type": "SEQ",
4827 "members": [
4828 {
4829 "type": "FIELD",
4830 "name": "operator",
4831 "content": {
4832 "type": "CHOICE",
4833 "members": [
4834 {
4835 "type": "STRING",
4836 "value": "+"
4837 },
4838 {
4839 "type": "STRING",
4840 "value": "-"
4841 },
4842 {
4843 "type": "STRING",
4844 "value": "~"
4845 },
4846 {
4847 "type": "STRING",
4848 "value": "!"
4849 }
4850 ]
4851 }
4852 },
4853 {
4854 "type": "FIELD",
4855 "name": "argument",
4856 "content": {
4857 "type": "SYMBOL",
4858 "name": "expression"
4859 }
4860 }
4861 ]
4862 }
4863 },
4864 "error_suppression_expression": {
4865 "type": "PREC",
4866 "value": 21,
4867 "content": {
4868 "type": "SEQ",
4869 "members": [
4870 {
4871 "type": "STRING",
4872 "value": "@"
4873 },
4874 {
4875 "type": "SYMBOL",
4876 "name": "expression"
4877 }
4878 ]
4879 }
4880 },
4881 "clone_expression": {
4882 "type": "SEQ",
4883 "members": [
4884 {
4885 "type": "ALIAS",
4886 "content": {
4887 "type": "PATTERN",
4888 "value": "clone",
4889 "flags": "i"
4890 },
4891 "named": false,
4892 "value": "clone"
4893 },
4894 {
4895 "type": "SYMBOL",
4896 "name": "primary_expression"
4897 }
4898 ]
4899 },
4900 "primary_expression": {
4901 "type": "CHOICE",
4902 "members": [
4903 {
4904 "type": "SYMBOL",
4905 "name": "_variable"
4906 },
4907 {
4908 "type": "SYMBOL",
4909 "name": "literal"
4910 },
4911 {
4912 "type": "SYMBOL",
4913 "name": "class_constant_access_expression"
4914 },
4915 {
4916 "type": "SYMBOL",
4917 "name": "qualified_name"
4918 },
4919 {
4920 "type": "SYMBOL",
4921 "name": "name"
4922 },
4923 {
4924 "type": "SYMBOL",
4925 "name": "array_creation_expression"
4926 },
4927 {
4928 "type": "SYMBOL",
4929 "name": "print_intrinsic"
4930 },
4931 {
4932 "type": "SYMBOL",
4933 "name": "anonymous_function"
4934 },
4935 {
4936 "type": "SYMBOL",
4937 "name": "arrow_function"
4938 },
4939 {
4940 "type": "SYMBOL",
4941 "name": "object_creation_expression"
4942 },
4943 {
4944 "type": "SYMBOL",
4945 "name": "update_expression"
4946 },
4947 {
4948 "type": "SYMBOL",
4949 "name": "shell_command_expression"
4950 },
4951 {
4952 "type": "SYMBOL",
4953 "name": "parenthesized_expression"
4954 },
4955 {
4956 "type": "SYMBOL",
4957 "name": "throw_expression"
4958 },
4959 {
4960 "type": "SYMBOL",
4961 "name": "arrow_function"
4962 }
4963 ]
4964 },
4965 "parenthesized_expression": {
4966 "type": "SEQ",
4967 "members": [
4968 {
4969 "type": "STRING",
4970 "value": "("
4971 },
4972 {
4973 "type": "SYMBOL",
4974 "name": "expression"
4975 },
4976 {
4977 "type": "STRING",
4978 "value": ")"
4979 }
4980 ]
4981 },
4982 "class_constant_access_expression": {
4983 "type": "SEQ",
4984 "members": [
4985 {
4986 "type": "SYMBOL",
4987 "name": "_scope_resolution_qualifier"
4988 },
4989 {
4990 "type": "STRING",
4991 "value": "::"
4992 },
4993 {
4994 "type": "CHOICE",
4995 "members": [
4996 {
4997 "type": "SYMBOL",
4998 "name": "_identifier"
4999 },
5000 {
5001 "type": "SEQ",
5002 "members": [
5003 {
5004 "type": "STRING",
5005 "value": "{"
5006 },
5007 {
5008 "type": "ALIAS",
5009 "content": {
5010 "type": "SYMBOL",
5011 "name": "expression"
5012 },
5013 "named": true,
5014 "value": "name"
5015 },
5016 {
5017 "type": "STRING",
5018 "value": "}"
5019 }
5020 ]
5021 }
5022 ]
5023 }
5024 ]
5025 },
5026 "print_intrinsic": {
5027 "type": "SEQ",
5028 "members": [
5029 {
5030 "type": "ALIAS",
5031 "content": {
5032 "type": "PATTERN",
5033 "value": "print",
5034 "flags": "i"
5035 },
5036 "named": false,
5037 "value": "print"
5038 },
5039 {
5040 "type": "SYMBOL",
5041 "name": "expression"
5042 }
5043 ]
5044 },
5045 "object_creation_expression": {
5046 "type": "CHOICE",
5047 "members": [
5048 {
5049 "type": "SYMBOL",
5050 "name": "_new_dereferencable_expression"
5051 },
5052 {
5053 "type": "SYMBOL",
5054 "name": "_new_non_dereferencable_expression"
5055 }
5056 ]
5057 },
5058 "_new_non_dereferencable_expression": {
5059 "type": "PREC_RIGHT",
5060 "value": 23,
5061 "content": {
5062 "type": "SEQ",
5063 "members": [
5064 {
5065 "type": "ALIAS",
5066 "content": {
5067 "type": "PATTERN",
5068 "value": "new",
5069 "flags": "i"
5070 },
5071 "named": false,
5072 "value": "new"
5073 },
5074 {
5075 "type": "SYMBOL",
5076 "name": "_class_name_reference"
5077 }
5078 ]
5079 }
5080 },
5081 "_new_dereferencable_expression": {
5082 "type": "PREC_RIGHT",
5083 "value": 23,
5084 "content": {
5085 "type": "SEQ",
5086 "members": [
5087 {
5088 "type": "ALIAS",
5089 "content": {
5090 "type": "PATTERN",
5091 "value": "new",
5092 "flags": "i"
5093 },
5094 "named": false,
5095 "value": "new"
5096 },
5097 {
5098 "type": "CHOICE",
5099 "members": [
5100 {
5101 "type": "SEQ",
5102 "members": [
5103 {
5104 "type": "SYMBOL",
5105 "name": "_class_name_reference"
5106 },
5107 {
5108 "type": "SYMBOL",
5109 "name": "arguments"
5110 }
5111 ]
5112 },
5113 {
5114 "type": "SYMBOL",
5115 "name": "anonymous_class"
5116 }
5117 ]
5118 }
5119 ]
5120 }
5121 },
5122 "_class_name_reference": {
5123 "type": "CHOICE",
5124 "members": [
5125 {
5126 "type": "SYMBOL",
5127 "name": "_name"
5128 },
5129 {
5130 "type": "SYMBOL",
5131 "name": "_new_variable"
5132 },
5133 {
5134 "type": "SYMBOL",
5135 "name": "parenthesized_expression"
5136 }
5137 ]
5138 },
5139 "anonymous_class": {
5140 "type": "PREC_RIGHT",
5141 "value": 0,
5142 "content": {
5143 "type": "SEQ",
5144 "members": [
5145 {
5146 "type": "CHOICE",
5147 "members": [
5148 {
5149 "type": "FIELD",
5150 "name": "attributes",
5151 "content": {
5152 "type": "SYMBOL",
5153 "name": "attribute_list"
5154 }
5155 },
5156 {
5157 "type": "BLANK"
5158 }
5159 ]
5160 },
5161 {
5162 "type": "REPEAT",
5163 "content": {
5164 "type": "SYMBOL",
5165 "name": "_modifier"
5166 }
5167 },
5168 {
5169 "type": "ALIAS",
5170 "content": {
5171 "type": "PATTERN",
5172 "value": "class",
5173 "flags": "i"
5174 },
5175 "named": false,
5176 "value": "class"
5177 },
5178 {
5179 "type": "CHOICE",
5180 "members": [
5181 {
5182 "type": "SYMBOL",
5183 "name": "arguments"
5184 },
5185 {
5186 "type": "BLANK"
5187 }
5188 ]
5189 },
5190 {
5191 "type": "CHOICE",
5192 "members": [
5193 {
5194 "type": "SYMBOL",
5195 "name": "base_clause"
5196 },
5197 {
5198 "type": "BLANK"
5199 }
5200 ]
5201 },
5202 {
5203 "type": "CHOICE",
5204 "members": [
5205 {
5206 "type": "SYMBOL",
5207 "name": "class_interface_clause"
5208 },
5209 {
5210 "type": "BLANK"
5211 }
5212 ]
5213 },
5214 {
5215 "type": "FIELD",
5216 "name": "body",
5217 "content": {
5218 "type": "SYMBOL",
5219 "name": "declaration_list"
5220 }
5221 }
5222 ]
5223 }
5224 },
5225 "update_expression": {
5226 "type": "PREC_LEFT",
5227 "value": 21,
5228 "content": {
5229 "type": "CHOICE",
5230 "members": [
5231 {
5232 "type": "SEQ",
5233 "members": [
5234 {
5235 "type": "FIELD",
5236 "name": "operator",
5237 "content": {
5238 "type": "CHOICE",
5239 "members": [
5240 {
5241 "type": "STRING",
5242 "value": "--"
5243 },
5244 {
5245 "type": "STRING",
5246 "value": "++"
5247 }
5248 ]
5249 }
5250 },
5251 {
5252 "type": "FIELD",
5253 "name": "argument",
5254 "content": {
5255 "type": "SYMBOL",
5256 "name": "_variable"
5257 }
5258 }
5259 ]
5260 },
5261 {
5262 "type": "SEQ",
5263 "members": [
5264 {
5265 "type": "FIELD",
5266 "name": "argument",
5267 "content": {
5268 "type": "SYMBOL",
5269 "name": "_variable"
5270 }
5271 },
5272 {
5273 "type": "FIELD",
5274 "name": "operator",
5275 "content": {
5276 "type": "CHOICE",
5277 "members": [
5278 {
5279 "type": "STRING",
5280 "value": "--"
5281 },
5282 {
5283 "type": "STRING",
5284 "value": "++"
5285 }
5286 ]
5287 }
5288 }
5289 ]
5290 }
5291 ]
5292 }
5293 },
5294 "cast_expression": {
5295 "type": "PREC",
5296 "value": -1,
5297 "content": {
5298 "type": "SEQ",
5299 "members": [
5300 {
5301 "type": "STRING",
5302 "value": "("
5303 },
5304 {
5305 "type": "FIELD",
5306 "name": "type",
5307 "content": {
5308 "type": "SYMBOL",
5309 "name": "cast_type"
5310 }
5311 },
5312 {
5313 "type": "STRING",
5314 "value": ")"
5315 },
5316 {
5317 "type": "FIELD",
5318 "name": "value",
5319 "content": {
5320 "type": "CHOICE",
5321 "members": [
5322 {
5323 "type": "SYMBOL",
5324 "name": "_unary_expression"
5325 },
5326 {
5327 "type": "SYMBOL",
5328 "name": "include_expression"
5329 },
5330 {
5331 "type": "SYMBOL",
5332 "name": "include_once_expression"
5333 },
5334 {
5335 "type": "SYMBOL",
5336 "name": "error_suppression_expression"
5337 }
5338 ]
5339 }
5340 }
5341 ]
5342 }
5343 },
5344 "cast_variable": {
5345 "type": "PREC",
5346 "value": -1,
5347 "content": {
5348 "type": "SEQ",
5349 "members": [
5350 {
5351 "type": "STRING",
5352 "value": "("
5353 },
5354 {
5355 "type": "FIELD",
5356 "name": "type",
5357 "content": {
5358 "type": "SYMBOL",
5359 "name": "cast_type"
5360 }
5361 },
5362 {
5363 "type": "STRING",
5364 "value": ")"
5365 },
5366 {
5367 "type": "FIELD",
5368 "name": "value",
5369 "content": {
5370 "type": "SYMBOL",
5371 "name": "_variable"
5372 }
5373 }
5374 ]
5375 }
5376 },
5377 "assignment_expression": {
5378 "type": "PREC_RIGHT",
5379 "value": 4,
5380 "content": {
5381 "type": "SEQ",
5382 "members": [
5383 {
5384 "type": "FIELD",
5385 "name": "left",
5386 "content": {
5387 "type": "CHOICE",
5388 "members": [
5389 {
5390 "type": "SYMBOL",
5391 "name": "_variable"
5392 },
5393 {
5394 "type": "SYMBOL",
5395 "name": "list_literal"
5396 }
5397 ]
5398 }
5399 },
5400 {
5401 "type": "STRING",
5402 "value": "="
5403 },
5404 {
5405 "type": "FIELD",
5406 "name": "right",
5407 "content": {
5408 "type": "SYMBOL",
5409 "name": "expression"
5410 }
5411 }
5412 ]
5413 }
5414 },
5415 "reference_assignment_expression": {
5416 "type": "PREC_RIGHT",
5417 "value": 4,
5418 "content": {
5419 "type": "SEQ",
5420 "members": [
5421 {
5422 "type": "FIELD",
5423 "name": "left",
5424 "content": {
5425 "type": "CHOICE",
5426 "members": [
5427 {
5428 "type": "SYMBOL",
5429 "name": "_variable"
5430 },
5431 {
5432 "type": "SYMBOL",
5433 "name": "list_literal"
5434 }
5435 ]
5436 }
5437 },
5438 {
5439 "type": "STRING",
5440 "value": "="
5441 },
5442 {
5443 "type": "STRING",
5444 "value": "&"
5445 },
5446 {
5447 "type": "FIELD",
5448 "name": "right",
5449 "content": {
5450 "type": "SYMBOL",
5451 "name": "expression"
5452 }
5453 }
5454 ]
5455 }
5456 },
5457 "conditional_expression": {
5458 "type": "PREC_LEFT",
5459 "value": 5,
5460 "content": {
5461 "type": "SEQ",
5462 "members": [
5463 {
5464 "type": "FIELD",
5465 "name": "condition",
5466 "content": {
5467 "type": "SYMBOL",
5468 "name": "expression"
5469 }
5470 },
5471 {
5472 "type": "STRING",
5473 "value": "?"
5474 },
5475 {
5476 "type": "FIELD",
5477 "name": "body",
5478 "content": {
5479 "type": "CHOICE",
5480 "members": [
5481 {
5482 "type": "SYMBOL",
5483 "name": "expression"
5484 },
5485 {
5486 "type": "BLANK"
5487 }
5488 ]
5489 }
5490 },
5491 {
5492 "type": "STRING",
5493 "value": ":"
5494 },
5495 {
5496 "type": "FIELD",
5497 "name": "alternative",
5498 "content": {
5499 "type": "SYMBOL",
5500 "name": "expression"
5501 }
5502 }
5503 ]
5504 }
5505 },
5506 "augmented_assignment_expression": {
5507 "type": "PREC_RIGHT",
5508 "value": 4,
5509 "content": {
5510 "type": "SEQ",
5511 "members": [
5512 {
5513 "type": "FIELD",
5514 "name": "left",
5515 "content": {
5516 "type": "SYMBOL",
5517 "name": "_variable"
5518 }
5519 },
5520 {
5521 "type": "FIELD",
5522 "name": "operator",
5523 "content": {
5524 "type": "CHOICE",
5525 "members": [
5526 {
5527 "type": "STRING",
5528 "value": "**="
5529 },
5530 {
5531 "type": "STRING",
5532 "value": "*="
5533 },
5534 {
5535 "type": "STRING",
5536 "value": "/="
5537 },
5538 {
5539 "type": "STRING",
5540 "value": "%="
5541 },
5542 {
5543 "type": "STRING",
5544 "value": "+="
5545 },
5546 {
5547 "type": "STRING",
5548 "value": "-="
5549 },
5550 {
5551 "type": "STRING",
5552 "value": ".="
5553 },
5554 {
5555 "type": "STRING",
5556 "value": "<<="
5557 },
5558 {
5559 "type": "STRING",
5560 "value": ">>="
5561 },
5562 {
5563 "type": "STRING",
5564 "value": "&="
5565 },
5566 {
5567 "type": "STRING",
5568 "value": "^="
5569 },
5570 {
5571 "type": "STRING",
5572 "value": "|="
5573 },
5574 {
5575 "type": "STRING",
5576 "value": "??="
5577 }
5578 ]
5579 }
5580 },
5581 {
5582 "type": "FIELD",
5583 "name": "right",
5584 "content": {
5585 "type": "SYMBOL",
5586 "name": "expression"
5587 }
5588 }
5589 ]
5590 }
5591 },
5592 "_variable": {
5593 "type": "CHOICE",
5594 "members": [
5595 {
5596 "type": "ALIAS",
5597 "content": {
5598 "type": "SYMBOL",
5599 "name": "cast_variable"
5600 },
5601 "named": true,
5602 "value": "cast_expression"
5603 },
5604 {
5605 "type": "SYMBOL",
5606 "name": "_new_variable"
5607 },
5608 {
5609 "type": "SYMBOL",
5610 "name": "_callable_variable"
5611 },
5612 {
5613 "type": "SYMBOL",
5614 "name": "scoped_property_access_expression"
5615 },
5616 {
5617 "type": "SYMBOL",
5618 "name": "member_access_expression"
5619 },
5620 {
5621 "type": "SYMBOL",
5622 "name": "nullsafe_member_access_expression"
5623 }
5624 ]
5625 },
5626 "_variable_member_access_expression": {
5627 "type": "PREC",
5628 "value": 25,
5629 "content": {
5630 "type": "SEQ",
5631 "members": [
5632 {
5633 "type": "FIELD",
5634 "name": "object",
5635 "content": {
5636 "type": "SYMBOL",
5637 "name": "_new_variable"
5638 }
5639 },
5640 {
5641 "type": "STRING",
5642 "value": "->"
5643 },
5644 {
5645 "type": "SYMBOL",
5646 "name": "_member_name"
5647 }
5648 ]
5649 }
5650 },
5651 "member_access_expression": {
5652 "type": "PREC",
5653 "value": 25,
5654 "content": {
5655 "type": "SEQ",
5656 "members": [
5657 {
5658 "type": "FIELD",
5659 "name": "object",
5660 "content": {
5661 "type": "SYMBOL",
5662 "name": "_dereferencable_expression"
5663 }
5664 },
5665 {
5666 "type": "STRING",
5667 "value": "->"
5668 },
5669 {
5670 "type": "SYMBOL",
5671 "name": "_member_name"
5672 }
5673 ]
5674 }
5675 },
5676 "_variable_nullsafe_member_access_expression": {
5677 "type": "PREC",
5678 "value": 25,
5679 "content": {
5680 "type": "SEQ",
5681 "members": [
5682 {
5683 "type": "FIELD",
5684 "name": "object",
5685 "content": {
5686 "type": "SYMBOL",
5687 "name": "_new_variable"
5688 }
5689 },
5690 {
5691 "type": "STRING",
5692 "value": "?->"
5693 },
5694 {
5695 "type": "SYMBOL",
5696 "name": "_member_name"
5697 }
5698 ]
5699 }
5700 },
5701 "nullsafe_member_access_expression": {
5702 "type": "PREC",
5703 "value": 25,
5704 "content": {
5705 "type": "SEQ",
5706 "members": [
5707 {
5708 "type": "FIELD",
5709 "name": "object",
5710 "content": {
5711 "type": "SYMBOL",
5712 "name": "_dereferencable_expression"
5713 }
5714 },
5715 {
5716 "type": "STRING",
5717 "value": "?->"
5718 },
5719 {
5720 "type": "SYMBOL",
5721 "name": "_member_name"
5722 }
5723 ]
5724 }
5725 },
5726 "_variable_scoped_property_access_expression": {
5727 "type": "PREC",
5728 "value": 25,
5729 "content": {
5730 "type": "SEQ",
5731 "members": [
5732 {
5733 "type": "FIELD",
5734 "name": "scope",
5735 "content": {
5736 "type": "CHOICE",
5737 "members": [
5738 {
5739 "type": "SYMBOL",
5740 "name": "_name"
5741 },
5742 {
5743 "type": "SYMBOL",
5744 "name": "_new_variable"
5745 }
5746 ]
5747 }
5748 },
5749 {
5750 "type": "STRING",
5751 "value": "::"
5752 },
5753 {
5754 "type": "FIELD",
5755 "name": "name",
5756 "content": {
5757 "type": "SYMBOL",
5758 "name": "_simple_variable"
5759 }
5760 }
5761 ]
5762 }
5763 },
5764 "scoped_property_access_expression": {
5765 "type": "PREC",
5766 "value": 25,
5767 "content": {
5768 "type": "SEQ",
5769 "members": [
5770 {
5771 "type": "FIELD",
5772 "name": "scope",
5773 "content": {
5774 "type": "SYMBOL",
5775 "name": "_scope_resolution_qualifier"
5776 }
5777 },
5778 {
5779 "type": "STRING",
5780 "value": "::"
5781 },
5782 {
5783 "type": "FIELD",
5784 "name": "name",
5785 "content": {
5786 "type": "SYMBOL",
5787 "name": "_simple_variable"
5788 }
5789 }
5790 ]
5791 }
5792 },
5793 "list_literal": {
5794 "type": "CHOICE",
5795 "members": [
5796 {
5797 "type": "SYMBOL",
5798 "name": "_list_destructing"
5799 },
5800 {
5801 "type": "SYMBOL",
5802 "name": "_array_destructing"
5803 }
5804 ]
5805 },
5806 "_list_destructing": {
5807 "type": "SEQ",
5808 "members": [
5809 {
5810 "type": "ALIAS",
5811 "content": {
5812 "type": "PATTERN",
5813 "value": "list",
5814 "flags": "i"
5815 },
5816 "named": false,
5817 "value": "list"
5818 },
5819 {
5820 "type": "STRING",
5821 "value": "("
5822 },
5823 {
5824 "type": "SEQ",
5825 "members": [
5826 {
5827 "type": "CHOICE",
5828 "members": [
5829 {
5830 "type": "CHOICE",
5831 "members": [
5832 {
5833 "type": "ALIAS",
5834 "content": {
5835 "type": "SYMBOL",
5836 "name": "_list_destructing"
5837 },
5838 "named": true,
5839 "value": "list_literal"
5840 },
5841 {
5842 "type": "SYMBOL",
5843 "name": "_variable"
5844 },
5845 {
5846 "type": "SYMBOL",
5847 "name": "by_ref"
5848 },
5849 {
5850 "type": "SEQ",
5851 "members": [
5852 {
5853 "type": "SYMBOL",
5854 "name": "expression"
5855 },
5856 {
5857 "type": "STRING",
5858 "value": "=>"
5859 },
5860 {
5861 "type": "CHOICE",
5862 "members": [
5863 {
5864 "type": "ALIAS",
5865 "content": {
5866 "type": "SYMBOL",
5867 "name": "_list_destructing"
5868 },
5869 "named": true,
5870 "value": "list_literal"
5871 },
5872 {
5873 "type": "SYMBOL",
5874 "name": "_variable"
5875 },
5876 {
5877 "type": "SYMBOL",
5878 "name": "by_ref"
5879 }
5880 ]
5881 }
5882 ]
5883 }
5884 ]
5885 },
5886 {
5887 "type": "BLANK"
5888 }
5889 ]
5890 },
5891 {
5892 "type": "REPEAT",
5893 "content": {
5894 "type": "SEQ",
5895 "members": [
5896 {
5897 "type": "STRING",
5898 "value": ","
5899 },
5900 {
5901 "type": "CHOICE",
5902 "members": [
5903 {
5904 "type": "CHOICE",
5905 "members": [
5906 {
5907 "type": "ALIAS",
5908 "content": {
5909 "type": "SYMBOL",
5910 "name": "_list_destructing"
5911 },
5912 "named": true,
5913 "value": "list_literal"
5914 },
5915 {
5916 "type": "SYMBOL",
5917 "name": "_variable"
5918 },
5919 {
5920 "type": "SYMBOL",
5921 "name": "by_ref"
5922 },
5923 {
5924 "type": "SEQ",
5925 "members": [
5926 {
5927 "type": "SYMBOL",
5928 "name": "expression"
5929 },
5930 {
5931 "type": "STRING",
5932 "value": "=>"
5933 },
5934 {
5935 "type": "CHOICE",
5936 "members": [
5937 {
5938 "type": "ALIAS",
5939 "content": {
5940 "type": "SYMBOL",
5941 "name": "_list_destructing"
5942 },
5943 "named": true,
5944 "value": "list_literal"
5945 },
5946 {
5947 "type": "SYMBOL",
5948 "name": "_variable"
5949 },
5950 {
5951 "type": "SYMBOL",
5952 "name": "by_ref"
5953 }
5954 ]
5955 }
5956 ]
5957 }
5958 ]
5959 },
5960 {
5961 "type": "BLANK"
5962 }
5963 ]
5964 }
5965 ]
5966 }
5967 }
5968 ]
5969 },
5970 {
5971 "type": "STRING",
5972 "value": ")"
5973 }
5974 ]
5975 },
5976 "_array_destructing": {
5977 "type": "SEQ",
5978 "members": [
5979 {
5980 "type": "STRING",
5981 "value": "["
5982 },
5983 {
5984 "type": "SEQ",
5985 "members": [
5986 {
5987 "type": "CHOICE",
5988 "members": [
5989 {
5990 "type": "SYMBOL",
5991 "name": "_array_destructing_element"
5992 },
5993 {
5994 "type": "BLANK"
5995 }
5996 ]
5997 },
5998 {
5999 "type": "REPEAT",
6000 "content": {
6001 "type": "SEQ",
6002 "members": [
6003 {
6004 "type": "STRING",
6005 "value": ","
6006 },
6007 {
6008 "type": "CHOICE",
6009 "members": [
6010 {
6011 "type": "SYMBOL",
6012 "name": "_array_destructing_element"
6013 },
6014 {
6015 "type": "BLANK"
6016 }
6017 ]
6018 }
6019 ]
6020 }
6021 }
6022 ]
6023 },
6024 {
6025 "type": "STRING",
6026 "value": "]"
6027 }
6028 ]
6029 },
6030 "_array_destructing_element": {
6031 "type": "CHOICE",
6032 "members": [
6033 {
6034 "type": "CHOICE",
6035 "members": [
6036 {
6037 "type": "ALIAS",
6038 "content": {
6039 "type": "SYMBOL",
6040 "name": "_array_destructing"
6041 },
6042 "named": true,
6043 "value": "list_literal"
6044 },
6045 {
6046 "type": "SYMBOL",
6047 "name": "_variable"
6048 },
6049 {
6050 "type": "SYMBOL",
6051 "name": "by_ref"
6052 }
6053 ]
6054 },
6055 {
6056 "type": "SEQ",
6057 "members": [
6058 {
6059 "type": "SYMBOL",
6060 "name": "expression"
6061 },
6062 {
6063 "type": "STRING",
6064 "value": "=>"
6065 },
6066 {
6067 "type": "CHOICE",
6068 "members": [
6069 {
6070 "type": "ALIAS",
6071 "content": {
6072 "type": "SYMBOL",
6073 "name": "_array_destructing"
6074 },
6075 "named": true,
6076 "value": "list_literal"
6077 },
6078 {
6079 "type": "SYMBOL",
6080 "name": "_variable"
6081 },
6082 {
6083 "type": "SYMBOL",
6084 "name": "by_ref"
6085 }
6086 ]
6087 }
6088 ]
6089 }
6090 ]
6091 },
6092 "function_call_expression": {
6093 "type": "PREC",
6094 "value": 24,
6095 "content": {
6096 "type": "SEQ",
6097 "members": [
6098 {
6099 "type": "FIELD",
6100 "name": "function",
6101 "content": {
6102 "type": "CHOICE",
6103 "members": [
6104 {
6105 "type": "SYMBOL",
6106 "name": "_name"
6107 },
6108 {
6109 "type": "SYMBOL",
6110 "name": "_callable_expression"
6111 }
6112 ]
6113 }
6114 },
6115 {
6116 "type": "FIELD",
6117 "name": "arguments",
6118 "content": {
6119 "type": "SYMBOL",
6120 "name": "arguments"
6121 }
6122 }
6123 ]
6124 }
6125 },
6126 "_callable_expression": {
6127 "type": "CHOICE",
6128 "members": [
6129 {
6130 "type": "SYMBOL",
6131 "name": "_callable_variable"
6132 },
6133 {
6134 "type": "SYMBOL",
6135 "name": "parenthesized_expression"
6136 },
6137 {
6138 "type": "SYMBOL",
6139 "name": "_dereferencable_scalar"
6140 },
6141 {
6142 "type": "ALIAS",
6143 "content": {
6144 "type": "SYMBOL",
6145 "name": "_new_dereferencable_expression"
6146 },
6147 "named": true,
6148 "value": "object_creation_expression"
6149 }
6150 ]
6151 },
6152 "scoped_call_expression": {
6153 "type": "PREC",
6154 "value": 24,
6155 "content": {
6156 "type": "SEQ",
6157 "members": [
6158 {
6159 "type": "FIELD",
6160 "name": "scope",
6161 "content": {
6162 "type": "SYMBOL",
6163 "name": "_scope_resolution_qualifier"
6164 }
6165 },
6166 {
6167 "type": "STRING",
6168 "value": "::"
6169 },
6170 {
6171 "type": "SYMBOL",
6172 "name": "_member_name"
6173 },
6174 {
6175 "type": "FIELD",
6176 "name": "arguments",
6177 "content": {
6178 "type": "SYMBOL",
6179 "name": "arguments"
6180 }
6181 }
6182 ]
6183 }
6184 },
6185 "_scope_resolution_qualifier": {
6186 "type": "CHOICE",
6187 "members": [
6188 {
6189 "type": "SYMBOL",
6190 "name": "relative_scope"
6191 },
6192 {
6193 "type": "SYMBOL",
6194 "name": "_name"
6195 },
6196 {
6197 "type": "SYMBOL",
6198 "name": "_dereferencable_expression"
6199 }
6200 ]
6201 },
6202 "relative_scope": {
6203 "type": "PREC",
6204 "value": 22,
6205 "content": {
6206 "type": "CHOICE",
6207 "members": [
6208 {
6209 "type": "STRING",
6210 "value": "self"
6211 },
6212 {
6213 "type": "STRING",
6214 "value": "parent"
6215 },
6216 {
6217 "type": "ALIAS",
6218 "content": {
6219 "type": "PATTERN",
6220 "value": "static",
6221 "flags": "i"
6222 },
6223 "named": false,
6224 "value": "static"
6225 }
6226 ]
6227 }
6228 },
6229 "variadic_placeholder": {
6230 "type": "STRING",
6231 "value": "..."
6232 },
6233 "arguments": {
6234 "type": "SEQ",
6235 "members": [
6236 {
6237 "type": "STRING",
6238 "value": "("
6239 },
6240 {
6241 "type": "CHOICE",
6242 "members": [
6243 {
6244 "type": "CHOICE",
6245 "members": [
6246 {
6247 "type": "SEQ",
6248 "members": [
6249 {
6250 "type": "SEQ",
6251 "members": [
6252 {
6253 "type": "SYMBOL",
6254 "name": "argument"
6255 },
6256 {
6257 "type": "REPEAT",
6258 "content": {
6259 "type": "SEQ",
6260 "members": [
6261 {
6262 "type": "STRING",
6263 "value": ","
6264 },
6265 {
6266 "type": "SYMBOL",
6267 "name": "argument"
6268 }
6269 ]
6270 }
6271 }
6272 ]
6273 },
6274 {
6275 "type": "CHOICE",
6276 "members": [
6277 {
6278 "type": "STRING",
6279 "value": ","
6280 },
6281 {
6282 "type": "BLANK"
6283 }
6284 ]
6285 }
6286 ]
6287 },
6288 {
6289 "type": "SYMBOL",
6290 "name": "variadic_placeholder"
6291 }
6292 ]
6293 },
6294 {
6295 "type": "BLANK"
6296 }
6297 ]
6298 },
6299 {
6300 "type": "STRING",
6301 "value": ")"
6302 }
6303 ]
6304 },
6305 "argument": {
6306 "type": "SEQ",
6307 "members": [
6308 {
6309 "type": "CHOICE",
6310 "members": [
6311 {
6312 "type": "SYMBOL",
6313 "name": "_argument_name"
6314 },
6315 {
6316 "type": "BLANK"
6317 }
6318 ]
6319 },
6320 {
6321 "type": "CHOICE",
6322 "members": [
6323 {
6324 "type": "FIELD",
6325 "name": "reference_modifier",
6326 "content": {
6327 "type": "SYMBOL",
6328 "name": "reference_modifier"
6329 }
6330 },
6331 {
6332 "type": "BLANK"
6333 }
6334 ]
6335 },
6336 {
6337 "type": "CHOICE",
6338 "members": [
6339 {
6340 "type": "ALIAS",
6341 "content": {
6342 "type": "SYMBOL",
6343 "name": "_reserved_identifier"
6344 },
6345 "named": true,
6346 "value": "name"
6347 },
6348 {
6349 "type": "SYMBOL",
6350 "name": "variadic_unpacking"
6351 },
6352 {
6353 "type": "SYMBOL",
6354 "name": "expression"
6355 }
6356 ]
6357 }
6358 ]
6359 },
6360 "_argument_name": {
6361 "type": "SEQ",
6362 "members": [
6363 {
6364 "type": "FIELD",
6365 "name": "name",
6366 "content": {
6367 "type": "ALIAS",
6368 "content": {
6369 "type": "CHOICE",
6370 "members": [
6371 {
6372 "type": "SYMBOL",
6373 "name": "name"
6374 },
6375 {
6376 "type": "PATTERN",
6377 "value": "array",
6378 "flags": "i"
6379 },
6380 {
6381 "type": "PATTERN",
6382 "value": "fn",
6383 "flags": "i"
6384 },
6385 {
6386 "type": "PATTERN",
6387 "value": "function",
6388 "flags": "i"
6389 },
6390 {
6391 "type": "PATTERN",
6392 "value": "match",
6393 "flags": "i"
6394 },
6395 {
6396 "type": "PATTERN",
6397 "value": "namespace",
6398 "flags": "i"
6399 },
6400 {
6401 "type": "PATTERN",
6402 "value": "null",
6403 "flags": "i"
6404 },
6405 {
6406 "type": "PATTERN",
6407 "value": "static",
6408 "flags": "i"
6409 },
6410 {
6411 "type": "PATTERN",
6412 "value": "throw",
6413 "flags": "i"
6414 },
6415 {
6416 "type": "STRING",
6417 "value": "parent"
6418 },
6419 {
6420 "type": "STRING",
6421 "value": "self"
6422 },
6423 {
6424 "type": "PATTERN",
6425 "value": "true|false",
6426 "flags": "i"
6427 }
6428 ]
6429 },
6430 "named": true,
6431 "value": "name"
6432 }
6433 },
6434 {
6435 "type": "STRING",
6436 "value": ":"
6437 }
6438 ]
6439 },
6440 "member_call_expression": {
6441 "type": "PREC",
6442 "value": 24,
6443 "content": {
6444 "type": "SEQ",
6445 "members": [
6446 {
6447 "type": "FIELD",
6448 "name": "object",
6449 "content": {
6450 "type": "SYMBOL",
6451 "name": "_dereferencable_expression"
6452 }
6453 },
6454 {
6455 "type": "STRING",
6456 "value": "->"
6457 },
6458 {
6459 "type": "SYMBOL",
6460 "name": "_member_name"
6461 },
6462 {
6463 "type": "FIELD",
6464 "name": "arguments",
6465 "content": {
6466 "type": "SYMBOL",
6467 "name": "arguments"
6468 }
6469 }
6470 ]
6471 }
6472 },
6473 "nullsafe_member_call_expression": {
6474 "type": "PREC",
6475 "value": 24,
6476 "content": {
6477 "type": "SEQ",
6478 "members": [
6479 {
6480 "type": "FIELD",
6481 "name": "object",
6482 "content": {
6483 "type": "SYMBOL",
6484 "name": "_dereferencable_expression"
6485 }
6486 },
6487 {
6488 "type": "STRING",
6489 "value": "?->"
6490 },
6491 {
6492 "type": "SYMBOL",
6493 "name": "_member_name"
6494 },
6495 {
6496 "type": "FIELD",
6497 "name": "arguments",
6498 "content": {
6499 "type": "SYMBOL",
6500 "name": "arguments"
6501 }
6502 }
6503 ]
6504 }
6505 },
6506 "variadic_unpacking": {
6507 "type": "SEQ",
6508 "members": [
6509 {
6510 "type": "STRING",
6511 "value": "..."
6512 },
6513 {
6514 "type": "SYMBOL",
6515 "name": "expression"
6516 }
6517 ]
6518 },
6519 "_member_name": {
6520 "type": "CHOICE",
6521 "members": [
6522 {
6523 "type": "FIELD",
6524 "name": "name",
6525 "content": {
6526 "type": "CHOICE",
6527 "members": [
6528 {
6529 "type": "SYMBOL",
6530 "name": "_identifier"
6531 },
6532 {
6533 "type": "SYMBOL",
6534 "name": "_simple_variable"
6535 }
6536 ]
6537 }
6538 },
6539 {
6540 "type": "SEQ",
6541 "members": [
6542 {
6543 "type": "STRING",
6544 "value": "{"
6545 },
6546 {
6547 "type": "FIELD",
6548 "name": "name",
6549 "content": {
6550 "type": "SYMBOL",
6551 "name": "expression"
6552 }
6553 },
6554 {
6555 "type": "STRING",
6556 "value": "}"
6557 }
6558 ]
6559 }
6560 ]
6561 },
6562 "_variable_subscript_expression": {
6563 "type": "SEQ",
6564 "members": [
6565 {
6566 "type": "SYMBOL",
6567 "name": "_new_variable"
6568 },
6569 {
6570 "type": "SEQ",
6571 "members": [
6572 {
6573 "type": "STRING",
6574 "value": "["
6575 },
6576 {
6577 "type": "CHOICE",
6578 "members": [
6579 {
6580 "type": "SYMBOL",
6581 "name": "expression"
6582 },
6583 {
6584 "type": "BLANK"
6585 }
6586 ]
6587 },
6588 {
6589 "type": "STRING",
6590 "value": "]"
6591 }
6592 ]
6593 }
6594 ]
6595 },
6596 "_dereferencable_subscript_expression": {
6597 "type": "SEQ",
6598 "members": [
6599 {
6600 "type": "SYMBOL",
6601 "name": "_dereferencable_expression"
6602 },
6603 {
6604 "type": "SEQ",
6605 "members": [
6606 {
6607 "type": "STRING",
6608 "value": "["
6609 },
6610 {
6611 "type": "CHOICE",
6612 "members": [
6613 {
6614 "type": "SYMBOL",
6615 "name": "expression"
6616 },
6617 {
6618 "type": "BLANK"
6619 }
6620 ]
6621 },
6622 {
6623 "type": "STRING",
6624 "value": "]"
6625 }
6626 ]
6627 }
6628 ]
6629 },
6630 "_dereferencable_expression": {
6631 "type": "PREC",
6632 "value": 26,
6633 "content": {
6634 "type": "CHOICE",
6635 "members": [
6636 {
6637 "type": "SYMBOL",
6638 "name": "_variable"
6639 },
6640 {
6641 "type": "ALIAS",
6642 "content": {
6643 "type": "SYMBOL",
6644 "name": "_new_dereferencable_expression"
6645 },
6646 "named": true,
6647 "value": "object_creation_expression"
6648 },
6649 {
6650 "type": "SYMBOL",
6651 "name": "class_constant_access_expression"
6652 },
6653 {
6654 "type": "SYMBOL",
6655 "name": "parenthesized_expression"
6656 },
6657 {
6658 "type": "SYMBOL",
6659 "name": "_dereferencable_scalar"
6660 },
6661 {
6662 "type": "SYMBOL",
6663 "name": "_name"
6664 }
6665 ]
6666 }
6667 },
6668 "_dereferencable_scalar": {
6669 "type": "PREC",
6670 "value": 26,
6671 "content": {
6672 "type": "CHOICE",
6673 "members": [
6674 {
6675 "type": "SYMBOL",
6676 "name": "array_creation_expression"
6677 },
6678 {
6679 "type": "SYMBOL",
6680 "name": "_string"
6681 }
6682 ]
6683 }
6684 },
6685 "array_creation_expression": {
6686 "type": "CHOICE",
6687 "members": [
6688 {
6689 "type": "SEQ",
6690 "members": [
6691 {
6692 "type": "ALIAS",
6693 "content": {
6694 "type": "PATTERN",
6695 "value": "array",
6696 "flags": "i"
6697 },
6698 "named": false,
6699 "value": "array"
6700 },
6701 {
6702 "type": "STRING",
6703 "value": "("
6704 },
6705 {
6706 "type": "CHOICE",
6707 "members": [
6708 {
6709 "type": "SEQ",
6710 "members": [
6711 {
6712 "type": "SYMBOL",
6713 "name": "array_element_initializer"
6714 },
6715 {
6716 "type": "REPEAT",
6717 "content": {
6718 "type": "SEQ",
6719 "members": [
6720 {
6721 "type": "STRING",
6722 "value": ","
6723 },
6724 {
6725 "type": "SYMBOL",
6726 "name": "array_element_initializer"
6727 }
6728 ]
6729 }
6730 }
6731 ]
6732 },
6733 {
6734 "type": "BLANK"
6735 }
6736 ]
6737 },
6738 {
6739 "type": "CHOICE",
6740 "members": [
6741 {
6742 "type": "STRING",
6743 "value": ","
6744 },
6745 {
6746 "type": "BLANK"
6747 }
6748 ]
6749 },
6750 {
6751 "type": "STRING",
6752 "value": ")"
6753 }
6754 ]
6755 },
6756 {
6757 "type": "SEQ",
6758 "members": [
6759 {
6760 "type": "STRING",
6761 "value": "["
6762 },
6763 {
6764 "type": "CHOICE",
6765 "members": [
6766 {
6767 "type": "SEQ",
6768 "members": [
6769 {
6770 "type": "SYMBOL",
6771 "name": "array_element_initializer"
6772 },
6773 {
6774 "type": "REPEAT",
6775 "content": {
6776 "type": "SEQ",
6777 "members": [
6778 {
6779 "type": "STRING",
6780 "value": ","
6781 },
6782 {
6783 "type": "SYMBOL",
6784 "name": "array_element_initializer"
6785 }
6786 ]
6787 }
6788 }
6789 ]
6790 },
6791 {
6792 "type": "BLANK"
6793 }
6794 ]
6795 },
6796 {
6797 "type": "CHOICE",
6798 "members": [
6799 {
6800 "type": "STRING",
6801 "value": ","
6802 },
6803 {
6804 "type": "BLANK"
6805 }
6806 ]
6807 },
6808 {
6809 "type": "STRING",
6810 "value": "]"
6811 }
6812 ]
6813 }
6814 ]
6815 },
6816 "attribute_group": {
6817 "type": "SEQ",
6818 "members": [
6819 {
6820 "type": "STRING",
6821 "value": "#["
6822 },
6823 {
6824 "type": "SEQ",
6825 "members": [
6826 {
6827 "type": "SYMBOL",
6828 "name": "attribute"
6829 },
6830 {
6831 "type": "REPEAT",
6832 "content": {
6833 "type": "SEQ",
6834 "members": [
6835 {
6836 "type": "STRING",
6837 "value": ","
6838 },
6839 {
6840 "type": "SYMBOL",
6841 "name": "attribute"
6842 }
6843 ]
6844 }
6845 }
6846 ]
6847 },
6848 {
6849 "type": "CHOICE",
6850 "members": [
6851 {
6852 "type": "STRING",
6853 "value": ","
6854 },
6855 {
6856 "type": "BLANK"
6857 }
6858 ]
6859 },
6860 {
6861 "type": "STRING",
6862 "value": "]"
6863 }
6864 ]
6865 },
6866 "attribute_list": {
6867 "type": "REPEAT1",
6868 "content": {
6869 "type": "SYMBOL",
6870 "name": "attribute_group"
6871 }
6872 },
6873 "attribute": {
6874 "type": "SEQ",
6875 "members": [
6876 {
6877 "type": "SYMBOL",
6878 "name": "_name"
6879 },
6880 {
6881 "type": "CHOICE",
6882 "members": [
6883 {
6884 "type": "FIELD",
6885 "name": "parameters",
6886 "content": {
6887 "type": "SYMBOL",
6888 "name": "arguments"
6889 }
6890 },
6891 {
6892 "type": "BLANK"
6893 }
6894 ]
6895 }
6896 ]
6897 },
6898 "_complex_string_part": {
6899 "type": "SEQ",
6900 "members": [
6901 {
6902 "type": "STRING",
6903 "value": "{"
6904 },
6905 {
6906 "type": "SYMBOL",
6907 "name": "expression"
6908 },
6909 {
6910 "type": "STRING",
6911 "value": "}"
6912 }
6913 ]
6914 },
6915 "_simple_string_member_access_expression": {
6916 "type": "PREC",
6917 "value": 25,
6918 "content": {
6919 "type": "SEQ",
6920 "members": [
6921 {
6922 "type": "FIELD",
6923 "name": "object",
6924 "content": {
6925 "type": "SYMBOL",
6926 "name": "variable_name"
6927 }
6928 },
6929 {
6930 "type": "STRING",
6931 "value": "->"
6932 },
6933 {
6934 "type": "FIELD",
6935 "name": "name",
6936 "content": {
6937 "type": "SYMBOL",
6938 "name": "name"
6939 }
6940 }
6941 ]
6942 }
6943 },
6944 "_simple_string_subscript_unary_expression": {
6945 "type": "PREC_LEFT",
6946 "value": 0,
6947 "content": {
6948 "type": "SEQ",
6949 "members": [
6950 {
6951 "type": "STRING",
6952 "value": "-"
6953 },
6954 {
6955 "type": "SYMBOL",
6956 "name": "integer"
6957 }
6958 ]
6959 }
6960 },
6961 "_simple_string_array_access_argument": {
6962 "type": "CHOICE",
6963 "members": [
6964 {
6965 "type": "SYMBOL",
6966 "name": "integer"
6967 },
6968 {
6969 "type": "ALIAS",
6970 "content": {
6971 "type": "SYMBOL",
6972 "name": "_simple_string_subscript_unary_expression"
6973 },
6974 "named": true,
6975 "value": "unary_op_expression"
6976 },
6977 {
6978 "type": "SYMBOL",
6979 "name": "name"
6980 },
6981 {
6982 "type": "SYMBOL",
6983 "name": "variable_name"
6984 }
6985 ]
6986 },
6987 "_simple_string_subscript_expression": {
6988 "type": "PREC",
6989 "value": 26,
6990 "content": {
6991 "type": "SEQ",
6992 "members": [
6993 {
6994 "type": "SYMBOL",
6995 "name": "variable_name"
6996 },
6997 {
6998 "type": "SEQ",
6999 "members": [
7000 {
7001 "type": "STRING",
7002 "value": "["
7003 },
7004 {
7005 "type": "SYMBOL",
7006 "name": "_simple_string_array_access_argument"
7007 },
7008 {
7009 "type": "STRING",
7010 "value": "]"
7011 }
7012 ]
7013 }
7014 ]
7015 }
7016 },
7017 "_simple_string_part": {
7018 "type": "CHOICE",
7019 "members": [
7020 {
7021 "type": "ALIAS",
7022 "content": {
7023 "type": "SYMBOL",
7024 "name": "_simple_string_member_access_expression"
7025 },
7026 "named": true,
7027 "value": "member_access_expression"
7028 },
7029 {
7030 "type": "SYMBOL",
7031 "name": "_simple_variable"
7032 },
7033 {
7034 "type": "ALIAS",
7035 "content": {
7036 "type": "SYMBOL",
7037 "name": "_simple_string_subscript_expression"
7038 },
7039 "named": true,
7040 "value": "subscript_expression"
7041 }
7042 ]
7043 },
7044 "escape_sequence": {
7045 "type": "IMMEDIATE_TOKEN",
7046 "content": {
7047 "type": "SEQ",
7048 "members": [
7049 {
7050 "type": "STRING",
7051 "value": "\\"
7052 },
7053 {
7054 "type": "CHOICE",
7055 "members": [
7056 {
7057 "type": "STRING",
7058 "value": "n"
7059 },
7060 {
7061 "type": "STRING",
7062 "value": "r"
7063 },
7064 {
7065 "type": "STRING",
7066 "value": "t"
7067 },
7068 {
7069 "type": "STRING",
7070 "value": "v"
7071 },
7072 {
7073 "type": "STRING",
7074 "value": "e"
7075 },
7076 {
7077 "type": "STRING",
7078 "value": "f"
7079 },
7080 {
7081 "type": "STRING",
7082 "value": "\\"
7083 },
7084 {
7085 "type": "PATTERN",
7086 "value": "\\$"
7087 },
7088 {
7089 "type": "STRING",
7090 "value": "\""
7091 },
7092 {
7093 "type": "STRING",
7094 "value": "`"
7095 },
7096 {
7097 "type": "PATTERN",
7098 "value": "[0-7]{1,3}"
7099 },
7100 {
7101 "type": "PATTERN",
7102 "value": "x[0-9A-Fa-f]{1,2}"
7103 },
7104 {
7105 "type": "PATTERN",
7106 "value": "u\\{[0-9A-Fa-f]+\\}"
7107 }
7108 ]
7109 }
7110 ]
7111 }
7112 },
7113 "_interpolated_string_body": {
7114 "type": "REPEAT1",
7115 "content": {
7116 "type": "CHOICE",
7117 "members": [
7118 {
7119 "type": "SYMBOL",
7120 "name": "escape_sequence"
7121 },
7122 {
7123 "type": "SEQ",
7124 "members": [
7125 {
7126 "type": "SYMBOL",
7127 "name": "variable_name"
7128 },
7129 {
7130 "type": "ALIAS",
7131 "content": {
7132 "type": "SYMBOL",
7133 "name": "encapsed_string_chars_after_variable"
7134 },
7135 "named": true,
7136 "value": "string_content"
7137 }
7138 ]
7139 },
7140 {
7141 "type": "ALIAS",
7142 "content": {
7143 "type": "SYMBOL",
7144 "name": "encapsed_string_chars"
7145 },
7146 "named": true,
7147 "value": "string_content"
7148 },
7149 {
7150 "type": "SYMBOL",
7151 "name": "_simple_string_part"
7152 },
7153 {
7154 "type": "SYMBOL",
7155 "name": "_complex_string_part"
7156 },
7157 {
7158 "type": "ALIAS",
7159 "content": {
7160 "type": "STRING",
7161 "value": "\\u"
7162 },
7163 "named": true,
7164 "value": "string_content"
7165 }
7166 ]
7167 }
7168 },
7169 "_interpolated_string_body_heredoc": {
7170 "type": "REPEAT1",
7171 "content": {
7172 "type": "CHOICE",
7173 "members": [
7174 {
7175 "type": "SYMBOL",
7176 "name": "escape_sequence"
7177 },
7178 {
7179 "type": "SEQ",
7180 "members": [
7181 {
7182 "type": "SYMBOL",
7183 "name": "variable_name"
7184 },
7185 {
7186 "type": "ALIAS",
7187 "content": {
7188 "type": "SYMBOL",
7189 "name": "encapsed_string_chars_after_variable_heredoc"
7190 },
7191 "named": true,
7192 "value": "string_content"
7193 }
7194 ]
7195 },
7196 {
7197 "type": "ALIAS",
7198 "content": {
7199 "type": "SYMBOL",
7200 "name": "encapsed_string_chars_heredoc"
7201 },
7202 "named": true,
7203 "value": "string_content"
7204 },
7205 {
7206 "type": "SYMBOL",
7207 "name": "_simple_string_part"
7208 },
7209 {
7210 "type": "SYMBOL",
7211 "name": "_complex_string_part"
7212 },
7213 {
7214 "type": "ALIAS",
7215 "content": {
7216 "type": "STRING",
7217 "value": "\\u"
7218 },
7219 "named": true,
7220 "value": "string_content"
7221 }
7222 ]
7223 }
7224 },
7225 "encapsed_string": {
7226 "type": "PREC_RIGHT",
7227 "value": 0,
7228 "content": {
7229 "type": "SEQ",
7230 "members": [
7231 {
7232 "type": "CHOICE",
7233 "members": [
7234 {
7235 "type": "PATTERN",
7236 "value": "[bB]\""
7237 },
7238 {
7239 "type": "STRING",
7240 "value": "\""
7241 }
7242 ]
7243 },
7244 {
7245 "type": "CHOICE",
7246 "members": [
7247 {
7248 "type": "SYMBOL",
7249 "name": "_interpolated_string_body"
7250 },
7251 {
7252 "type": "BLANK"
7253 }
7254 ]
7255 },
7256 {
7257 "type": "STRING",
7258 "value": "\""
7259 }
7260 ]
7261 }
7262 },
7263 "string": {
7264 "type": "SEQ",
7265 "members": [
7266 {
7267 "type": "CHOICE",
7268 "members": [
7269 {
7270 "type": "PATTERN",
7271 "value": "[bB]'"
7272 },
7273 {
7274 "type": "STRING",
7275 "value": "'"
7276 }
7277 ]
7278 },
7279 {
7280 "type": "REPEAT",
7281 "content": {
7282 "type": "CHOICE",
7283 "members": [
7284 {
7285 "type": "ALIAS",
7286 "content": {
7287 "type": "TOKEN",
7288 "content": {
7289 "type": "CHOICE",
7290 "members": [
7291 {
7292 "type": "STRING",
7293 "value": "\\\\"
7294 },
7295 {
7296 "type": "STRING",
7297 "value": "\\'"
7298 }
7299 ]
7300 }
7301 },
7302 "named": true,
7303 "value": "escape_sequence"
7304 },
7305 {
7306 "type": "SYMBOL",
7307 "name": "string_content"
7308 }
7309 ]
7310 }
7311 },
7312 {
7313 "type": "STRING",
7314 "value": "'"
7315 }
7316 ]
7317 },
7318 "string_content": {
7319 "type": "PREC_RIGHT",
7320 "value": 0,
7321 "content": {
7322 "type": "REPEAT1",
7323 "content": {
7324 "type": "IMMEDIATE_TOKEN",
7325 "content": {
7326 "type": "PREC",
7327 "value": 1,
7328 "content": {
7329 "type": "PATTERN",
7330 "value": "\\\\?[^'\\\\]+"
7331 }
7332 }
7333 }
7334 }
7335 },
7336 "heredoc_body": {
7337 "type": "SEQ",
7338 "members": [
7339 {
7340 "type": "SYMBOL",
7341 "name": "_new_line"
7342 },
7343 {
7344 "type": "REPEAT1",
7345 "content": {
7346 "type": "PREC_RIGHT",
7347 "value": 0,
7348 "content": {
7349 "type": "SEQ",
7350 "members": [
7351 {
7352 "type": "CHOICE",
7353 "members": [
7354 {
7355 "type": "SYMBOL",
7356 "name": "_new_line"
7357 },
7358 {
7359 "type": "BLANK"
7360 }
7361 ]
7362 },
7363 {
7364 "type": "SYMBOL",
7365 "name": "_interpolated_string_body_heredoc"
7366 }
7367 ]
7368 }
7369 }
7370 }
7371 ]
7372 },
7373 "heredoc": {
7374 "type": "SEQ",
7375 "members": [
7376 {
7377 "type": "TOKEN",
7378 "content": {
7379 "type": "STRING",
7380 "value": "<<<"
7381 }
7382 },
7383 {
7384 "type": "CHOICE",
7385 "members": [
7386 {
7387 "type": "STRING",
7388 "value": "\""
7389 },
7390 {
7391 "type": "BLANK"
7392 }
7393 ]
7394 },
7395 {
7396 "type": "FIELD",
7397 "name": "identifier",
7398 "content": {
7399 "type": "SYMBOL",
7400 "name": "heredoc_start"
7401 }
7402 },
7403 {
7404 "type": "CHOICE",
7405 "members": [
7406 {
7407 "type": "IMMEDIATE_TOKEN",
7408 "content": {
7409 "type": "STRING",
7410 "value": "\""
7411 }
7412 },
7413 {
7414 "type": "BLANK"
7415 }
7416 ]
7417 },
7418 {
7419 "type": "CHOICE",
7420 "members": [
7421 {
7422 "type": "SEQ",
7423 "members": [
7424 {
7425 "type": "FIELD",
7426 "name": "value",
7427 "content": {
7428 "type": "SYMBOL",
7429 "name": "heredoc_body"
7430 }
7431 },
7432 {
7433 "type": "SYMBOL",
7434 "name": "_new_line"
7435 }
7436 ]
7437 },
7438 {
7439 "type": "FIELD",
7440 "name": "value",
7441 "content": {
7442 "type": "CHOICE",
7443 "members": [
7444 {
7445 "type": "SYMBOL",
7446 "name": "heredoc_body"
7447 },
7448 {
7449 "type": "BLANK"
7450 }
7451 ]
7452 }
7453 }
7454 ]
7455 },
7456 {
7457 "type": "FIELD",
7458 "name": "end_tag",
7459 "content": {
7460 "type": "SYMBOL",
7461 "name": "heredoc_end"
7462 }
7463 }
7464 ]
7465 },
7466 "_new_line": {
7467 "type": "PATTERN",
7468 "value": "\\r?\\n|\\r"
7469 },
7470 "nowdoc_body": {
7471 "type": "SEQ",
7472 "members": [
7473 {
7474 "type": "SYMBOL",
7475 "name": "_new_line"
7476 },
7477 {
7478 "type": "REPEAT1",
7479 "content": {
7480 "type": "SYMBOL",
7481 "name": "nowdoc_string"
7482 }
7483 }
7484 ]
7485 },
7486 "nowdoc": {
7487 "type": "SEQ",
7488 "members": [
7489 {
7490 "type": "TOKEN",
7491 "content": {
7492 "type": "STRING",
7493 "value": "<<<"
7494 }
7495 },
7496 {
7497 "type": "STRING",
7498 "value": "'"
7499 },
7500 {
7501 "type": "FIELD",
7502 "name": "identifier",
7503 "content": {
7504 "type": "SYMBOL",
7505 "name": "heredoc_start"
7506 }
7507 },
7508 {
7509 "type": "IMMEDIATE_TOKEN",
7510 "content": {
7511 "type": "STRING",
7512 "value": "'"
7513 }
7514 },
7515 {
7516 "type": "CHOICE",
7517 "members": [
7518 {
7519 "type": "SEQ",
7520 "members": [
7521 {
7522 "type": "FIELD",
7523 "name": "value",
7524 "content": {
7525 "type": "SYMBOL",
7526 "name": "nowdoc_body"
7527 }
7528 },
7529 {
7530 "type": "SYMBOL",
7531 "name": "_new_line"
7532 }
7533 ]
7534 },
7535 {
7536 "type": "FIELD",
7537 "name": "value",
7538 "content": {
7539 "type": "CHOICE",
7540 "members": [
7541 {
7542 "type": "SYMBOL",
7543 "name": "nowdoc_body"
7544 },
7545 {
7546 "type": "BLANK"
7547 }
7548 ]
7549 }
7550 }
7551 ]
7552 },
7553 {
7554 "type": "FIELD",
7555 "name": "end_tag",
7556 "content": {
7557 "type": "SYMBOL",
7558 "name": "heredoc_end"
7559 }
7560 }
7561 ]
7562 },
7563 "_interpolated_execution_operator_body": {
7564 "type": "REPEAT1",
7565 "content": {
7566 "type": "CHOICE",
7567 "members": [
7568 {
7569 "type": "SYMBOL",
7570 "name": "escape_sequence"
7571 },
7572 {
7573 "type": "SEQ",
7574 "members": [
7575 {
7576 "type": "SYMBOL",
7577 "name": "variable_name"
7578 },
7579 {
7580 "type": "ALIAS",
7581 "content": {
7582 "type": "SYMBOL",
7583 "name": "execution_string_chars_after_variable"
7584 },
7585 "named": true,
7586 "value": "string_content"
7587 }
7588 ]
7589 },
7590 {
7591 "type": "ALIAS",
7592 "content": {
7593 "type": "SYMBOL",
7594 "name": "execution_string_chars"
7595 },
7596 "named": true,
7597 "value": "string_content"
7598 },
7599 {
7600 "type": "SYMBOL",
7601 "name": "_simple_string_part"
7602 },
7603 {
7604 "type": "SYMBOL",
7605 "name": "_complex_string_part"
7606 },
7607 {
7608 "type": "ALIAS",
7609 "content": {
7610 "type": "STRING",
7611 "value": "\\u"
7612 },
7613 "named": true,
7614 "value": "string_content"
7615 }
7616 ]
7617 }
7618 },
7619 "shell_command_expression": {
7620 "type": "SEQ",
7621 "members": [
7622 {
7623 "type": "STRING",
7624 "value": "`"
7625 },
7626 {
7627 "type": "CHOICE",
7628 "members": [
7629 {
7630 "type": "SYMBOL",
7631 "name": "_interpolated_execution_operator_body"
7632 },
7633 {
7634 "type": "BLANK"
7635 }
7636 ]
7637 },
7638 {
7639 "type": "STRING",
7640 "value": "`"
7641 }
7642 ]
7643 },
7644 "boolean": {
7645 "type": "PATTERN",
7646 "value": "true|false",
7647 "flags": "i"
7648 },
7649 "null": {
7650 "type": "PATTERN",
7651 "value": "null",
7652 "flags": "i"
7653 },
7654 "_string": {
7655 "type": "CHOICE",
7656 "members": [
7657 {
7658 "type": "SYMBOL",
7659 "name": "encapsed_string"
7660 },
7661 {
7662 "type": "SYMBOL",
7663 "name": "string"
7664 },
7665 {
7666 "type": "SYMBOL",
7667 "name": "heredoc"
7668 },
7669 {
7670 "type": "SYMBOL",
7671 "name": "nowdoc"
7672 }
7673 ]
7674 },
7675 "dynamic_variable_name": {
7676 "type": "CHOICE",
7677 "members": [
7678 {
7679 "type": "SEQ",
7680 "members": [
7681 {
7682 "type": "STRING",
7683 "value": "$"
7684 },
7685 {
7686 "type": "SYMBOL",
7687 "name": "_simple_variable"
7688 }
7689 ]
7690 },
7691 {
7692 "type": "SEQ",
7693 "members": [
7694 {
7695 "type": "STRING",
7696 "value": "$"
7697 },
7698 {
7699 "type": "STRING",
7700 "value": "{"
7701 },
7702 {
7703 "type": "SYMBOL",
7704 "name": "expression"
7705 },
7706 {
7707 "type": "STRING",
7708 "value": "}"
7709 }
7710 ]
7711 }
7712 ]
7713 },
7714 "_simple_variable": {
7715 "type": "CHOICE",
7716 "members": [
7717 {
7718 "type": "SYMBOL",
7719 "name": "variable_name"
7720 },
7721 {
7722 "type": "SYMBOL",
7723 "name": "dynamic_variable_name"
7724 }
7725 ]
7726 },
7727 "_new_variable": {
7728 "type": "PREC",
7729 "value": 1,
7730 "content": {
7731 "type": "CHOICE",
7732 "members": [
7733 {
7734 "type": "SYMBOL",
7735 "name": "_simple_variable"
7736 },
7737 {
7738 "type": "ALIAS",
7739 "content": {
7740 "type": "SYMBOL",
7741 "name": "_variable_subscript_expression"
7742 },
7743 "named": true,
7744 "value": "subscript_expression"
7745 },
7746 {
7747 "type": "ALIAS",
7748 "content": {
7749 "type": "SYMBOL",
7750 "name": "_variable_member_access_expression"
7751 },
7752 "named": true,
7753 "value": "member_access_expression"
7754 },
7755 {
7756 "type": "ALIAS",
7757 "content": {
7758 "type": "SYMBOL",
7759 "name": "_variable_nullsafe_member_access_expression"
7760 },
7761 "named": true,
7762 "value": "nullsafe_member_access_expression"
7763 },
7764 {
7765 "type": "ALIAS",
7766 "content": {
7767 "type": "SYMBOL",
7768 "name": "_variable_scoped_property_access_expression"
7769 },
7770 "named": true,
7771 "value": "scoped_property_access_expression"
7772 }
7773 ]
7774 }
7775 },
7776 "_callable_variable": {
7777 "type": "CHOICE",
7778 "members": [
7779 {
7780 "type": "SYMBOL",
7781 "name": "_simple_variable"
7782 },
7783 {
7784 "type": "ALIAS",
7785 "content": {
7786 "type": "SYMBOL",
7787 "name": "_dereferencable_subscript_expression"
7788 },
7789 "named": true,
7790 "value": "subscript_expression"
7791 },
7792 {
7793 "type": "SYMBOL",
7794 "name": "member_call_expression"
7795 },
7796 {
7797 "type": "SYMBOL",
7798 "name": "nullsafe_member_call_expression"
7799 },
7800 {
7801 "type": "SYMBOL",
7802 "name": "function_call_expression"
7803 },
7804 {
7805 "type": "SYMBOL",
7806 "name": "scoped_call_expression"
7807 }
7808 ]
7809 },
7810 "variable_name": {
7811 "type": "SEQ",
7812 "members": [
7813 {
7814 "type": "STRING",
7815 "value": "$"
7816 },
7817 {
7818 "type": "SYMBOL",
7819 "name": "name"
7820 }
7821 ]
7822 },
7823 "by_ref": {
7824 "type": "SEQ",
7825 "members": [
7826 {
7827 "type": "STRING",
7828 "value": "&"
7829 },
7830 {
7831 "type": "SYMBOL",
7832 "name": "_variable"
7833 }
7834 ]
7835 },
7836 "yield_expression": {
7837 "type": "PREC_RIGHT",
7838 "value": 0,
7839 "content": {
7840 "type": "SEQ",
7841 "members": [
7842 {
7843 "type": "ALIAS",
7844 "content": {
7845 "type": "PATTERN",
7846 "value": "yield",
7847 "flags": "i"
7848 },
7849 "named": false,
7850 "value": "yield"
7851 },
7852 {
7853 "type": "CHOICE",
7854 "members": [
7855 {
7856 "type": "CHOICE",
7857 "members": [
7858 {
7859 "type": "SYMBOL",
7860 "name": "array_element_initializer"
7861 },
7862 {
7863 "type": "SEQ",
7864 "members": [
7865 {
7866 "type": "ALIAS",
7867 "content": {
7868 "type": "PATTERN",
7869 "value": "from",
7870 "flags": "i"
7871 },
7872 "named": false,
7873 "value": "from"
7874 },
7875 {
7876 "type": "SYMBOL",
7877 "name": "expression"
7878 }
7879 ]
7880 }
7881 ]
7882 },
7883 {
7884 "type": "BLANK"
7885 }
7886 ]
7887 }
7888 ]
7889 }
7890 },
7891 "array_element_initializer": {
7892 "type": "PREC_RIGHT",
7893 "value": 0,
7894 "content": {
7895 "type": "CHOICE",
7896 "members": [
7897 {
7898 "type": "CHOICE",
7899 "members": [
7900 {
7901 "type": "SYMBOL",
7902 "name": "by_ref"
7903 },
7904 {
7905 "type": "SYMBOL",
7906 "name": "expression"
7907 }
7908 ]
7909 },
7910 {
7911 "type": "SEQ",
7912 "members": [
7913 {
7914 "type": "SYMBOL",
7915 "name": "expression"
7916 },
7917 {
7918 "type": "STRING",
7919 "value": "=>"
7920 },
7921 {
7922 "type": "CHOICE",
7923 "members": [
7924 {
7925 "type": "SYMBOL",
7926 "name": "by_ref"
7927 },
7928 {
7929 "type": "SYMBOL",
7930 "name": "expression"
7931 }
7932 ]
7933 }
7934 ]
7935 },
7936 {
7937 "type": "SYMBOL",
7938 "name": "variadic_unpacking"
7939 }
7940 ]
7941 }
7942 },
7943 "binary_expression": {
7944 "type": "CHOICE",
7945 "members": [
7946 {
7947 "type": "PREC",
7948 "value": 20,
7949 "content": {
7950 "type": "SEQ",
7951 "members": [
7952 {
7953 "type": "FIELD",
7954 "name": "left",
7955 "content": {
7956 "type": "SYMBOL",
7957 "name": "_unary_expression"
7958 }
7959 },
7960 {
7961 "type": "FIELD",
7962 "name": "operator",
7963 "content": {
7964 "type": "ALIAS",
7965 "content": {
7966 "type": "PATTERN",
7967 "value": "instanceof",
7968 "flags": "i"
7969 },
7970 "named": false,
7971 "value": "instanceof"
7972 }
7973 },
7974 {
7975 "type": "FIELD",
7976 "name": "right",
7977 "content": {
7978 "type": "SYMBOL",
7979 "name": "_class_name_reference"
7980 }
7981 }
7982 ]
7983 }
7984 },
7985 {
7986 "type": "PREC_RIGHT",
7987 "value": 6,
7988 "content": {
7989 "type": "SEQ",
7990 "members": [
7991 {
7992 "type": "FIELD",
7993 "name": "left",
7994 "content": {
7995 "type": "SYMBOL",
7996 "name": "expression"
7997 }
7998 },
7999 {
8000 "type": "FIELD",
8001 "name": "operator",
8002 "content": {
8003 "type": "STRING",
8004 "value": "??"
8005 }
8006 },
8007 {
8008 "type": "FIELD",
8009 "name": "right",
8010 "content": {
8011 "type": "SYMBOL",
8012 "name": "expression"
8013 }
8014 }
8015 ]
8016 }
8017 },
8018 {
8019 "type": "PREC_RIGHT",
8020 "value": 18,
8021 "content": {
8022 "type": "SEQ",
8023 "members": [
8024 {
8025 "type": "FIELD",
8026 "name": "left",
8027 "content": {
8028 "type": "SYMBOL",
8029 "name": "expression"
8030 }
8031 },
8032 {
8033 "type": "FIELD",
8034 "name": "operator",
8035 "content": {
8036 "type": "STRING",
8037 "value": "**"
8038 }
8039 },
8040 {
8041 "type": "FIELD",
8042 "name": "right",
8043 "content": {
8044 "type": "SYMBOL",
8045 "name": "expression"
8046 }
8047 }
8048 ]
8049 }
8050 },
8051 {
8052 "type": "PREC_LEFT",
8053 "value": 3,
8054 "content": {
8055 "type": "SEQ",
8056 "members": [
8057 {
8058 "type": "FIELD",
8059 "name": "left",
8060 "content": {
8061 "type": "SYMBOL",
8062 "name": "expression"
8063 }
8064 },
8065 {
8066 "type": "FIELD",
8067 "name": "operator",
8068 "content": {
8069 "type": "ALIAS",
8070 "content": {
8071 "type": "PATTERN",
8072 "value": "and",
8073 "flags": "i"
8074 },
8075 "named": false,
8076 "value": "and"
8077 }
8078 },
8079 {
8080 "type": "FIELD",
8081 "name": "right",
8082 "content": {
8083 "type": "SYMBOL",
8084 "name": "expression"
8085 }
8086 }
8087 ]
8088 }
8089 },
8090 {
8091 "type": "PREC_LEFT",
8092 "value": 1,
8093 "content": {
8094 "type": "SEQ",
8095 "members": [
8096 {
8097 "type": "FIELD",
8098 "name": "left",
8099 "content": {
8100 "type": "SYMBOL",
8101 "name": "expression"
8102 }
8103 },
8104 {
8105 "type": "FIELD",
8106 "name": "operator",
8107 "content": {
8108 "type": "ALIAS",
8109 "content": {
8110 "type": "PATTERN",
8111 "value": "or",
8112 "flags": "i"
8113 },
8114 "named": false,
8115 "value": "or"
8116 }
8117 },
8118 {
8119 "type": "FIELD",
8120 "name": "right",
8121 "content": {
8122 "type": "SYMBOL",
8123 "name": "expression"
8124 }
8125 }
8126 ]
8127 }
8128 },
8129 {
8130 "type": "PREC_LEFT",
8131 "value": 2,
8132 "content": {
8133 "type": "SEQ",
8134 "members": [
8135 {
8136 "type": "FIELD",
8137 "name": "left",
8138 "content": {
8139 "type": "SYMBOL",
8140 "name": "expression"
8141 }
8142 },
8143 {
8144 "type": "FIELD",
8145 "name": "operator",
8146 "content": {
8147 "type": "ALIAS",
8148 "content": {
8149 "type": "PATTERN",
8150 "value": "xor",
8151 "flags": "i"
8152 },
8153 "named": false,
8154 "value": "xor"
8155 }
8156 },
8157 {
8158 "type": "FIELD",
8159 "name": "right",
8160 "content": {
8161 "type": "SYMBOL",
8162 "name": "expression"
8163 }
8164 }
8165 ]
8166 }
8167 },
8168 {
8169 "type": "PREC_LEFT",
8170 "value": 7,
8171 "content": {
8172 "type": "SEQ",
8173 "members": [
8174 {
8175 "type": "FIELD",
8176 "name": "left",
8177 "content": {
8178 "type": "SYMBOL",
8179 "name": "expression"
8180 }
8181 },
8182 {
8183 "type": "FIELD",
8184 "name": "operator",
8185 "content": {
8186 "type": "STRING",
8187 "value": "||"
8188 }
8189 },
8190 {
8191 "type": "FIELD",
8192 "name": "right",
8193 "content": {
8194 "type": "SYMBOL",
8195 "name": "expression"
8196 }
8197 }
8198 ]
8199 }
8200 },
8201 {
8202 "type": "PREC_LEFT",
8203 "value": 8,
8204 "content": {
8205 "type": "SEQ",
8206 "members": [
8207 {
8208 "type": "FIELD",
8209 "name": "left",
8210 "content": {
8211 "type": "SYMBOL",
8212 "name": "expression"
8213 }
8214 },
8215 {
8216 "type": "FIELD",
8217 "name": "operator",
8218 "content": {
8219 "type": "STRING",
8220 "value": "&&"
8221 }
8222 },
8223 {
8224 "type": "FIELD",
8225 "name": "right",
8226 "content": {
8227 "type": "SYMBOL",
8228 "name": "expression"
8229 }
8230 }
8231 ]
8232 }
8233 },
8234 {
8235 "type": "PREC_LEFT",
8236 "value": 9,
8237 "content": {
8238 "type": "SEQ",
8239 "members": [
8240 {
8241 "type": "FIELD",
8242 "name": "left",
8243 "content": {
8244 "type": "SYMBOL",
8245 "name": "expression"
8246 }
8247 },
8248 {
8249 "type": "FIELD",
8250 "name": "operator",
8251 "content": {
8252 "type": "STRING",
8253 "value": "|"
8254 }
8255 },
8256 {
8257 "type": "FIELD",
8258 "name": "right",
8259 "content": {
8260 "type": "SYMBOL",
8261 "name": "expression"
8262 }
8263 }
8264 ]
8265 }
8266 },
8267 {
8268 "type": "PREC_LEFT",
8269 "value": 10,
8270 "content": {
8271 "type": "SEQ",
8272 "members": [
8273 {
8274 "type": "FIELD",
8275 "name": "left",
8276 "content": {
8277 "type": "SYMBOL",
8278 "name": "expression"
8279 }
8280 },
8281 {
8282 "type": "FIELD",
8283 "name": "operator",
8284 "content": {
8285 "type": "STRING",
8286 "value": "^"
8287 }
8288 },
8289 {
8290 "type": "FIELD",
8291 "name": "right",
8292 "content": {
8293 "type": "SYMBOL",
8294 "name": "expression"
8295 }
8296 }
8297 ]
8298 }
8299 },
8300 {
8301 "type": "PREC_LEFT",
8302 "value": 11,
8303 "content": {
8304 "type": "SEQ",
8305 "members": [
8306 {
8307 "type": "FIELD",
8308 "name": "left",
8309 "content": {
8310 "type": "SYMBOL",
8311 "name": "expression"
8312 }
8313 },
8314 {
8315 "type": "FIELD",
8316 "name": "operator",
8317 "content": {
8318 "type": "STRING",
8319 "value": "&"
8320 }
8321 },
8322 {
8323 "type": "FIELD",
8324 "name": "right",
8325 "content": {
8326 "type": "SYMBOL",
8327 "name": "expression"
8328 }
8329 }
8330 ]
8331 }
8332 },
8333 {
8334 "type": "PREC_LEFT",
8335 "value": 12,
8336 "content": {
8337 "type": "SEQ",
8338 "members": [
8339 {
8340 "type": "FIELD",
8341 "name": "left",
8342 "content": {
8343 "type": "SYMBOL",
8344 "name": "expression"
8345 }
8346 },
8347 {
8348 "type": "FIELD",
8349 "name": "operator",
8350 "content": {
8351 "type": "STRING",
8352 "value": "=="
8353 }
8354 },
8355 {
8356 "type": "FIELD",
8357 "name": "right",
8358 "content": {
8359 "type": "SYMBOL",
8360 "name": "expression"
8361 }
8362 }
8363 ]
8364 }
8365 },
8366 {
8367 "type": "PREC_LEFT",
8368 "value": 12,
8369 "content": {
8370 "type": "SEQ",
8371 "members": [
8372 {
8373 "type": "FIELD",
8374 "name": "left",
8375 "content": {
8376 "type": "SYMBOL",
8377 "name": "expression"
8378 }
8379 },
8380 {
8381 "type": "FIELD",
8382 "name": "operator",
8383 "content": {
8384 "type": "STRING",
8385 "value": "!="
8386 }
8387 },
8388 {
8389 "type": "FIELD",
8390 "name": "right",
8391 "content": {
8392 "type": "SYMBOL",
8393 "name": "expression"
8394 }
8395 }
8396 ]
8397 }
8398 },
8399 {
8400 "type": "PREC_LEFT",
8401 "value": 12,
8402 "content": {
8403 "type": "SEQ",
8404 "members": [
8405 {
8406 "type": "FIELD",
8407 "name": "left",
8408 "content": {
8409 "type": "SYMBOL",
8410 "name": "expression"
8411 }
8412 },
8413 {
8414 "type": "FIELD",
8415 "name": "operator",
8416 "content": {
8417 "type": "STRING",
8418 "value": "<>"
8419 }
8420 },
8421 {
8422 "type": "FIELD",
8423 "name": "right",
8424 "content": {
8425 "type": "SYMBOL",
8426 "name": "expression"
8427 }
8428 }
8429 ]
8430 }
8431 },
8432 {
8433 "type": "PREC_LEFT",
8434 "value": 12,
8435 "content": {
8436 "type": "SEQ",
8437 "members": [
8438 {
8439 "type": "FIELD",
8440 "name": "left",
8441 "content": {
8442 "type": "SYMBOL",
8443 "name": "expression"
8444 }
8445 },
8446 {
8447 "type": "FIELD",
8448 "name": "operator",
8449 "content": {
8450 "type": "STRING",
8451 "value": "==="
8452 }
8453 },
8454 {
8455 "type": "FIELD",
8456 "name": "right",
8457 "content": {
8458 "type": "SYMBOL",
8459 "name": "expression"
8460 }
8461 }
8462 ]
8463 }
8464 },
8465 {
8466 "type": "PREC_LEFT",
8467 "value": 12,
8468 "content": {
8469 "type": "SEQ",
8470 "members": [
8471 {
8472 "type": "FIELD",
8473 "name": "left",
8474 "content": {
8475 "type": "SYMBOL",
8476 "name": "expression"
8477 }
8478 },
8479 {
8480 "type": "FIELD",
8481 "name": "operator",
8482 "content": {
8483 "type": "STRING",
8484 "value": "!=="
8485 }
8486 },
8487 {
8488 "type": "FIELD",
8489 "name": "right",
8490 "content": {
8491 "type": "SYMBOL",
8492 "name": "expression"
8493 }
8494 }
8495 ]
8496 }
8497 },
8498 {
8499 "type": "PREC_LEFT",
8500 "value": 13,
8501 "content": {
8502 "type": "SEQ",
8503 "members": [
8504 {
8505 "type": "FIELD",
8506 "name": "left",
8507 "content": {
8508 "type": "SYMBOL",
8509 "name": "expression"
8510 }
8511 },
8512 {
8513 "type": "FIELD",
8514 "name": "operator",
8515 "content": {
8516 "type": "STRING",
8517 "value": "<"
8518 }
8519 },
8520 {
8521 "type": "FIELD",
8522 "name": "right",
8523 "content": {
8524 "type": "SYMBOL",
8525 "name": "expression"
8526 }
8527 }
8528 ]
8529 }
8530 },
8531 {
8532 "type": "PREC_LEFT",
8533 "value": 13,
8534 "content": {
8535 "type": "SEQ",
8536 "members": [
8537 {
8538 "type": "FIELD",
8539 "name": "left",
8540 "content": {
8541 "type": "SYMBOL",
8542 "name": "expression"
8543 }
8544 },
8545 {
8546 "type": "FIELD",
8547 "name": "operator",
8548 "content": {
8549 "type": "STRING",
8550 "value": ">"
8551 }
8552 },
8553 {
8554 "type": "FIELD",
8555 "name": "right",
8556 "content": {
8557 "type": "SYMBOL",
8558 "name": "expression"
8559 }
8560 }
8561 ]
8562 }
8563 },
8564 {
8565 "type": "PREC_LEFT",
8566 "value": 13,
8567 "content": {
8568 "type": "SEQ",
8569 "members": [
8570 {
8571 "type": "FIELD",
8572 "name": "left",
8573 "content": {
8574 "type": "SYMBOL",
8575 "name": "expression"
8576 }
8577 },
8578 {
8579 "type": "FIELD",
8580 "name": "operator",
8581 "content": {
8582 "type": "STRING",
8583 "value": "<="
8584 }
8585 },
8586 {
8587 "type": "FIELD",
8588 "name": "right",
8589 "content": {
8590 "type": "SYMBOL",
8591 "name": "expression"
8592 }
8593 }
8594 ]
8595 }
8596 },
8597 {
8598 "type": "PREC_LEFT",
8599 "value": 13,
8600 "content": {
8601 "type": "SEQ",
8602 "members": [
8603 {
8604 "type": "FIELD",
8605 "name": "left",
8606 "content": {
8607 "type": "SYMBOL",
8608 "name": "expression"
8609 }
8610 },
8611 {
8612 "type": "FIELD",
8613 "name": "operator",
8614 "content": {
8615 "type": "STRING",
8616 "value": ">="
8617 }
8618 },
8619 {
8620 "type": "FIELD",
8621 "name": "right",
8622 "content": {
8623 "type": "SYMBOL",
8624 "name": "expression"
8625 }
8626 }
8627 ]
8628 }
8629 },
8630 {
8631 "type": "PREC_LEFT",
8632 "value": 12,
8633 "content": {
8634 "type": "SEQ",
8635 "members": [
8636 {
8637 "type": "FIELD",
8638 "name": "left",
8639 "content": {
8640 "type": "SYMBOL",
8641 "name": "expression"
8642 }
8643 },
8644 {
8645 "type": "FIELD",
8646 "name": "operator",
8647 "content": {
8648 "type": "STRING",
8649 "value": "<=>"
8650 }
8651 },
8652 {
8653 "type": "FIELD",
8654 "name": "right",
8655 "content": {
8656 "type": "SYMBOL",
8657 "name": "expression"
8658 }
8659 }
8660 ]
8661 }
8662 },
8663 {
8664 "type": "PREC_LEFT",
8665 "value": 15,
8666 "content": {
8667 "type": "SEQ",
8668 "members": [
8669 {
8670 "type": "FIELD",
8671 "name": "left",
8672 "content": {
8673 "type": "SYMBOL",
8674 "name": "expression"
8675 }
8676 },
8677 {
8678 "type": "FIELD",
8679 "name": "operator",
8680 "content": {
8681 "type": "STRING",
8682 "value": "<<"
8683 }
8684 },
8685 {
8686 "type": "FIELD",
8687 "name": "right",
8688 "content": {
8689 "type": "SYMBOL",
8690 "name": "expression"
8691 }
8692 }
8693 ]
8694 }
8695 },
8696 {
8697 "type": "PREC_LEFT",
8698 "value": 15,
8699 "content": {
8700 "type": "SEQ",
8701 "members": [
8702 {
8703 "type": "FIELD",
8704 "name": "left",
8705 "content": {
8706 "type": "SYMBOL",
8707 "name": "expression"
8708 }
8709 },
8710 {
8711 "type": "FIELD",
8712 "name": "operator",
8713 "content": {
8714 "type": "STRING",
8715 "value": ">>"
8716 }
8717 },
8718 {
8719 "type": "FIELD",
8720 "name": "right",
8721 "content": {
8722 "type": "SYMBOL",
8723 "name": "expression"
8724 }
8725 }
8726 ]
8727 }
8728 },
8729 {
8730 "type": "PREC_LEFT",
8731 "value": 16,
8732 "content": {
8733 "type": "SEQ",
8734 "members": [
8735 {
8736 "type": "FIELD",
8737 "name": "left",
8738 "content": {
8739 "type": "SYMBOL",
8740 "name": "expression"
8741 }
8742 },
8743 {
8744 "type": "FIELD",
8745 "name": "operator",
8746 "content": {
8747 "type": "STRING",
8748 "value": "+"
8749 }
8750 },
8751 {
8752 "type": "FIELD",
8753 "name": "right",
8754 "content": {
8755 "type": "SYMBOL",
8756 "name": "expression"
8757 }
8758 }
8759 ]
8760 }
8761 },
8762 {
8763 "type": "PREC_LEFT",
8764 "value": 16,
8765 "content": {
8766 "type": "SEQ",
8767 "members": [
8768 {
8769 "type": "FIELD",
8770 "name": "left",
8771 "content": {
8772 "type": "SYMBOL",
8773 "name": "expression"
8774 }
8775 },
8776 {
8777 "type": "FIELD",
8778 "name": "operator",
8779 "content": {
8780 "type": "STRING",
8781 "value": "-"
8782 }
8783 },
8784 {
8785 "type": "FIELD",
8786 "name": "right",
8787 "content": {
8788 "type": "SYMBOL",
8789 "name": "expression"
8790 }
8791 }
8792 ]
8793 }
8794 },
8795 {
8796 "type": "PREC_LEFT",
8797 "value": 14,
8798 "content": {
8799 "type": "SEQ",
8800 "members": [
8801 {
8802 "type": "FIELD",
8803 "name": "left",
8804 "content": {
8805 "type": "SYMBOL",
8806 "name": "expression"
8807 }
8808 },
8809 {
8810 "type": "FIELD",
8811 "name": "operator",
8812 "content": {
8813 "type": "STRING",
8814 "value": "."
8815 }
8816 },
8817 {
8818 "type": "FIELD",
8819 "name": "right",
8820 "content": {
8821 "type": "SYMBOL",
8822 "name": "expression"
8823 }
8824 }
8825 ]
8826 }
8827 },
8828 {
8829 "type": "PREC_LEFT",
8830 "value": 17,
8831 "content": {
8832 "type": "SEQ",
8833 "members": [
8834 {
8835 "type": "FIELD",
8836 "name": "left",
8837 "content": {
8838 "type": "SYMBOL",
8839 "name": "expression"
8840 }
8841 },
8842 {
8843 "type": "FIELD",
8844 "name": "operator",
8845 "content": {
8846 "type": "STRING",
8847 "value": "*"
8848 }
8849 },
8850 {
8851 "type": "FIELD",
8852 "name": "right",
8853 "content": {
8854 "type": "SYMBOL",
8855 "name": "expression"
8856 }
8857 }
8858 ]
8859 }
8860 },
8861 {
8862 "type": "PREC_LEFT",
8863 "value": 17,
8864 "content": {
8865 "type": "SEQ",
8866 "members": [
8867 {
8868 "type": "FIELD",
8869 "name": "left",
8870 "content": {
8871 "type": "SYMBOL",
8872 "name": "expression"
8873 }
8874 },
8875 {
8876 "type": "FIELD",
8877 "name": "operator",
8878 "content": {
8879 "type": "STRING",
8880 "value": "/"
8881 }
8882 },
8883 {
8884 "type": "FIELD",
8885 "name": "right",
8886 "content": {
8887 "type": "SYMBOL",
8888 "name": "expression"
8889 }
8890 }
8891 ]
8892 }
8893 },
8894 {
8895 "type": "PREC_LEFT",
8896 "value": 17,
8897 "content": {
8898 "type": "SEQ",
8899 "members": [
8900 {
8901 "type": "FIELD",
8902 "name": "left",
8903 "content": {
8904 "type": "SYMBOL",
8905 "name": "expression"
8906 }
8907 },
8908 {
8909 "type": "FIELD",
8910 "name": "operator",
8911 "content": {
8912 "type": "STRING",
8913 "value": "%"
8914 }
8915 },
8916 {
8917 "type": "FIELD",
8918 "name": "right",
8919 "content": {
8920 "type": "SYMBOL",
8921 "name": "expression"
8922 }
8923 }
8924 ]
8925 }
8926 }
8927 ]
8928 },
8929 "include_expression": {
8930 "type": "SEQ",
8931 "members": [
8932 {
8933 "type": "ALIAS",
8934 "content": {
8935 "type": "PATTERN",
8936 "value": "include",
8937 "flags": "i"
8938 },
8939 "named": false,
8940 "value": "include"
8941 },
8942 {
8943 "type": "SYMBOL",
8944 "name": "expression"
8945 }
8946 ]
8947 },
8948 "include_once_expression": {
8949 "type": "SEQ",
8950 "members": [
8951 {
8952 "type": "ALIAS",
8953 "content": {
8954 "type": "PATTERN",
8955 "value": "include_once",
8956 "flags": "i"
8957 },
8958 "named": false,
8959 "value": "include_once"
8960 },
8961 {
8962 "type": "SYMBOL",
8963 "name": "expression"
8964 }
8965 ]
8966 },
8967 "require_expression": {
8968 "type": "SEQ",
8969 "members": [
8970 {
8971 "type": "ALIAS",
8972 "content": {
8973 "type": "PATTERN",
8974 "value": "require",
8975 "flags": "i"
8976 },
8977 "named": false,
8978 "value": "require"
8979 },
8980 {
8981 "type": "SYMBOL",
8982 "name": "expression"
8983 }
8984 ]
8985 },
8986 "require_once_expression": {
8987 "type": "SEQ",
8988 "members": [
8989 {
8990 "type": "ALIAS",
8991 "content": {
8992 "type": "PATTERN",
8993 "value": "require_once",
8994 "flags": "i"
8995 },
8996 "named": false,
8997 "value": "require_once"
8998 },
8999 {
9000 "type": "SYMBOL",
9001 "name": "expression"
9002 }
9003 ]
9004 },
9005 "name": {
9006 "type": "PATTERN",
9007 "value": "[_a-zA-Z\\u0080-\\u009f\\u00a1-\\u200a\\u200c-\\u205f\\u2061-\\ufefe\\uff00-\\uffff][_a-zA-Z\\u0080-\\u009f\\u00a1-\\u200a\\u200c-\\u205f\\u2061-\\ufefe\\uff00-\\uffff\\d]*"
9008 },
9009 "_reserved_identifier": {
9010 "type": "CHOICE",
9011 "members": [
9012 {
9013 "type": "STRING",
9014 "value": "self"
9015 },
9016 {
9017 "type": "STRING",
9018 "value": "parent"
9019 },
9020 {
9021 "type": "ALIAS",
9022 "content": {
9023 "type": "PATTERN",
9024 "value": "static",
9025 "flags": "i"
9026 },
9027 "named": false,
9028 "value": "static"
9029 }
9030 ]
9031 },
9032 "_identifier": {
9033 "type": "CHOICE",
9034 "members": [
9035 {
9036 "type": "SYMBOL",
9037 "name": "name"
9038 },
9039 {
9040 "type": "ALIAS",
9041 "content": {
9042 "type": "SYMBOL",
9043 "name": "_reserved_identifier"
9044 },
9045 "named": true,
9046 "value": "name"
9047 }
9048 ]
9049 },
9050 "comment": {
9051 "type": "TOKEN",
9052 "content": {
9053 "type": "CHOICE",
9054 "members": [
9055 {
9056 "type": "SEQ",
9057 "members": [
9058 {
9059 "type": "CHOICE",
9060 "members": [
9061 {
9062 "type": "STRING",
9063 "value": "//"
9064 },
9065 {
9066 "type": "PATTERN",
9067 "value": "#[^?\\[?\\r?\\n]"
9068 }
9069 ]
9070 },
9071 {
9072 "type": "REPEAT",
9073 "content": {
9074 "type": "PATTERN",
9075 "value": "[^?\\r?\\n]|\\?[^>\\r\\n]"
9076 }
9077 },
9078 {
9079 "type": "CHOICE",
9080 "members": [
9081 {
9082 "type": "PATTERN",
9083 "value": "\\?\\r?\\n"
9084 },
9085 {
9086 "type": "BLANK"
9087 }
9088 ]
9089 }
9090 ]
9091 },
9092 {
9093 "type": "STRING",
9094 "value": "#"
9095 },
9096 {
9097 "type": "SEQ",
9098 "members": [
9099 {
9100 "type": "STRING",
9101 "value": "/*"
9102 },
9103 {
9104 "type": "PATTERN",
9105 "value": "[^*]*\\*+([^/*][^*]*\\*+)*"
9106 },
9107 {
9108 "type": "STRING",
9109 "value": "/"
9110 }
9111 ]
9112 }
9113 ]
9114 }
9115 },
9116 "_semicolon": {
9117 "type": "CHOICE",
9118 "members": [
9119 {
9120 "type": "SYMBOL",
9121 "name": "_automatic_semicolon"
9122 },
9123 {
9124 "type": "STRING",
9125 "value": ";"
9126 }
9127 ]
9128 }
9129 },
9130 "extras": [
9131 {
9132 "type": "SYMBOL",
9133 "name": "comment"
9134 },
9135 {
9136 "type": "PATTERN",
9137 "value": "[\\s\\u00A0\\u200B\\u2060\\uFEFF]"
9138 },
9139 {
9140 "type": "SYMBOL",
9141 "name": "text_interpolation"
9142 }
9143 ],
9144 "conflicts": [
9145 [
9146 "_array_destructing",
9147 "array_creation_expression"
9148 ],
9149 [
9150 "_array_destructing_element",
9151 "array_element_initializer"
9152 ],
9153 [
9154 "primary_expression",
9155 "_array_destructing_element"
9156 ],
9157 [
9158 "type",
9159 "union_type",
9160 "intersection_type",
9161 "disjunctive_normal_form_type"
9162 ],
9163 [
9164 "union_type",
9165 "disjunctive_normal_form_type"
9166 ],
9167 [
9168 "intersection_type"
9169 ],
9170 [
9171 "if_statement"
9172 ],
9173 [
9174 "namespace_name"
9175 ],
9176 [
9177 "heredoc_body"
9178 ]
9179 ],
9180 "precedences": [],
9181 "externals": [
9182 {
9183 "type": "SYMBOL",
9184 "name": "_automatic_semicolon"
9185 },
9186 {
9187 "type": "SYMBOL",
9188 "name": "encapsed_string_chars"
9189 },
9190 {
9191 "type": "SYMBOL",
9192 "name": "encapsed_string_chars_after_variable"
9193 },
9194 {
9195 "type": "SYMBOL",
9196 "name": "execution_string_chars"
9197 },
9198 {
9199 "type": "SYMBOL",
9200 "name": "execution_string_chars_after_variable"
9201 },
9202 {
9203 "type": "SYMBOL",
9204 "name": "encapsed_string_chars_heredoc"
9205 },
9206 {
9207 "type": "SYMBOL",
9208 "name": "encapsed_string_chars_after_variable_heredoc"
9209 },
9210 {
9211 "type": "SYMBOL",
9212 "name": "_eof"
9213 },
9214 {
9215 "type": "SYMBOL",
9216 "name": "heredoc_start"
9217 },
9218 {
9219 "type": "SYMBOL",
9220 "name": "heredoc_end"
9221 },
9222 {
9223 "type": "SYMBOL",
9224 "name": "nowdoc_string"
9225 },
9226 {
9227 "type": "SYMBOL",
9228 "name": "sentinel_error"
9229 }
9230 ],
9231 "inline": [
9232 "_variable",
9233 "_namespace_use_type"
9234 ],
9235 "supertypes": [
9236 "statement",
9237 "expression",
9238 "primary_expression",
9239 "type",
9240 "literal"
9241 ]
9242}