1[
2 {
3 "type": "_abstract_declarator",
4 "named": true,
5 "subtypes": [
6 {
7 "type": "abstract_array_declarator",
8 "named": true
9 },
10 {
11 "type": "abstract_function_declarator",
12 "named": true
13 },
14 {
15 "type": "abstract_parenthesized_declarator",
16 "named": true
17 },
18 {
19 "type": "abstract_pointer_declarator",
20 "named": true
21 }
22 ]
23 },
24 {
25 "type": "_declarator",
26 "named": true,
27 "subtypes": [
28 {
29 "type": "array_declarator",
30 "named": true
31 },
32 {
33 "type": "attributed_declarator",
34 "named": true
35 },
36 {
37 "type": "function_declarator",
38 "named": true
39 },
40 {
41 "type": "identifier",
42 "named": true
43 },
44 {
45 "type": "parenthesized_declarator",
46 "named": true
47 },
48 {
49 "type": "pointer_declarator",
50 "named": true
51 }
52 ]
53 },
54 {
55 "type": "_expression",
56 "named": true,
57 "subtypes": [
58 {
59 "type": "alignof_expression",
60 "named": true
61 },
62 {
63 "type": "assignment_expression",
64 "named": true
65 },
66 {
67 "type": "binary_expression",
68 "named": true
69 },
70 {
71 "type": "call_expression",
72 "named": true
73 },
74 {
75 "type": "cast_expression",
76 "named": true
77 },
78 {
79 "type": "char_literal",
80 "named": true
81 },
82 {
83 "type": "compound_literal_expression",
84 "named": true
85 },
86 {
87 "type": "concatenated_string",
88 "named": true
89 },
90 {
91 "type": "conditional_expression",
92 "named": true
93 },
94 {
95 "type": "false",
96 "named": true
97 },
98 {
99 "type": "field_expression",
100 "named": true
101 },
102 {
103 "type": "generic_expression",
104 "named": true
105 },
106 {
107 "type": "gnu_asm_expression",
108 "named": true
109 },
110 {
111 "type": "identifier",
112 "named": true
113 },
114 {
115 "type": "null",
116 "named": true
117 },
118 {
119 "type": "number_literal",
120 "named": true
121 },
122 {
123 "type": "offsetof_expression",
124 "named": true
125 },
126 {
127 "type": "parenthesized_expression",
128 "named": true
129 },
130 {
131 "type": "pointer_expression",
132 "named": true
133 },
134 {
135 "type": "sizeof_expression",
136 "named": true
137 },
138 {
139 "type": "string_literal",
140 "named": true
141 },
142 {
143 "type": "subscript_expression",
144 "named": true
145 },
146 {
147 "type": "true",
148 "named": true
149 },
150 {
151 "type": "unary_expression",
152 "named": true
153 },
154 {
155 "type": "update_expression",
156 "named": true
157 }
158 ]
159 },
160 {
161 "type": "_field_declarator",
162 "named": true,
163 "subtypes": [
164 {
165 "type": "array_declarator",
166 "named": true
167 },
168 {
169 "type": "attributed_declarator",
170 "named": true
171 },
172 {
173 "type": "field_identifier",
174 "named": true
175 },
176 {
177 "type": "function_declarator",
178 "named": true
179 },
180 {
181 "type": "parenthesized_declarator",
182 "named": true
183 },
184 {
185 "type": "pointer_declarator",
186 "named": true
187 }
188 ]
189 },
190 {
191 "type": "_statement",
192 "named": true,
193 "subtypes": [
194 {
195 "type": "attributed_statement",
196 "named": true
197 },
198 {
199 "type": "break_statement",
200 "named": true
201 },
202 {
203 "type": "case_statement",
204 "named": true
205 },
206 {
207 "type": "compound_statement",
208 "named": true
209 },
210 {
211 "type": "continue_statement",
212 "named": true
213 },
214 {
215 "type": "do_statement",
216 "named": true
217 },
218 {
219 "type": "expression_statement",
220 "named": true
221 },
222 {
223 "type": "for_statement",
224 "named": true
225 },
226 {
227 "type": "goto_statement",
228 "named": true
229 },
230 {
231 "type": "if_statement",
232 "named": true
233 },
234 {
235 "type": "labeled_statement",
236 "named": true
237 },
238 {
239 "type": "return_statement",
240 "named": true
241 },
242 {
243 "type": "seh_leave_statement",
244 "named": true
245 },
246 {
247 "type": "seh_try_statement",
248 "named": true
249 },
250 {
251 "type": "switch_statement",
252 "named": true
253 },
254 {
255 "type": "while_statement",
256 "named": true
257 }
258 ]
259 },
260 {
261 "type": "_type_declarator",
262 "named": true,
263 "subtypes": [
264 {
265 "type": "array_declarator",
266 "named": true
267 },
268 {
269 "type": "attributed_declarator",
270 "named": true
271 },
272 {
273 "type": "function_declarator",
274 "named": true
275 },
276 {
277 "type": "parenthesized_declarator",
278 "named": true
279 },
280 {
281 "type": "pointer_declarator",
282 "named": true
283 },
284 {
285 "type": "primitive_type",
286 "named": true
287 },
288 {
289 "type": "type_identifier",
290 "named": true
291 }
292 ]
293 },
294 {
295 "type": "_type_specifier",
296 "named": true,
297 "subtypes": [
298 {
299 "type": "enum_specifier",
300 "named": true
301 },
302 {
303 "type": "macro_type_specifier",
304 "named": true
305 },
306 {
307 "type": "primitive_type",
308 "named": true
309 },
310 {
311 "type": "sized_type_specifier",
312 "named": true
313 },
314 {
315 "type": "struct_specifier",
316 "named": true
317 },
318 {
319 "type": "type_identifier",
320 "named": true
321 },
322 {
323 "type": "union_specifier",
324 "named": true
325 }
326 ]
327 },
328 {
329 "type": "abstract_array_declarator",
330 "named": true,
331 "fields": {
332 "declarator": {
333 "multiple": false,
334 "required": false,
335 "types": [
336 {
337 "type": "_abstract_declarator",
338 "named": true
339 }
340 ]
341 },
342 "size": {
343 "multiple": false,
344 "required": false,
345 "types": [
346 {
347 "type": "*",
348 "named": false
349 },
350 {
351 "type": "_expression",
352 "named": true
353 }
354 ]
355 }
356 },
357 "children": {
358 "multiple": true,
359 "required": false,
360 "types": [
361 {
362 "type": "type_qualifier",
363 "named": true
364 }
365 ]
366 }
367 },
368 {
369 "type": "abstract_function_declarator",
370 "named": true,
371 "fields": {
372 "declarator": {
373 "multiple": false,
374 "required": false,
375 "types": [
376 {
377 "type": "_abstract_declarator",
378 "named": true
379 }
380 ]
381 },
382 "parameters": {
383 "multiple": false,
384 "required": true,
385 "types": [
386 {
387 "type": "parameter_list",
388 "named": true
389 }
390 ]
391 }
392 }
393 },
394 {
395 "type": "abstract_parenthesized_declarator",
396 "named": true,
397 "fields": {},
398 "children": {
399 "multiple": false,
400 "required": true,
401 "types": [
402 {
403 "type": "_abstract_declarator",
404 "named": true
405 }
406 ]
407 }
408 },
409 {
410 "type": "abstract_pointer_declarator",
411 "named": true,
412 "fields": {
413 "declarator": {
414 "multiple": false,
415 "required": false,
416 "types": [
417 {
418 "type": "_abstract_declarator",
419 "named": true
420 }
421 ]
422 }
423 },
424 "children": {
425 "multiple": true,
426 "required": false,
427 "types": [
428 {
429 "type": "type_qualifier",
430 "named": true
431 }
432 ]
433 }
434 },
435 {
436 "type": "alignof_expression",
437 "named": true,
438 "fields": {
439 "type": {
440 "multiple": false,
441 "required": true,
442 "types": [
443 {
444 "type": "type_descriptor",
445 "named": true
446 }
447 ]
448 }
449 }
450 },
451 {
452 "type": "argument_list",
453 "named": true,
454 "fields": {},
455 "children": {
456 "multiple": true,
457 "required": false,
458 "types": [
459 {
460 "type": "_expression",
461 "named": true
462 },
463 {
464 "type": "compound_statement",
465 "named": true
466 },
467 {
468 "type": "preproc_defined",
469 "named": true
470 }
471 ]
472 }
473 },
474 {
475 "type": "array_declarator",
476 "named": true,
477 "fields": {
478 "declarator": {
479 "multiple": false,
480 "required": true,
481 "types": [
482 {
483 "type": "_declarator",
484 "named": true
485 },
486 {
487 "type": "_field_declarator",
488 "named": true
489 },
490 {
491 "type": "_type_declarator",
492 "named": true
493 }
494 ]
495 },
496 "size": {
497 "multiple": false,
498 "required": false,
499 "types": [
500 {
501 "type": "*",
502 "named": false
503 },
504 {
505 "type": "_expression",
506 "named": true
507 }
508 ]
509 }
510 },
511 "children": {
512 "multiple": true,
513 "required": false,
514 "types": [
515 {
516 "type": "type_qualifier",
517 "named": true
518 }
519 ]
520 }
521 },
522 {
523 "type": "assignment_expression",
524 "named": true,
525 "fields": {
526 "left": {
527 "multiple": false,
528 "required": true,
529 "types": [
530 {
531 "type": "call_expression",
532 "named": true
533 },
534 {
535 "type": "field_expression",
536 "named": true
537 },
538 {
539 "type": "identifier",
540 "named": true
541 },
542 {
543 "type": "parenthesized_expression",
544 "named": true
545 },
546 {
547 "type": "pointer_expression",
548 "named": true
549 },
550 {
551 "type": "subscript_expression",
552 "named": true
553 }
554 ]
555 },
556 "operator": {
557 "multiple": false,
558 "required": true,
559 "types": [
560 {
561 "type": "%=",
562 "named": false
563 },
564 {
565 "type": "&=",
566 "named": false
567 },
568 {
569 "type": "*=",
570 "named": false
571 },
572 {
573 "type": "+=",
574 "named": false
575 },
576 {
577 "type": "-=",
578 "named": false
579 },
580 {
581 "type": "/=",
582 "named": false
583 },
584 {
585 "type": "<<=",
586 "named": false
587 },
588 {
589 "type": "=",
590 "named": false
591 },
592 {
593 "type": ">>=",
594 "named": false
595 },
596 {
597 "type": "^=",
598 "named": false
599 },
600 {
601 "type": "|=",
602 "named": false
603 }
604 ]
605 },
606 "right": {
607 "multiple": false,
608 "required": true,
609 "types": [
610 {
611 "type": "_expression",
612 "named": true
613 }
614 ]
615 }
616 }
617 },
618 {
619 "type": "attribute",
620 "named": true,
621 "fields": {
622 "name": {
623 "multiple": false,
624 "required": true,
625 "types": [
626 {
627 "type": "identifier",
628 "named": true
629 }
630 ]
631 },
632 "prefix": {
633 "multiple": false,
634 "required": false,
635 "types": [
636 {
637 "type": "identifier",
638 "named": true
639 }
640 ]
641 }
642 },
643 "children": {
644 "multiple": false,
645 "required": false,
646 "types": [
647 {
648 "type": "argument_list",
649 "named": true
650 }
651 ]
652 }
653 },
654 {
655 "type": "attribute_declaration",
656 "named": true,
657 "fields": {},
658 "children": {
659 "multiple": true,
660 "required": true,
661 "types": [
662 {
663 "type": "attribute",
664 "named": true
665 }
666 ]
667 }
668 },
669 {
670 "type": "attribute_specifier",
671 "named": true,
672 "fields": {},
673 "children": {
674 "multiple": false,
675 "required": true,
676 "types": [
677 {
678 "type": "argument_list",
679 "named": true
680 }
681 ]
682 }
683 },
684 {
685 "type": "attributed_declarator",
686 "named": true,
687 "fields": {},
688 "children": {
689 "multiple": true,
690 "required": true,
691 "types": [
692 {
693 "type": "_declarator",
694 "named": true
695 },
696 {
697 "type": "_field_declarator",
698 "named": true
699 },
700 {
701 "type": "_type_declarator",
702 "named": true
703 },
704 {
705 "type": "attribute_declaration",
706 "named": true
707 }
708 ]
709 }
710 },
711 {
712 "type": "attributed_statement",
713 "named": true,
714 "fields": {},
715 "children": {
716 "multiple": true,
717 "required": true,
718 "types": [
719 {
720 "type": "_statement",
721 "named": true
722 },
723 {
724 "type": "attribute_declaration",
725 "named": true
726 }
727 ]
728 }
729 },
730 {
731 "type": "binary_expression",
732 "named": true,
733 "fields": {
734 "left": {
735 "multiple": false,
736 "required": true,
737 "types": [
738 {
739 "type": "_expression",
740 "named": true
741 },
742 {
743 "type": "preproc_defined",
744 "named": true
745 }
746 ]
747 },
748 "operator": {
749 "multiple": false,
750 "required": true,
751 "types": [
752 {
753 "type": "!=",
754 "named": false
755 },
756 {
757 "type": "%",
758 "named": false
759 },
760 {
761 "type": "&",
762 "named": false
763 },
764 {
765 "type": "&&",
766 "named": false
767 },
768 {
769 "type": "*",
770 "named": false
771 },
772 {
773 "type": "+",
774 "named": false
775 },
776 {
777 "type": "-",
778 "named": false
779 },
780 {
781 "type": "/",
782 "named": false
783 },
784 {
785 "type": "<",
786 "named": false
787 },
788 {
789 "type": "<<",
790 "named": false
791 },
792 {
793 "type": "<=",
794 "named": false
795 },
796 {
797 "type": "==",
798 "named": false
799 },
800 {
801 "type": ">",
802 "named": false
803 },
804 {
805 "type": ">=",
806 "named": false
807 },
808 {
809 "type": ">>",
810 "named": false
811 },
812 {
813 "type": "^",
814 "named": false
815 },
816 {
817 "type": "|",
818 "named": false
819 },
820 {
821 "type": "||",
822 "named": false
823 }
824 ]
825 },
826 "right": {
827 "multiple": false,
828 "required": true,
829 "types": [
830 {
831 "type": "_expression",
832 "named": true
833 },
834 {
835 "type": "preproc_defined",
836 "named": true
837 }
838 ]
839 }
840 }
841 },
842 {
843 "type": "bitfield_clause",
844 "named": true,
845 "fields": {},
846 "children": {
847 "multiple": false,
848 "required": true,
849 "types": [
850 {
851 "type": "_expression",
852 "named": true
853 }
854 ]
855 }
856 },
857 {
858 "type": "break_statement",
859 "named": true,
860 "fields": {}
861 },
862 {
863 "type": "call_expression",
864 "named": true,
865 "fields": {
866 "arguments": {
867 "multiple": false,
868 "required": true,
869 "types": [
870 {
871 "type": "argument_list",
872 "named": true
873 }
874 ]
875 },
876 "function": {
877 "multiple": false,
878 "required": true,
879 "types": [
880 {
881 "type": "_expression",
882 "named": true
883 }
884 ]
885 }
886 }
887 },
888 {
889 "type": "case_statement",
890 "named": true,
891 "fields": {
892 "value": {
893 "multiple": false,
894 "required": false,
895 "types": [
896 {
897 "type": "_expression",
898 "named": true
899 }
900 ]
901 }
902 },
903 "children": {
904 "multiple": true,
905 "required": false,
906 "types": [
907 {
908 "type": "attributed_statement",
909 "named": true
910 },
911 {
912 "type": "break_statement",
913 "named": true
914 },
915 {
916 "type": "compound_statement",
917 "named": true
918 },
919 {
920 "type": "continue_statement",
921 "named": true
922 },
923 {
924 "type": "declaration",
925 "named": true
926 },
927 {
928 "type": "do_statement",
929 "named": true
930 },
931 {
932 "type": "expression_statement",
933 "named": true
934 },
935 {
936 "type": "for_statement",
937 "named": true
938 },
939 {
940 "type": "goto_statement",
941 "named": true
942 },
943 {
944 "type": "if_statement",
945 "named": true
946 },
947 {
948 "type": "labeled_statement",
949 "named": true
950 },
951 {
952 "type": "return_statement",
953 "named": true
954 },
955 {
956 "type": "seh_leave_statement",
957 "named": true
958 },
959 {
960 "type": "seh_try_statement",
961 "named": true
962 },
963 {
964 "type": "switch_statement",
965 "named": true
966 },
967 {
968 "type": "type_definition",
969 "named": true
970 },
971 {
972 "type": "while_statement",
973 "named": true
974 }
975 ]
976 }
977 },
978 {
979 "type": "cast_expression",
980 "named": true,
981 "fields": {
982 "type": {
983 "multiple": false,
984 "required": true,
985 "types": [
986 {
987 "type": "type_descriptor",
988 "named": true
989 }
990 ]
991 },
992 "value": {
993 "multiple": false,
994 "required": true,
995 "types": [
996 {
997 "type": "_expression",
998 "named": true
999 }
1000 ]
1001 }
1002 }
1003 },
1004 {
1005 "type": "char_literal",
1006 "named": true,
1007 "fields": {},
1008 "children": {
1009 "multiple": false,
1010 "required": true,
1011 "types": [
1012 {
1013 "type": "character",
1014 "named": true
1015 },
1016 {
1017 "type": "escape_sequence",
1018 "named": true
1019 }
1020 ]
1021 }
1022 },
1023 {
1024 "type": "comma_expression",
1025 "named": true,
1026 "fields": {
1027 "left": {
1028 "multiple": false,
1029 "required": true,
1030 "types": [
1031 {
1032 "type": "_expression",
1033 "named": true
1034 }
1035 ]
1036 },
1037 "right": {
1038 "multiple": false,
1039 "required": true,
1040 "types": [
1041 {
1042 "type": "_expression",
1043 "named": true
1044 },
1045 {
1046 "type": "comma_expression",
1047 "named": true
1048 }
1049 ]
1050 }
1051 }
1052 },
1053 {
1054 "type": "compound_literal_expression",
1055 "named": true,
1056 "fields": {
1057 "type": {
1058 "multiple": false,
1059 "required": true,
1060 "types": [
1061 {
1062 "type": "type_descriptor",
1063 "named": true
1064 }
1065 ]
1066 },
1067 "value": {
1068 "multiple": false,
1069 "required": true,
1070 "types": [
1071 {
1072 "type": "initializer_list",
1073 "named": true
1074 }
1075 ]
1076 }
1077 }
1078 },
1079 {
1080 "type": "compound_statement",
1081 "named": true,
1082 "fields": {},
1083 "children": {
1084 "multiple": true,
1085 "required": false,
1086 "types": [
1087 {
1088 "type": "_statement",
1089 "named": true
1090 },
1091 {
1092 "type": "_type_specifier",
1093 "named": true
1094 },
1095 {
1096 "type": "declaration",
1097 "named": true
1098 },
1099 {
1100 "type": "function_definition",
1101 "named": true
1102 },
1103 {
1104 "type": "linkage_specification",
1105 "named": true
1106 },
1107 {
1108 "type": "preproc_call",
1109 "named": true
1110 },
1111 {
1112 "type": "preproc_def",
1113 "named": true
1114 },
1115 {
1116 "type": "preproc_function_def",
1117 "named": true
1118 },
1119 {
1120 "type": "preproc_if",
1121 "named": true
1122 },
1123 {
1124 "type": "preproc_ifdef",
1125 "named": true
1126 },
1127 {
1128 "type": "preproc_include",
1129 "named": true
1130 },
1131 {
1132 "type": "type_definition",
1133 "named": true
1134 }
1135 ]
1136 }
1137 },
1138 {
1139 "type": "concatenated_string",
1140 "named": true,
1141 "fields": {},
1142 "children": {
1143 "multiple": true,
1144 "required": true,
1145 "types": [
1146 {
1147 "type": "identifier",
1148 "named": true
1149 },
1150 {
1151 "type": "string_literal",
1152 "named": true
1153 }
1154 ]
1155 }
1156 },
1157 {
1158 "type": "conditional_expression",
1159 "named": true,
1160 "fields": {
1161 "alternative": {
1162 "multiple": false,
1163 "required": true,
1164 "types": [
1165 {
1166 "type": "_expression",
1167 "named": true
1168 }
1169 ]
1170 },
1171 "condition": {
1172 "multiple": false,
1173 "required": true,
1174 "types": [
1175 {
1176 "type": "_expression",
1177 "named": true
1178 }
1179 ]
1180 },
1181 "consequence": {
1182 "multiple": false,
1183 "required": false,
1184 "types": [
1185 {
1186 "type": "_expression",
1187 "named": true
1188 }
1189 ]
1190 }
1191 }
1192 },
1193 {
1194 "type": "continue_statement",
1195 "named": true,
1196 "fields": {}
1197 },
1198 {
1199 "type": "declaration",
1200 "named": true,
1201 "fields": {
1202 "declarator": {
1203 "multiple": true,
1204 "required": true,
1205 "types": [
1206 {
1207 "type": "_declarator",
1208 "named": true
1209 },
1210 {
1211 "type": "gnu_asm_expression",
1212 "named": true
1213 },
1214 {
1215 "type": "init_declarator",
1216 "named": true
1217 }
1218 ]
1219 },
1220 "type": {
1221 "multiple": false,
1222 "required": true,
1223 "types": [
1224 {
1225 "type": "_type_specifier",
1226 "named": true
1227 }
1228 ]
1229 }
1230 },
1231 "children": {
1232 "multiple": true,
1233 "required": false,
1234 "types": [
1235 {
1236 "type": "attribute_declaration",
1237 "named": true
1238 },
1239 {
1240 "type": "attribute_specifier",
1241 "named": true
1242 },
1243 {
1244 "type": "ms_declspec_modifier",
1245 "named": true
1246 },
1247 {
1248 "type": "storage_class_specifier",
1249 "named": true
1250 },
1251 {
1252 "type": "type_qualifier",
1253 "named": true
1254 }
1255 ]
1256 }
1257 },
1258 {
1259 "type": "declaration_list",
1260 "named": true,
1261 "fields": {},
1262 "children": {
1263 "multiple": true,
1264 "required": false,
1265 "types": [
1266 {
1267 "type": "_statement",
1268 "named": true
1269 },
1270 {
1271 "type": "_type_specifier",
1272 "named": true
1273 },
1274 {
1275 "type": "declaration",
1276 "named": true
1277 },
1278 {
1279 "type": "function_definition",
1280 "named": true
1281 },
1282 {
1283 "type": "linkage_specification",
1284 "named": true
1285 },
1286 {
1287 "type": "preproc_call",
1288 "named": true
1289 },
1290 {
1291 "type": "preproc_def",
1292 "named": true
1293 },
1294 {
1295 "type": "preproc_function_def",
1296 "named": true
1297 },
1298 {
1299 "type": "preproc_if",
1300 "named": true
1301 },
1302 {
1303 "type": "preproc_ifdef",
1304 "named": true
1305 },
1306 {
1307 "type": "preproc_include",
1308 "named": true
1309 },
1310 {
1311 "type": "type_definition",
1312 "named": true
1313 }
1314 ]
1315 }
1316 },
1317 {
1318 "type": "do_statement",
1319 "named": true,
1320 "fields": {
1321 "body": {
1322 "multiple": false,
1323 "required": true,
1324 "types": [
1325 {
1326 "type": "_statement",
1327 "named": true
1328 }
1329 ]
1330 },
1331 "condition": {
1332 "multiple": false,
1333 "required": true,
1334 "types": [
1335 {
1336 "type": "parenthesized_expression",
1337 "named": true
1338 }
1339 ]
1340 }
1341 }
1342 },
1343 {
1344 "type": "else_clause",
1345 "named": true,
1346 "fields": {},
1347 "children": {
1348 "multiple": false,
1349 "required": true,
1350 "types": [
1351 {
1352 "type": "_statement",
1353 "named": true
1354 }
1355 ]
1356 }
1357 },
1358 {
1359 "type": "enum_specifier",
1360 "named": true,
1361 "fields": {
1362 "body": {
1363 "multiple": false,
1364 "required": false,
1365 "types": [
1366 {
1367 "type": "enumerator_list",
1368 "named": true
1369 }
1370 ]
1371 },
1372 "name": {
1373 "multiple": false,
1374 "required": false,
1375 "types": [
1376 {
1377 "type": "type_identifier",
1378 "named": true
1379 }
1380 ]
1381 },
1382 "underlying_type": {
1383 "multiple": false,
1384 "required": false,
1385 "types": [
1386 {
1387 "type": "primitive_type",
1388 "named": true
1389 }
1390 ]
1391 }
1392 },
1393 "children": {
1394 "multiple": false,
1395 "required": false,
1396 "types": [
1397 {
1398 "type": "attribute_specifier",
1399 "named": true
1400 }
1401 ]
1402 }
1403 },
1404 {
1405 "type": "enumerator",
1406 "named": true,
1407 "fields": {
1408 "name": {
1409 "multiple": false,
1410 "required": true,
1411 "types": [
1412 {
1413 "type": "identifier",
1414 "named": true
1415 }
1416 ]
1417 },
1418 "value": {
1419 "multiple": false,
1420 "required": false,
1421 "types": [
1422 {
1423 "type": "_expression",
1424 "named": true
1425 }
1426 ]
1427 }
1428 }
1429 },
1430 {
1431 "type": "enumerator_list",
1432 "named": true,
1433 "fields": {},
1434 "children": {
1435 "multiple": true,
1436 "required": false,
1437 "types": [
1438 {
1439 "type": "enumerator",
1440 "named": true
1441 }
1442 ]
1443 }
1444 },
1445 {
1446 "type": "expression_statement",
1447 "named": true,
1448 "fields": {},
1449 "children": {
1450 "multiple": false,
1451 "required": false,
1452 "types": [
1453 {
1454 "type": "_expression",
1455 "named": true
1456 },
1457 {
1458 "type": "comma_expression",
1459 "named": true
1460 }
1461 ]
1462 }
1463 },
1464 {
1465 "type": "field_declaration",
1466 "named": true,
1467 "fields": {
1468 "declarator": {
1469 "multiple": true,
1470 "required": false,
1471 "types": [
1472 {
1473 "type": "_field_declarator",
1474 "named": true
1475 }
1476 ]
1477 },
1478 "type": {
1479 "multiple": false,
1480 "required": true,
1481 "types": [
1482 {
1483 "type": "_type_specifier",
1484 "named": true
1485 }
1486 ]
1487 }
1488 },
1489 "children": {
1490 "multiple": true,
1491 "required": false,
1492 "types": [
1493 {
1494 "type": "attribute_declaration",
1495 "named": true
1496 },
1497 {
1498 "type": "attribute_specifier",
1499 "named": true
1500 },
1501 {
1502 "type": "bitfield_clause",
1503 "named": true
1504 },
1505 {
1506 "type": "ms_declspec_modifier",
1507 "named": true
1508 },
1509 {
1510 "type": "storage_class_specifier",
1511 "named": true
1512 },
1513 {
1514 "type": "type_qualifier",
1515 "named": true
1516 }
1517 ]
1518 }
1519 },
1520 {
1521 "type": "field_declaration_list",
1522 "named": true,
1523 "fields": {},
1524 "children": {
1525 "multiple": true,
1526 "required": false,
1527 "types": [
1528 {
1529 "type": "field_declaration",
1530 "named": true
1531 },
1532 {
1533 "type": "preproc_call",
1534 "named": true
1535 },
1536 {
1537 "type": "preproc_def",
1538 "named": true
1539 },
1540 {
1541 "type": "preproc_function_def",
1542 "named": true
1543 },
1544 {
1545 "type": "preproc_if",
1546 "named": true
1547 },
1548 {
1549 "type": "preproc_ifdef",
1550 "named": true
1551 }
1552 ]
1553 }
1554 },
1555 {
1556 "type": "field_designator",
1557 "named": true,
1558 "fields": {},
1559 "children": {
1560 "multiple": false,
1561 "required": true,
1562 "types": [
1563 {
1564 "type": "field_identifier",
1565 "named": true
1566 }
1567 ]
1568 }
1569 },
1570 {
1571 "type": "field_expression",
1572 "named": true,
1573 "fields": {
1574 "argument": {
1575 "multiple": false,
1576 "required": true,
1577 "types": [
1578 {
1579 "type": "_expression",
1580 "named": true
1581 }
1582 ]
1583 },
1584 "field": {
1585 "multiple": false,
1586 "required": true,
1587 "types": [
1588 {
1589 "type": "field_identifier",
1590 "named": true
1591 }
1592 ]
1593 },
1594 "operator": {
1595 "multiple": false,
1596 "required": true,
1597 "types": [
1598 {
1599 "type": "->",
1600 "named": false
1601 },
1602 {
1603 "type": ".",
1604 "named": false
1605 }
1606 ]
1607 }
1608 }
1609 },
1610 {
1611 "type": "for_statement",
1612 "named": true,
1613 "fields": {
1614 "body": {
1615 "multiple": false,
1616 "required": true,
1617 "types": [
1618 {
1619 "type": "_statement",
1620 "named": true
1621 }
1622 ]
1623 },
1624 "condition": {
1625 "multiple": false,
1626 "required": false,
1627 "types": [
1628 {
1629 "type": "_expression",
1630 "named": true
1631 },
1632 {
1633 "type": "comma_expression",
1634 "named": true
1635 }
1636 ]
1637 },
1638 "initializer": {
1639 "multiple": false,
1640 "required": false,
1641 "types": [
1642 {
1643 "type": "_expression",
1644 "named": true
1645 },
1646 {
1647 "type": "comma_expression",
1648 "named": true
1649 },
1650 {
1651 "type": "declaration",
1652 "named": true
1653 }
1654 ]
1655 },
1656 "update": {
1657 "multiple": false,
1658 "required": false,
1659 "types": [
1660 {
1661 "type": "_expression",
1662 "named": true
1663 },
1664 {
1665 "type": "comma_expression",
1666 "named": true
1667 }
1668 ]
1669 }
1670 }
1671 },
1672 {
1673 "type": "function_declarator",
1674 "named": true,
1675 "fields": {
1676 "declarator": {
1677 "multiple": false,
1678 "required": true,
1679 "types": [
1680 {
1681 "type": "_declarator",
1682 "named": true
1683 },
1684 {
1685 "type": "_field_declarator",
1686 "named": true
1687 },
1688 {
1689 "type": "_type_declarator",
1690 "named": true
1691 }
1692 ]
1693 },
1694 "parameters": {
1695 "multiple": false,
1696 "required": true,
1697 "types": [
1698 {
1699 "type": "parameter_list",
1700 "named": true
1701 }
1702 ]
1703 }
1704 },
1705 "children": {
1706 "multiple": true,
1707 "required": false,
1708 "types": [
1709 {
1710 "type": "attribute_specifier",
1711 "named": true
1712 },
1713 {
1714 "type": "gnu_asm_expression",
1715 "named": true
1716 }
1717 ]
1718 }
1719 },
1720 {
1721 "type": "function_definition",
1722 "named": true,
1723 "fields": {
1724 "body": {
1725 "multiple": false,
1726 "required": true,
1727 "types": [
1728 {
1729 "type": "compound_statement",
1730 "named": true
1731 }
1732 ]
1733 },
1734 "declarator": {
1735 "multiple": false,
1736 "required": true,
1737 "types": [
1738 {
1739 "type": "_declarator",
1740 "named": true
1741 }
1742 ]
1743 },
1744 "type": {
1745 "multiple": false,
1746 "required": true,
1747 "types": [
1748 {
1749 "type": "_type_specifier",
1750 "named": true
1751 }
1752 ]
1753 }
1754 },
1755 "children": {
1756 "multiple": true,
1757 "required": false,
1758 "types": [
1759 {
1760 "type": "attribute_declaration",
1761 "named": true
1762 },
1763 {
1764 "type": "attribute_specifier",
1765 "named": true
1766 },
1767 {
1768 "type": "declaration",
1769 "named": true
1770 },
1771 {
1772 "type": "ms_call_modifier",
1773 "named": true
1774 },
1775 {
1776 "type": "ms_declspec_modifier",
1777 "named": true
1778 },
1779 {
1780 "type": "storage_class_specifier",
1781 "named": true
1782 },
1783 {
1784 "type": "type_qualifier",
1785 "named": true
1786 }
1787 ]
1788 }
1789 },
1790 {
1791 "type": "generic_expression",
1792 "named": true,
1793 "fields": {},
1794 "children": {
1795 "multiple": true,
1796 "required": true,
1797 "types": [
1798 {
1799 "type": "_expression",
1800 "named": true
1801 },
1802 {
1803 "type": "type_descriptor",
1804 "named": true
1805 }
1806 ]
1807 }
1808 },
1809 {
1810 "type": "gnu_asm_clobber_list",
1811 "named": true,
1812 "fields": {
1813 "register": {
1814 "multiple": true,
1815 "required": false,
1816 "types": [
1817 {
1818 "type": "string_literal",
1819 "named": true
1820 }
1821 ]
1822 }
1823 }
1824 },
1825 {
1826 "type": "gnu_asm_expression",
1827 "named": true,
1828 "fields": {
1829 "assembly_code": {
1830 "multiple": false,
1831 "required": true,
1832 "types": [
1833 {
1834 "type": "concatenated_string",
1835 "named": true
1836 },
1837 {
1838 "type": "string_literal",
1839 "named": true
1840 }
1841 ]
1842 },
1843 "clobbers": {
1844 "multiple": false,
1845 "required": false,
1846 "types": [
1847 {
1848 "type": "gnu_asm_clobber_list",
1849 "named": true
1850 }
1851 ]
1852 },
1853 "goto_labels": {
1854 "multiple": false,
1855 "required": false,
1856 "types": [
1857 {
1858 "type": "gnu_asm_goto_list",
1859 "named": true
1860 }
1861 ]
1862 },
1863 "input_operands": {
1864 "multiple": false,
1865 "required": false,
1866 "types": [
1867 {
1868 "type": "gnu_asm_input_operand_list",
1869 "named": true
1870 }
1871 ]
1872 },
1873 "output_operands": {
1874 "multiple": false,
1875 "required": false,
1876 "types": [
1877 {
1878 "type": "gnu_asm_output_operand_list",
1879 "named": true
1880 }
1881 ]
1882 }
1883 },
1884 "children": {
1885 "multiple": true,
1886 "required": false,
1887 "types": [
1888 {
1889 "type": "gnu_asm_qualifier",
1890 "named": true
1891 }
1892 ]
1893 }
1894 },
1895 {
1896 "type": "gnu_asm_goto_list",
1897 "named": true,
1898 "fields": {
1899 "label": {
1900 "multiple": true,
1901 "required": false,
1902 "types": [
1903 {
1904 "type": "identifier",
1905 "named": true
1906 }
1907 ]
1908 }
1909 }
1910 },
1911 {
1912 "type": "gnu_asm_input_operand",
1913 "named": true,
1914 "fields": {
1915 "constraint": {
1916 "multiple": false,
1917 "required": true,
1918 "types": [
1919 {
1920 "type": "string_literal",
1921 "named": true
1922 }
1923 ]
1924 },
1925 "symbol": {
1926 "multiple": false,
1927 "required": false,
1928 "types": [
1929 {
1930 "type": "identifier",
1931 "named": true
1932 }
1933 ]
1934 },
1935 "value": {
1936 "multiple": false,
1937 "required": true,
1938 "types": [
1939 {
1940 "type": "_expression",
1941 "named": true
1942 }
1943 ]
1944 }
1945 }
1946 },
1947 {
1948 "type": "gnu_asm_input_operand_list",
1949 "named": true,
1950 "fields": {
1951 "operand": {
1952 "multiple": true,
1953 "required": false,
1954 "types": [
1955 {
1956 "type": "gnu_asm_input_operand",
1957 "named": true
1958 }
1959 ]
1960 }
1961 }
1962 },
1963 {
1964 "type": "gnu_asm_output_operand",
1965 "named": true,
1966 "fields": {
1967 "constraint": {
1968 "multiple": false,
1969 "required": true,
1970 "types": [
1971 {
1972 "type": "string_literal",
1973 "named": true
1974 }
1975 ]
1976 },
1977 "symbol": {
1978 "multiple": false,
1979 "required": false,
1980 "types": [
1981 {
1982 "type": "identifier",
1983 "named": true
1984 }
1985 ]
1986 },
1987 "value": {
1988 "multiple": false,
1989 "required": true,
1990 "types": [
1991 {
1992 "type": "identifier",
1993 "named": true
1994 }
1995 ]
1996 }
1997 }
1998 },
1999 {
2000 "type": "gnu_asm_output_operand_list",
2001 "named": true,
2002 "fields": {
2003 "operand": {
2004 "multiple": true,
2005 "required": false,
2006 "types": [
2007 {
2008 "type": "gnu_asm_output_operand",
2009 "named": true
2010 }
2011 ]
2012 }
2013 }
2014 },
2015 {
2016 "type": "gnu_asm_qualifier",
2017 "named": true,
2018 "fields": {}
2019 },
2020 {
2021 "type": "goto_statement",
2022 "named": true,
2023 "fields": {
2024 "label": {
2025 "multiple": false,
2026 "required": true,
2027 "types": [
2028 {
2029 "type": "statement_identifier",
2030 "named": true
2031 }
2032 ]
2033 }
2034 }
2035 },
2036 {
2037 "type": "if_statement",
2038 "named": true,
2039 "fields": {
2040 "alternative": {
2041 "multiple": false,
2042 "required": false,
2043 "types": [
2044 {
2045 "type": "else_clause",
2046 "named": true
2047 }
2048 ]
2049 },
2050 "condition": {
2051 "multiple": false,
2052 "required": true,
2053 "types": [
2054 {
2055 "type": "parenthesized_expression",
2056 "named": true
2057 }
2058 ]
2059 },
2060 "consequence": {
2061 "multiple": false,
2062 "required": true,
2063 "types": [
2064 {
2065 "type": "_statement",
2066 "named": true
2067 }
2068 ]
2069 }
2070 }
2071 },
2072 {
2073 "type": "init_declarator",
2074 "named": true,
2075 "fields": {
2076 "declarator": {
2077 "multiple": false,
2078 "required": true,
2079 "types": [
2080 {
2081 "type": "_declarator",
2082 "named": true
2083 }
2084 ]
2085 },
2086 "value": {
2087 "multiple": false,
2088 "required": true,
2089 "types": [
2090 {
2091 "type": "_expression",
2092 "named": true
2093 },
2094 {
2095 "type": "initializer_list",
2096 "named": true
2097 }
2098 ]
2099 }
2100 }
2101 },
2102 {
2103 "type": "initializer_list",
2104 "named": true,
2105 "fields": {},
2106 "children": {
2107 "multiple": true,
2108 "required": false,
2109 "types": [
2110 {
2111 "type": "_expression",
2112 "named": true
2113 },
2114 {
2115 "type": "initializer_list",
2116 "named": true
2117 },
2118 {
2119 "type": "initializer_pair",
2120 "named": true
2121 }
2122 ]
2123 }
2124 },
2125 {
2126 "type": "initializer_pair",
2127 "named": true,
2128 "fields": {
2129 "designator": {
2130 "multiple": true,
2131 "required": true,
2132 "types": [
2133 {
2134 "type": "field_designator",
2135 "named": true
2136 },
2137 {
2138 "type": "subscript_designator",
2139 "named": true
2140 }
2141 ]
2142 },
2143 "value": {
2144 "multiple": false,
2145 "required": true,
2146 "types": [
2147 {
2148 "type": "_expression",
2149 "named": true
2150 },
2151 {
2152 "type": "initializer_list",
2153 "named": true
2154 }
2155 ]
2156 }
2157 }
2158 },
2159 {
2160 "type": "labeled_statement",
2161 "named": true,
2162 "fields": {
2163 "label": {
2164 "multiple": false,
2165 "required": true,
2166 "types": [
2167 {
2168 "type": "statement_identifier",
2169 "named": true
2170 }
2171 ]
2172 }
2173 },
2174 "children": {
2175 "multiple": false,
2176 "required": true,
2177 "types": [
2178 {
2179 "type": "_statement",
2180 "named": true
2181 }
2182 ]
2183 }
2184 },
2185 {
2186 "type": "linkage_specification",
2187 "named": true,
2188 "fields": {
2189 "body": {
2190 "multiple": false,
2191 "required": true,
2192 "types": [
2193 {
2194 "type": "declaration",
2195 "named": true
2196 },
2197 {
2198 "type": "declaration_list",
2199 "named": true
2200 },
2201 {
2202 "type": "function_definition",
2203 "named": true
2204 }
2205 ]
2206 },
2207 "value": {
2208 "multiple": false,
2209 "required": true,
2210 "types": [
2211 {
2212 "type": "string_literal",
2213 "named": true
2214 }
2215 ]
2216 }
2217 }
2218 },
2219 {
2220 "type": "macro_type_specifier",
2221 "named": true,
2222 "fields": {
2223 "name": {
2224 "multiple": false,
2225 "required": true,
2226 "types": [
2227 {
2228 "type": "identifier",
2229 "named": true
2230 }
2231 ]
2232 },
2233 "type": {
2234 "multiple": false,
2235 "required": true,
2236 "types": [
2237 {
2238 "type": "type_descriptor",
2239 "named": true
2240 }
2241 ]
2242 }
2243 }
2244 },
2245 {
2246 "type": "ms_based_modifier",
2247 "named": true,
2248 "fields": {},
2249 "children": {
2250 "multiple": false,
2251 "required": true,
2252 "types": [
2253 {
2254 "type": "argument_list",
2255 "named": true
2256 }
2257 ]
2258 }
2259 },
2260 {
2261 "type": "ms_call_modifier",
2262 "named": true,
2263 "fields": {}
2264 },
2265 {
2266 "type": "ms_declspec_modifier",
2267 "named": true,
2268 "fields": {},
2269 "children": {
2270 "multiple": false,
2271 "required": true,
2272 "types": [
2273 {
2274 "type": "identifier",
2275 "named": true
2276 }
2277 ]
2278 }
2279 },
2280 {
2281 "type": "ms_pointer_modifier",
2282 "named": true,
2283 "fields": {},
2284 "children": {
2285 "multiple": false,
2286 "required": true,
2287 "types": [
2288 {
2289 "type": "ms_restrict_modifier",
2290 "named": true
2291 },
2292 {
2293 "type": "ms_signed_ptr_modifier",
2294 "named": true
2295 },
2296 {
2297 "type": "ms_unaligned_ptr_modifier",
2298 "named": true
2299 },
2300 {
2301 "type": "ms_unsigned_ptr_modifier",
2302 "named": true
2303 }
2304 ]
2305 }
2306 },
2307 {
2308 "type": "ms_unaligned_ptr_modifier",
2309 "named": true,
2310 "fields": {}
2311 },
2312 {
2313 "type": "null",
2314 "named": true,
2315 "fields": {}
2316 },
2317 {
2318 "type": "offsetof_expression",
2319 "named": true,
2320 "fields": {
2321 "member": {
2322 "multiple": false,
2323 "required": true,
2324 "types": [
2325 {
2326 "type": "field_identifier",
2327 "named": true
2328 }
2329 ]
2330 },
2331 "type": {
2332 "multiple": false,
2333 "required": true,
2334 "types": [
2335 {
2336 "type": "type_descriptor",
2337 "named": true
2338 }
2339 ]
2340 }
2341 }
2342 },
2343 {
2344 "type": "parameter_declaration",
2345 "named": true,
2346 "fields": {
2347 "declarator": {
2348 "multiple": false,
2349 "required": false,
2350 "types": [
2351 {
2352 "type": "_abstract_declarator",
2353 "named": true
2354 },
2355 {
2356 "type": "_declarator",
2357 "named": true
2358 }
2359 ]
2360 },
2361 "type": {
2362 "multiple": false,
2363 "required": true,
2364 "types": [
2365 {
2366 "type": "_type_specifier",
2367 "named": true
2368 }
2369 ]
2370 }
2371 },
2372 "children": {
2373 "multiple": true,
2374 "required": false,
2375 "types": [
2376 {
2377 "type": "attribute_declaration",
2378 "named": true
2379 },
2380 {
2381 "type": "attribute_specifier",
2382 "named": true
2383 },
2384 {
2385 "type": "ms_declspec_modifier",
2386 "named": true
2387 },
2388 {
2389 "type": "storage_class_specifier",
2390 "named": true
2391 },
2392 {
2393 "type": "type_qualifier",
2394 "named": true
2395 }
2396 ]
2397 }
2398 },
2399 {
2400 "type": "parameter_list",
2401 "named": true,
2402 "fields": {},
2403 "children": {
2404 "multiple": true,
2405 "required": false,
2406 "types": [
2407 {
2408 "type": "identifier",
2409 "named": true
2410 },
2411 {
2412 "type": "parameter_declaration",
2413 "named": true
2414 },
2415 {
2416 "type": "variadic_parameter",
2417 "named": true
2418 }
2419 ]
2420 }
2421 },
2422 {
2423 "type": "parenthesized_declarator",
2424 "named": true,
2425 "fields": {},
2426 "children": {
2427 "multiple": false,
2428 "required": true,
2429 "types": [
2430 {
2431 "type": "_declarator",
2432 "named": true
2433 },
2434 {
2435 "type": "_field_declarator",
2436 "named": true
2437 },
2438 {
2439 "type": "_type_declarator",
2440 "named": true
2441 }
2442 ]
2443 }
2444 },
2445 {
2446 "type": "parenthesized_expression",
2447 "named": true,
2448 "fields": {},
2449 "children": {
2450 "multiple": false,
2451 "required": true,
2452 "types": [
2453 {
2454 "type": "_expression",
2455 "named": true
2456 },
2457 {
2458 "type": "comma_expression",
2459 "named": true
2460 },
2461 {
2462 "type": "preproc_defined",
2463 "named": true
2464 }
2465 ]
2466 }
2467 },
2468 {
2469 "type": "pointer_declarator",
2470 "named": true,
2471 "fields": {
2472 "declarator": {
2473 "multiple": false,
2474 "required": true,
2475 "types": [
2476 {
2477 "type": "_declarator",
2478 "named": true
2479 },
2480 {
2481 "type": "_field_declarator",
2482 "named": true
2483 },
2484 {
2485 "type": "_type_declarator",
2486 "named": true
2487 }
2488 ]
2489 }
2490 },
2491 "children": {
2492 "multiple": true,
2493 "required": false,
2494 "types": [
2495 {
2496 "type": "ms_based_modifier",
2497 "named": true
2498 },
2499 {
2500 "type": "ms_pointer_modifier",
2501 "named": true
2502 },
2503 {
2504 "type": "type_qualifier",
2505 "named": true
2506 }
2507 ]
2508 }
2509 },
2510 {
2511 "type": "pointer_expression",
2512 "named": true,
2513 "fields": {
2514 "argument": {
2515 "multiple": false,
2516 "required": true,
2517 "types": [
2518 {
2519 "type": "_expression",
2520 "named": true
2521 }
2522 ]
2523 },
2524 "operator": {
2525 "multiple": false,
2526 "required": true,
2527 "types": [
2528 {
2529 "type": "&",
2530 "named": false
2531 },
2532 {
2533 "type": "*",
2534 "named": false
2535 }
2536 ]
2537 }
2538 }
2539 },
2540 {
2541 "type": "preproc_call",
2542 "named": true,
2543 "fields": {
2544 "argument": {
2545 "multiple": false,
2546 "required": false,
2547 "types": [
2548 {
2549 "type": "preproc_arg",
2550 "named": true
2551 }
2552 ]
2553 },
2554 "directive": {
2555 "multiple": false,
2556 "required": true,
2557 "types": [
2558 {
2559 "type": "preproc_directive",
2560 "named": true
2561 }
2562 ]
2563 }
2564 }
2565 },
2566 {
2567 "type": "preproc_def",
2568 "named": true,
2569 "fields": {
2570 "name": {
2571 "multiple": false,
2572 "required": true,
2573 "types": [
2574 {
2575 "type": "identifier",
2576 "named": true
2577 }
2578 ]
2579 },
2580 "value": {
2581 "multiple": false,
2582 "required": false,
2583 "types": [
2584 {
2585 "type": "preproc_arg",
2586 "named": true
2587 }
2588 ]
2589 }
2590 }
2591 },
2592 {
2593 "type": "preproc_defined",
2594 "named": true,
2595 "fields": {},
2596 "children": {
2597 "multiple": false,
2598 "required": true,
2599 "types": [
2600 {
2601 "type": "identifier",
2602 "named": true
2603 }
2604 ]
2605 }
2606 },
2607 {
2608 "type": "preproc_elif",
2609 "named": true,
2610 "fields": {
2611 "alternative": {
2612 "multiple": false,
2613 "required": false,
2614 "types": [
2615 {
2616 "type": "preproc_elif",
2617 "named": true
2618 },
2619 {
2620 "type": "preproc_else",
2621 "named": true
2622 }
2623 ]
2624 },
2625 "condition": {
2626 "multiple": false,
2627 "required": true,
2628 "types": [
2629 {
2630 "type": "binary_expression",
2631 "named": true
2632 },
2633 {
2634 "type": "call_expression",
2635 "named": true
2636 },
2637 {
2638 "type": "char_literal",
2639 "named": true
2640 },
2641 {
2642 "type": "identifier",
2643 "named": true
2644 },
2645 {
2646 "type": "number_literal",
2647 "named": true
2648 },
2649 {
2650 "type": "parenthesized_expression",
2651 "named": true
2652 },
2653 {
2654 "type": "preproc_defined",
2655 "named": true
2656 },
2657 {
2658 "type": "unary_expression",
2659 "named": true
2660 }
2661 ]
2662 }
2663 },
2664 "children": {
2665 "multiple": true,
2666 "required": false,
2667 "types": [
2668 {
2669 "type": "_statement",
2670 "named": true
2671 },
2672 {
2673 "type": "_type_specifier",
2674 "named": true
2675 },
2676 {
2677 "type": "declaration",
2678 "named": true
2679 },
2680 {
2681 "type": "field_declaration",
2682 "named": true
2683 },
2684 {
2685 "type": "function_definition",
2686 "named": true
2687 },
2688 {
2689 "type": "linkage_specification",
2690 "named": true
2691 },
2692 {
2693 "type": "preproc_call",
2694 "named": true
2695 },
2696 {
2697 "type": "preproc_def",
2698 "named": true
2699 },
2700 {
2701 "type": "preproc_function_def",
2702 "named": true
2703 },
2704 {
2705 "type": "preproc_if",
2706 "named": true
2707 },
2708 {
2709 "type": "preproc_ifdef",
2710 "named": true
2711 },
2712 {
2713 "type": "preproc_include",
2714 "named": true
2715 },
2716 {
2717 "type": "type_definition",
2718 "named": true
2719 }
2720 ]
2721 }
2722 },
2723 {
2724 "type": "preproc_elifdef",
2725 "named": true,
2726 "fields": {
2727 "alternative": {
2728 "multiple": false,
2729 "required": false,
2730 "types": [
2731 {
2732 "type": "preproc_elif",
2733 "named": true
2734 },
2735 {
2736 "type": "preproc_else",
2737 "named": true
2738 }
2739 ]
2740 },
2741 "name": {
2742 "multiple": false,
2743 "required": true,
2744 "types": [
2745 {
2746 "type": "identifier",
2747 "named": true
2748 }
2749 ]
2750 }
2751 },
2752 "children": {
2753 "multiple": true,
2754 "required": false,
2755 "types": [
2756 {
2757 "type": "_statement",
2758 "named": true
2759 },
2760 {
2761 "type": "_type_specifier",
2762 "named": true
2763 },
2764 {
2765 "type": "declaration",
2766 "named": true
2767 },
2768 {
2769 "type": "function_definition",
2770 "named": true
2771 },
2772 {
2773 "type": "linkage_specification",
2774 "named": true
2775 },
2776 {
2777 "type": "preproc_call",
2778 "named": true
2779 },
2780 {
2781 "type": "preproc_def",
2782 "named": true
2783 },
2784 {
2785 "type": "preproc_function_def",
2786 "named": true
2787 },
2788 {
2789 "type": "preproc_if",
2790 "named": true
2791 },
2792 {
2793 "type": "preproc_ifdef",
2794 "named": true
2795 },
2796 {
2797 "type": "preproc_include",
2798 "named": true
2799 },
2800 {
2801 "type": "type_definition",
2802 "named": true
2803 }
2804 ]
2805 }
2806 },
2807 {
2808 "type": "preproc_else",
2809 "named": true,
2810 "fields": {},
2811 "children": {
2812 "multiple": true,
2813 "required": false,
2814 "types": [
2815 {
2816 "type": "_statement",
2817 "named": true
2818 },
2819 {
2820 "type": "_type_specifier",
2821 "named": true
2822 },
2823 {
2824 "type": "declaration",
2825 "named": true
2826 },
2827 {
2828 "type": "field_declaration",
2829 "named": true
2830 },
2831 {
2832 "type": "function_definition",
2833 "named": true
2834 },
2835 {
2836 "type": "linkage_specification",
2837 "named": true
2838 },
2839 {
2840 "type": "preproc_call",
2841 "named": true
2842 },
2843 {
2844 "type": "preproc_def",
2845 "named": true
2846 },
2847 {
2848 "type": "preproc_function_def",
2849 "named": true
2850 },
2851 {
2852 "type": "preproc_if",
2853 "named": true
2854 },
2855 {
2856 "type": "preproc_ifdef",
2857 "named": true
2858 },
2859 {
2860 "type": "preproc_include",
2861 "named": true
2862 },
2863 {
2864 "type": "type_definition",
2865 "named": true
2866 }
2867 ]
2868 }
2869 },
2870 {
2871 "type": "preproc_function_def",
2872 "named": true,
2873 "fields": {
2874 "name": {
2875 "multiple": false,
2876 "required": true,
2877 "types": [
2878 {
2879 "type": "identifier",
2880 "named": true
2881 }
2882 ]
2883 },
2884 "parameters": {
2885 "multiple": false,
2886 "required": true,
2887 "types": [
2888 {
2889 "type": "preproc_params",
2890 "named": true
2891 }
2892 ]
2893 },
2894 "value": {
2895 "multiple": false,
2896 "required": false,
2897 "types": [
2898 {
2899 "type": "preproc_arg",
2900 "named": true
2901 }
2902 ]
2903 }
2904 }
2905 },
2906 {
2907 "type": "preproc_if",
2908 "named": true,
2909 "fields": {
2910 "alternative": {
2911 "multiple": false,
2912 "required": false,
2913 "types": [
2914 {
2915 "type": "preproc_elif",
2916 "named": true
2917 },
2918 {
2919 "type": "preproc_else",
2920 "named": true
2921 }
2922 ]
2923 },
2924 "condition": {
2925 "multiple": false,
2926 "required": true,
2927 "types": [
2928 {
2929 "type": "binary_expression",
2930 "named": true
2931 },
2932 {
2933 "type": "call_expression",
2934 "named": true
2935 },
2936 {
2937 "type": "char_literal",
2938 "named": true
2939 },
2940 {
2941 "type": "identifier",
2942 "named": true
2943 },
2944 {
2945 "type": "number_literal",
2946 "named": true
2947 },
2948 {
2949 "type": "parenthesized_expression",
2950 "named": true
2951 },
2952 {
2953 "type": "preproc_defined",
2954 "named": true
2955 },
2956 {
2957 "type": "unary_expression",
2958 "named": true
2959 }
2960 ]
2961 }
2962 },
2963 "children": {
2964 "multiple": true,
2965 "required": false,
2966 "types": [
2967 {
2968 "type": "_statement",
2969 "named": true
2970 },
2971 {
2972 "type": "_type_specifier",
2973 "named": true
2974 },
2975 {
2976 "type": "declaration",
2977 "named": true
2978 },
2979 {
2980 "type": "field_declaration",
2981 "named": true
2982 },
2983 {
2984 "type": "function_definition",
2985 "named": true
2986 },
2987 {
2988 "type": "linkage_specification",
2989 "named": true
2990 },
2991 {
2992 "type": "preproc_call",
2993 "named": true
2994 },
2995 {
2996 "type": "preproc_def",
2997 "named": true
2998 },
2999 {
3000 "type": "preproc_function_def",
3001 "named": true
3002 },
3003 {
3004 "type": "preproc_if",
3005 "named": true
3006 },
3007 {
3008 "type": "preproc_ifdef",
3009 "named": true
3010 },
3011 {
3012 "type": "preproc_include",
3013 "named": true
3014 },
3015 {
3016 "type": "type_definition",
3017 "named": true
3018 }
3019 ]
3020 }
3021 },
3022 {
3023 "type": "preproc_ifdef",
3024 "named": true,
3025 "fields": {
3026 "alternative": {
3027 "multiple": false,
3028 "required": false,
3029 "types": [
3030 {
3031 "type": "preproc_elif",
3032 "named": true
3033 },
3034 {
3035 "type": "preproc_elifdef",
3036 "named": true
3037 },
3038 {
3039 "type": "preproc_else",
3040 "named": true
3041 }
3042 ]
3043 },
3044 "name": {
3045 "multiple": false,
3046 "required": true,
3047 "types": [
3048 {
3049 "type": "identifier",
3050 "named": true
3051 }
3052 ]
3053 }
3054 },
3055 "children": {
3056 "multiple": true,
3057 "required": false,
3058 "types": [
3059 {
3060 "type": "_statement",
3061 "named": true
3062 },
3063 {
3064 "type": "_type_specifier",
3065 "named": true
3066 },
3067 {
3068 "type": "declaration",
3069 "named": true
3070 },
3071 {
3072 "type": "field_declaration",
3073 "named": true
3074 },
3075 {
3076 "type": "function_definition",
3077 "named": true
3078 },
3079 {
3080 "type": "linkage_specification",
3081 "named": true
3082 },
3083 {
3084 "type": "preproc_call",
3085 "named": true
3086 },
3087 {
3088 "type": "preproc_def",
3089 "named": true
3090 },
3091 {
3092 "type": "preproc_function_def",
3093 "named": true
3094 },
3095 {
3096 "type": "preproc_if",
3097 "named": true
3098 },
3099 {
3100 "type": "preproc_ifdef",
3101 "named": true
3102 },
3103 {
3104 "type": "preproc_include",
3105 "named": true
3106 },
3107 {
3108 "type": "type_definition",
3109 "named": true
3110 }
3111 ]
3112 }
3113 },
3114 {
3115 "type": "preproc_include",
3116 "named": true,
3117 "fields": {
3118 "path": {
3119 "multiple": false,
3120 "required": true,
3121 "types": [
3122 {
3123 "type": "call_expression",
3124 "named": true
3125 },
3126 {
3127 "type": "identifier",
3128 "named": true
3129 },
3130 {
3131 "type": "string_literal",
3132 "named": true
3133 },
3134 {
3135 "type": "system_lib_string",
3136 "named": true
3137 }
3138 ]
3139 }
3140 }
3141 },
3142 {
3143 "type": "preproc_params",
3144 "named": true,
3145 "fields": {},
3146 "children": {
3147 "multiple": true,
3148 "required": false,
3149 "types": [
3150 {
3151 "type": "identifier",
3152 "named": true
3153 }
3154 ]
3155 }
3156 },
3157 {
3158 "type": "return_statement",
3159 "named": true,
3160 "fields": {},
3161 "children": {
3162 "multiple": false,
3163 "required": false,
3164 "types": [
3165 {
3166 "type": "_expression",
3167 "named": true
3168 },
3169 {
3170 "type": "comma_expression",
3171 "named": true
3172 }
3173 ]
3174 }
3175 },
3176 {
3177 "type": "seh_except_clause",
3178 "named": true,
3179 "fields": {
3180 "body": {
3181 "multiple": false,
3182 "required": true,
3183 "types": [
3184 {
3185 "type": "compound_statement",
3186 "named": true
3187 }
3188 ]
3189 },
3190 "filter": {
3191 "multiple": false,
3192 "required": true,
3193 "types": [
3194 {
3195 "type": "parenthesized_expression",
3196 "named": true
3197 }
3198 ]
3199 }
3200 }
3201 },
3202 {
3203 "type": "seh_finally_clause",
3204 "named": true,
3205 "fields": {
3206 "body": {
3207 "multiple": false,
3208 "required": true,
3209 "types": [
3210 {
3211 "type": "compound_statement",
3212 "named": true
3213 }
3214 ]
3215 }
3216 }
3217 },
3218 {
3219 "type": "seh_leave_statement",
3220 "named": true,
3221 "fields": {}
3222 },
3223 {
3224 "type": "seh_try_statement",
3225 "named": true,
3226 "fields": {
3227 "body": {
3228 "multiple": false,
3229 "required": true,
3230 "types": [
3231 {
3232 "type": "compound_statement",
3233 "named": true
3234 }
3235 ]
3236 }
3237 },
3238 "children": {
3239 "multiple": false,
3240 "required": true,
3241 "types": [
3242 {
3243 "type": "seh_except_clause",
3244 "named": true
3245 },
3246 {
3247 "type": "seh_finally_clause",
3248 "named": true
3249 }
3250 ]
3251 }
3252 },
3253 {
3254 "type": "sized_type_specifier",
3255 "named": true,
3256 "fields": {
3257 "type": {
3258 "multiple": false,
3259 "required": false,
3260 "types": [
3261 {
3262 "type": "primitive_type",
3263 "named": true
3264 },
3265 {
3266 "type": "type_identifier",
3267 "named": true
3268 }
3269 ]
3270 }
3271 }
3272 },
3273 {
3274 "type": "sizeof_expression",
3275 "named": true,
3276 "fields": {
3277 "type": {
3278 "multiple": false,
3279 "required": false,
3280 "types": [
3281 {
3282 "type": "type_descriptor",
3283 "named": true
3284 }
3285 ]
3286 },
3287 "value": {
3288 "multiple": false,
3289 "required": false,
3290 "types": [
3291 {
3292 "type": "_expression",
3293 "named": true
3294 }
3295 ]
3296 }
3297 }
3298 },
3299 {
3300 "type": "storage_class_specifier",
3301 "named": true,
3302 "fields": {}
3303 },
3304 {
3305 "type": "string_literal",
3306 "named": true,
3307 "fields": {},
3308 "children": {
3309 "multiple": true,
3310 "required": false,
3311 "types": [
3312 {
3313 "type": "escape_sequence",
3314 "named": true
3315 },
3316 {
3317 "type": "string_content",
3318 "named": true
3319 }
3320 ]
3321 }
3322 },
3323 {
3324 "type": "struct_specifier",
3325 "named": true,
3326 "fields": {
3327 "body": {
3328 "multiple": false,
3329 "required": false,
3330 "types": [
3331 {
3332 "type": "field_declaration_list",
3333 "named": true
3334 }
3335 ]
3336 },
3337 "name": {
3338 "multiple": false,
3339 "required": false,
3340 "types": [
3341 {
3342 "type": "type_identifier",
3343 "named": true
3344 }
3345 ]
3346 }
3347 },
3348 "children": {
3349 "multiple": true,
3350 "required": false,
3351 "types": [
3352 {
3353 "type": "attribute_specifier",
3354 "named": true
3355 },
3356 {
3357 "type": "ms_declspec_modifier",
3358 "named": true
3359 }
3360 ]
3361 }
3362 },
3363 {
3364 "type": "subscript_designator",
3365 "named": true,
3366 "fields": {},
3367 "children": {
3368 "multiple": false,
3369 "required": true,
3370 "types": [
3371 {
3372 "type": "_expression",
3373 "named": true
3374 }
3375 ]
3376 }
3377 },
3378 {
3379 "type": "subscript_expression",
3380 "named": true,
3381 "fields": {
3382 "argument": {
3383 "multiple": false,
3384 "required": true,
3385 "types": [
3386 {
3387 "type": "_expression",
3388 "named": true
3389 }
3390 ]
3391 },
3392 "index": {
3393 "multiple": false,
3394 "required": true,
3395 "types": [
3396 {
3397 "type": "_expression",
3398 "named": true
3399 }
3400 ]
3401 }
3402 }
3403 },
3404 {
3405 "type": "switch_statement",
3406 "named": true,
3407 "fields": {
3408 "body": {
3409 "multiple": false,
3410 "required": true,
3411 "types": [
3412 {
3413 "type": "compound_statement",
3414 "named": true
3415 }
3416 ]
3417 },
3418 "condition": {
3419 "multiple": false,
3420 "required": true,
3421 "types": [
3422 {
3423 "type": "parenthesized_expression",
3424 "named": true
3425 }
3426 ]
3427 }
3428 }
3429 },
3430 {
3431 "type": "translation_unit",
3432 "named": true,
3433 "fields": {},
3434 "children": {
3435 "multiple": true,
3436 "required": false,
3437 "types": [
3438 {
3439 "type": "_type_specifier",
3440 "named": true
3441 },
3442 {
3443 "type": "attributed_statement",
3444 "named": true
3445 },
3446 {
3447 "type": "break_statement",
3448 "named": true
3449 },
3450 {
3451 "type": "case_statement",
3452 "named": true
3453 },
3454 {
3455 "type": "compound_statement",
3456 "named": true
3457 },
3458 {
3459 "type": "continue_statement",
3460 "named": true
3461 },
3462 {
3463 "type": "declaration",
3464 "named": true
3465 },
3466 {
3467 "type": "do_statement",
3468 "named": true
3469 },
3470 {
3471 "type": "expression_statement",
3472 "named": true
3473 },
3474 {
3475 "type": "for_statement",
3476 "named": true
3477 },
3478 {
3479 "type": "function_definition",
3480 "named": true
3481 },
3482 {
3483 "type": "goto_statement",
3484 "named": true
3485 },
3486 {
3487 "type": "if_statement",
3488 "named": true
3489 },
3490 {
3491 "type": "labeled_statement",
3492 "named": true
3493 },
3494 {
3495 "type": "linkage_specification",
3496 "named": true
3497 },
3498 {
3499 "type": "preproc_call",
3500 "named": true
3501 },
3502 {
3503 "type": "preproc_def",
3504 "named": true
3505 },
3506 {
3507 "type": "preproc_function_def",
3508 "named": true
3509 },
3510 {
3511 "type": "preproc_if",
3512 "named": true
3513 },
3514 {
3515 "type": "preproc_ifdef",
3516 "named": true
3517 },
3518 {
3519 "type": "preproc_include",
3520 "named": true
3521 },
3522 {
3523 "type": "return_statement",
3524 "named": true
3525 },
3526 {
3527 "type": "switch_statement",
3528 "named": true
3529 },
3530 {
3531 "type": "type_definition",
3532 "named": true
3533 },
3534 {
3535 "type": "while_statement",
3536 "named": true
3537 }
3538 ]
3539 }
3540 },
3541 {
3542 "type": "type_definition",
3543 "named": true,
3544 "fields": {
3545 "declarator": {
3546 "multiple": true,
3547 "required": true,
3548 "types": [
3549 {
3550 "type": "_type_declarator",
3551 "named": true
3552 }
3553 ]
3554 },
3555 "type": {
3556 "multiple": false,
3557 "required": true,
3558 "types": [
3559 {
3560 "type": "_type_specifier",
3561 "named": true
3562 }
3563 ]
3564 }
3565 },
3566 "children": {
3567 "multiple": true,
3568 "required": false,
3569 "types": [
3570 {
3571 "type": "attribute_specifier",
3572 "named": true
3573 },
3574 {
3575 "type": "type_qualifier",
3576 "named": true
3577 }
3578 ]
3579 }
3580 },
3581 {
3582 "type": "type_descriptor",
3583 "named": true,
3584 "fields": {
3585 "declarator": {
3586 "multiple": false,
3587 "required": false,
3588 "types": [
3589 {
3590 "type": "_abstract_declarator",
3591 "named": true
3592 }
3593 ]
3594 },
3595 "type": {
3596 "multiple": false,
3597 "required": true,
3598 "types": [
3599 {
3600 "type": "_type_specifier",
3601 "named": true
3602 }
3603 ]
3604 }
3605 },
3606 "children": {
3607 "multiple": true,
3608 "required": false,
3609 "types": [
3610 {
3611 "type": "type_qualifier",
3612 "named": true
3613 }
3614 ]
3615 }
3616 },
3617 {
3618 "type": "type_qualifier",
3619 "named": true,
3620 "fields": {}
3621 },
3622 {
3623 "type": "unary_expression",
3624 "named": true,
3625 "fields": {
3626 "argument": {
3627 "multiple": false,
3628 "required": true,
3629 "types": [
3630 {
3631 "type": "_expression",
3632 "named": true
3633 },
3634 {
3635 "type": "preproc_defined",
3636 "named": true
3637 }
3638 ]
3639 },
3640 "operator": {
3641 "multiple": false,
3642 "required": true,
3643 "types": [
3644 {
3645 "type": "!",
3646 "named": false
3647 },
3648 {
3649 "type": "+",
3650 "named": false
3651 },
3652 {
3653 "type": "-",
3654 "named": false
3655 },
3656 {
3657 "type": "~",
3658 "named": false
3659 }
3660 ]
3661 }
3662 }
3663 },
3664 {
3665 "type": "union_specifier",
3666 "named": true,
3667 "fields": {
3668 "body": {
3669 "multiple": false,
3670 "required": false,
3671 "types": [
3672 {
3673 "type": "field_declaration_list",
3674 "named": true
3675 }
3676 ]
3677 },
3678 "name": {
3679 "multiple": false,
3680 "required": false,
3681 "types": [
3682 {
3683 "type": "type_identifier",
3684 "named": true
3685 }
3686 ]
3687 }
3688 },
3689 "children": {
3690 "multiple": true,
3691 "required": false,
3692 "types": [
3693 {
3694 "type": "attribute_specifier",
3695 "named": true
3696 },
3697 {
3698 "type": "ms_declspec_modifier",
3699 "named": true
3700 }
3701 ]
3702 }
3703 },
3704 {
3705 "type": "update_expression",
3706 "named": true,
3707 "fields": {
3708 "argument": {
3709 "multiple": false,
3710 "required": true,
3711 "types": [
3712 {
3713 "type": "_expression",
3714 "named": true
3715 }
3716 ]
3717 },
3718 "operator": {
3719 "multiple": false,
3720 "required": true,
3721 "types": [
3722 {
3723 "type": "++",
3724 "named": false
3725 },
3726 {
3727 "type": "--",
3728 "named": false
3729 }
3730 ]
3731 }
3732 }
3733 },
3734 {
3735 "type": "variadic_parameter",
3736 "named": true,
3737 "fields": {}
3738 },
3739 {
3740 "type": "while_statement",
3741 "named": true,
3742 "fields": {
3743 "body": {
3744 "multiple": false,
3745 "required": true,
3746 "types": [
3747 {
3748 "type": "_statement",
3749 "named": true
3750 }
3751 ]
3752 },
3753 "condition": {
3754 "multiple": false,
3755 "required": true,
3756 "types": [
3757 {
3758 "type": "parenthesized_expression",
3759 "named": true
3760 }
3761 ]
3762 }
3763 }
3764 },
3765 {
3766 "type": "\n",
3767 "named": false
3768 },
3769 {
3770 "type": "!",
3771 "named": false
3772 },
3773 {
3774 "type": "!=",
3775 "named": false
3776 },
3777 {
3778 "type": "\"",
3779 "named": false
3780 },
3781 {
3782 "type": "#define",
3783 "named": false
3784 },
3785 {
3786 "type": "#elif",
3787 "named": false
3788 },
3789 {
3790 "type": "#elifdef",
3791 "named": false
3792 },
3793 {
3794 "type": "#elifndef",
3795 "named": false
3796 },
3797 {
3798 "type": "#else",
3799 "named": false
3800 },
3801 {
3802 "type": "#endif",
3803 "named": false
3804 },
3805 {
3806 "type": "#if",
3807 "named": false
3808 },
3809 {
3810 "type": "#ifdef",
3811 "named": false
3812 },
3813 {
3814 "type": "#ifndef",
3815 "named": false
3816 },
3817 {
3818 "type": "#include",
3819 "named": false
3820 },
3821 {
3822 "type": "%",
3823 "named": false
3824 },
3825 {
3826 "type": "%=",
3827 "named": false
3828 },
3829 {
3830 "type": "&",
3831 "named": false
3832 },
3833 {
3834 "type": "&&",
3835 "named": false
3836 },
3837 {
3838 "type": "&=",
3839 "named": false
3840 },
3841 {
3842 "type": "'",
3843 "named": false
3844 },
3845 {
3846 "type": "(",
3847 "named": false
3848 },
3849 {
3850 "type": ")",
3851 "named": false
3852 },
3853 {
3854 "type": "*",
3855 "named": false
3856 },
3857 {
3858 "type": "*=",
3859 "named": false
3860 },
3861 {
3862 "type": "+",
3863 "named": false
3864 },
3865 {
3866 "type": "++",
3867 "named": false
3868 },
3869 {
3870 "type": "+=",
3871 "named": false
3872 },
3873 {
3874 "type": ",",
3875 "named": false
3876 },
3877 {
3878 "type": "-",
3879 "named": false
3880 },
3881 {
3882 "type": "--",
3883 "named": false
3884 },
3885 {
3886 "type": "-=",
3887 "named": false
3888 },
3889 {
3890 "type": "->",
3891 "named": false
3892 },
3893 {
3894 "type": ".",
3895 "named": false
3896 },
3897 {
3898 "type": "...",
3899 "named": false
3900 },
3901 {
3902 "type": "/",
3903 "named": false
3904 },
3905 {
3906 "type": "/=",
3907 "named": false
3908 },
3909 {
3910 "type": ":",
3911 "named": false
3912 },
3913 {
3914 "type": "::",
3915 "named": false
3916 },
3917 {
3918 "type": ";",
3919 "named": false
3920 },
3921 {
3922 "type": "<",
3923 "named": false
3924 },
3925 {
3926 "type": "<<",
3927 "named": false
3928 },
3929 {
3930 "type": "<<=",
3931 "named": false
3932 },
3933 {
3934 "type": "<=",
3935 "named": false
3936 },
3937 {
3938 "type": "=",
3939 "named": false
3940 },
3941 {
3942 "type": "==",
3943 "named": false
3944 },
3945 {
3946 "type": ">",
3947 "named": false
3948 },
3949 {
3950 "type": ">=",
3951 "named": false
3952 },
3953 {
3954 "type": ">>",
3955 "named": false
3956 },
3957 {
3958 "type": ">>=",
3959 "named": false
3960 },
3961 {
3962 "type": "?",
3963 "named": false
3964 },
3965 {
3966 "type": "L\"",
3967 "named": false
3968 },
3969 {
3970 "type": "L'",
3971 "named": false
3972 },
3973 {
3974 "type": "NULL",
3975 "named": false
3976 },
3977 {
3978 "type": "U\"",
3979 "named": false
3980 },
3981 {
3982 "type": "U'",
3983 "named": false
3984 },
3985 {
3986 "type": "[",
3987 "named": false
3988 },
3989 {
3990 "type": "[[",
3991 "named": false
3992 },
3993 {
3994 "type": "]",
3995 "named": false
3996 },
3997 {
3998 "type": "]]",
3999 "named": false
4000 },
4001 {
4002 "type": "^",
4003 "named": false
4004 },
4005 {
4006 "type": "^=",
4007 "named": false
4008 },
4009 {
4010 "type": "_Alignof",
4011 "named": false
4012 },
4013 {
4014 "type": "_Atomic",
4015 "named": false
4016 },
4017 {
4018 "type": "_Generic",
4019 "named": false
4020 },
4021 {
4022 "type": "_Noreturn",
4023 "named": false
4024 },
4025 {
4026 "type": "__alignof",
4027 "named": false
4028 },
4029 {
4030 "type": "__alignof__",
4031 "named": false
4032 },
4033 {
4034 "type": "__asm__",
4035 "named": false
4036 },
4037 {
4038 "type": "__attribute__",
4039 "named": false
4040 },
4041 {
4042 "type": "__based",
4043 "named": false
4044 },
4045 {
4046 "type": "__cdecl",
4047 "named": false
4048 },
4049 {
4050 "type": "__clrcall",
4051 "named": false
4052 },
4053 {
4054 "type": "__declspec",
4055 "named": false
4056 },
4057 {
4058 "type": "__except",
4059 "named": false
4060 },
4061 {
4062 "type": "__extension__",
4063 "named": false
4064 },
4065 {
4066 "type": "__fastcall",
4067 "named": false
4068 },
4069 {
4070 "type": "__finally",
4071 "named": false
4072 },
4073 {
4074 "type": "__forceinline",
4075 "named": false
4076 },
4077 {
4078 "type": "__inline",
4079 "named": false
4080 },
4081 {
4082 "type": "__inline__",
4083 "named": false
4084 },
4085 {
4086 "type": "__leave",
4087 "named": false
4088 },
4089 {
4090 "type": "__restrict__",
4091 "named": false
4092 },
4093 {
4094 "type": "__stdcall",
4095 "named": false
4096 },
4097 {
4098 "type": "__thiscall",
4099 "named": false
4100 },
4101 {
4102 "type": "__thread",
4103 "named": false
4104 },
4105 {
4106 "type": "__try",
4107 "named": false
4108 },
4109 {
4110 "type": "__unaligned",
4111 "named": false
4112 },
4113 {
4114 "type": "__vectorcall",
4115 "named": false
4116 },
4117 {
4118 "type": "_alignof",
4119 "named": false
4120 },
4121 {
4122 "type": "_unaligned",
4123 "named": false
4124 },
4125 {
4126 "type": "alignof",
4127 "named": false
4128 },
4129 {
4130 "type": "asm",
4131 "named": false
4132 },
4133 {
4134 "type": "auto",
4135 "named": false
4136 },
4137 {
4138 "type": "break",
4139 "named": false
4140 },
4141 {
4142 "type": "case",
4143 "named": false
4144 },
4145 {
4146 "type": "character",
4147 "named": true
4148 },
4149 {
4150 "type": "comment",
4151 "named": true
4152 },
4153 {
4154 "type": "const",
4155 "named": false
4156 },
4157 {
4158 "type": "constexpr",
4159 "named": false
4160 },
4161 {
4162 "type": "continue",
4163 "named": false
4164 },
4165 {
4166 "type": "default",
4167 "named": false
4168 },
4169 {
4170 "type": "defined",
4171 "named": false
4172 },
4173 {
4174 "type": "do",
4175 "named": false
4176 },
4177 {
4178 "type": "else",
4179 "named": false
4180 },
4181 {
4182 "type": "enum",
4183 "named": false
4184 },
4185 {
4186 "type": "escape_sequence",
4187 "named": true
4188 },
4189 {
4190 "type": "extern",
4191 "named": false
4192 },
4193 {
4194 "type": "false",
4195 "named": true
4196 },
4197 {
4198 "type": "field_identifier",
4199 "named": true
4200 },
4201 {
4202 "type": "for",
4203 "named": false
4204 },
4205 {
4206 "type": "goto",
4207 "named": false
4208 },
4209 {
4210 "type": "identifier",
4211 "named": true
4212 },
4213 {
4214 "type": "if",
4215 "named": false
4216 },
4217 {
4218 "type": "inline",
4219 "named": false
4220 },
4221 {
4222 "type": "long",
4223 "named": false
4224 },
4225 {
4226 "type": "ms_restrict_modifier",
4227 "named": true
4228 },
4229 {
4230 "type": "ms_signed_ptr_modifier",
4231 "named": true
4232 },
4233 {
4234 "type": "ms_unsigned_ptr_modifier",
4235 "named": true
4236 },
4237 {
4238 "type": "noreturn",
4239 "named": false
4240 },
4241 {
4242 "type": "nullptr",
4243 "named": false
4244 },
4245 {
4246 "type": "number_literal",
4247 "named": true
4248 },
4249 {
4250 "type": "offsetof",
4251 "named": false
4252 },
4253 {
4254 "type": "preproc_arg",
4255 "named": true
4256 },
4257 {
4258 "type": "preproc_directive",
4259 "named": true
4260 },
4261 {
4262 "type": "primitive_type",
4263 "named": true
4264 },
4265 {
4266 "type": "register",
4267 "named": false
4268 },
4269 {
4270 "type": "restrict",
4271 "named": false
4272 },
4273 {
4274 "type": "return",
4275 "named": false
4276 },
4277 {
4278 "type": "short",
4279 "named": false
4280 },
4281 {
4282 "type": "signed",
4283 "named": false
4284 },
4285 {
4286 "type": "sizeof",
4287 "named": false
4288 },
4289 {
4290 "type": "statement_identifier",
4291 "named": true
4292 },
4293 {
4294 "type": "static",
4295 "named": false
4296 },
4297 {
4298 "type": "string_content",
4299 "named": true
4300 },
4301 {
4302 "type": "struct",
4303 "named": false
4304 },
4305 {
4306 "type": "switch",
4307 "named": false
4308 },
4309 {
4310 "type": "system_lib_string",
4311 "named": true
4312 },
4313 {
4314 "type": "thread_local",
4315 "named": false
4316 },
4317 {
4318 "type": "true",
4319 "named": true
4320 },
4321 {
4322 "type": "type_identifier",
4323 "named": true
4324 },
4325 {
4326 "type": "typedef",
4327 "named": false
4328 },
4329 {
4330 "type": "u\"",
4331 "named": false
4332 },
4333 {
4334 "type": "u'",
4335 "named": false
4336 },
4337 {
4338 "type": "u8\"",
4339 "named": false
4340 },
4341 {
4342 "type": "u8'",
4343 "named": false
4344 },
4345 {
4346 "type": "union",
4347 "named": false
4348 },
4349 {
4350 "type": "unsigned",
4351 "named": false
4352 },
4353 {
4354 "type": "volatile",
4355 "named": false
4356 },
4357 {
4358 "type": "while",
4359 "named": false
4360 },
4361 {
4362 "type": "{",
4363 "named": false
4364 },
4365 {
4366 "type": "|",
4367 "named": false
4368 },
4369 {
4370 "type": "|=",
4371 "named": false
4372 },
4373 {
4374 "type": "||",
4375 "named": false
4376 },
4377 {
4378 "type": "}",
4379 "named": false
4380 },
4381 {
4382 "type": "~",
4383 "named": false
4384 }
4385]