1[
2 {
3 "type": "_declaration_statement",
4 "named": true,
5 "subtypes": [
6 {
7 "type": "associated_type",
8 "named": true
9 },
10 {
11 "type": "attribute_item",
12 "named": true
13 },
14 {
15 "type": "const_item",
16 "named": true
17 },
18 {
19 "type": "empty_statement",
20 "named": true
21 },
22 {
23 "type": "enum_item",
24 "named": true
25 },
26 {
27 "type": "extern_crate_declaration",
28 "named": true
29 },
30 {
31 "type": "foreign_mod_item",
32 "named": true
33 },
34 {
35 "type": "function_item",
36 "named": true
37 },
38 {
39 "type": "function_signature_item",
40 "named": true
41 },
42 {
43 "type": "impl_item",
44 "named": true
45 },
46 {
47 "type": "inner_attribute_item",
48 "named": true
49 },
50 {
51 "type": "let_declaration",
52 "named": true
53 },
54 {
55 "type": "macro_definition",
56 "named": true
57 },
58 {
59 "type": "macro_invocation",
60 "named": true
61 },
62 {
63 "type": "mod_item",
64 "named": true
65 },
66 {
67 "type": "static_item",
68 "named": true
69 },
70 {
71 "type": "struct_item",
72 "named": true
73 },
74 {
75 "type": "trait_item",
76 "named": true
77 },
78 {
79 "type": "type_item",
80 "named": true
81 },
82 {
83 "type": "union_item",
84 "named": true
85 },
86 {
87 "type": "use_declaration",
88 "named": true
89 }
90 ]
91 },
92 {
93 "type": "_expression",
94 "named": true,
95 "subtypes": [
96 {
97 "type": "_literal",
98 "named": true
99 },
100 {
101 "type": "array_expression",
102 "named": true
103 },
104 {
105 "type": "assignment_expression",
106 "named": true
107 },
108 {
109 "type": "async_block",
110 "named": true
111 },
112 {
113 "type": "await_expression",
114 "named": true
115 },
116 {
117 "type": "binary_expression",
118 "named": true
119 },
120 {
121 "type": "block",
122 "named": true
123 },
124 {
125 "type": "break_expression",
126 "named": true
127 },
128 {
129 "type": "call_expression",
130 "named": true
131 },
132 {
133 "type": "closure_expression",
134 "named": true
135 },
136 {
137 "type": "compound_assignment_expr",
138 "named": true
139 },
140 {
141 "type": "const_block",
142 "named": true
143 },
144 {
145 "type": "continue_expression",
146 "named": true
147 },
148 {
149 "type": "field_expression",
150 "named": true
151 },
152 {
153 "type": "for_expression",
154 "named": true
155 },
156 {
157 "type": "generic_function",
158 "named": true
159 },
160 {
161 "type": "identifier",
162 "named": true
163 },
164 {
165 "type": "if_expression",
166 "named": true
167 },
168 {
169 "type": "index_expression",
170 "named": true
171 },
172 {
173 "type": "loop_expression",
174 "named": true
175 },
176 {
177 "type": "macro_invocation",
178 "named": true
179 },
180 {
181 "type": "match_expression",
182 "named": true
183 },
184 {
185 "type": "metavariable",
186 "named": true
187 },
188 {
189 "type": "parenthesized_expression",
190 "named": true
191 },
192 {
193 "type": "range_expression",
194 "named": true
195 },
196 {
197 "type": "reference_expression",
198 "named": true
199 },
200 {
201 "type": "return_expression",
202 "named": true
203 },
204 {
205 "type": "scoped_identifier",
206 "named": true
207 },
208 {
209 "type": "self",
210 "named": true
211 },
212 {
213 "type": "struct_expression",
214 "named": true
215 },
216 {
217 "type": "try_block",
218 "named": true
219 },
220 {
221 "type": "try_expression",
222 "named": true
223 },
224 {
225 "type": "tuple_expression",
226 "named": true
227 },
228 {
229 "type": "type_cast_expression",
230 "named": true
231 },
232 {
233 "type": "unary_expression",
234 "named": true
235 },
236 {
237 "type": "unit_expression",
238 "named": true
239 },
240 {
241 "type": "unsafe_block",
242 "named": true
243 },
244 {
245 "type": "while_expression",
246 "named": true
247 },
248 {
249 "type": "yield_expression",
250 "named": true
251 }
252 ]
253 },
254 {
255 "type": "_literal",
256 "named": true,
257 "subtypes": [
258 {
259 "type": "boolean_literal",
260 "named": true
261 },
262 {
263 "type": "char_literal",
264 "named": true
265 },
266 {
267 "type": "float_literal",
268 "named": true
269 },
270 {
271 "type": "integer_literal",
272 "named": true
273 },
274 {
275 "type": "raw_string_literal",
276 "named": true
277 },
278 {
279 "type": "string_literal",
280 "named": true
281 }
282 ]
283 },
284 {
285 "type": "_literal_pattern",
286 "named": true,
287 "subtypes": [
288 {
289 "type": "boolean_literal",
290 "named": true
291 },
292 {
293 "type": "char_literal",
294 "named": true
295 },
296 {
297 "type": "float_literal",
298 "named": true
299 },
300 {
301 "type": "integer_literal",
302 "named": true
303 },
304 {
305 "type": "negative_literal",
306 "named": true
307 },
308 {
309 "type": "raw_string_literal",
310 "named": true
311 },
312 {
313 "type": "string_literal",
314 "named": true
315 }
316 ]
317 },
318 {
319 "type": "_pattern",
320 "named": true,
321 "subtypes": [
322 {
323 "type": "_",
324 "named": false
325 },
326 {
327 "type": "_literal_pattern",
328 "named": true
329 },
330 {
331 "type": "captured_pattern",
332 "named": true
333 },
334 {
335 "type": "const_block",
336 "named": true
337 },
338 {
339 "type": "identifier",
340 "named": true
341 },
342 {
343 "type": "macro_invocation",
344 "named": true
345 },
346 {
347 "type": "mut_pattern",
348 "named": true
349 },
350 {
351 "type": "or_pattern",
352 "named": true
353 },
354 {
355 "type": "range_pattern",
356 "named": true
357 },
358 {
359 "type": "ref_pattern",
360 "named": true
361 },
362 {
363 "type": "reference_pattern",
364 "named": true
365 },
366 {
367 "type": "remaining_field_pattern",
368 "named": true
369 },
370 {
371 "type": "scoped_identifier",
372 "named": true
373 },
374 {
375 "type": "slice_pattern",
376 "named": true
377 },
378 {
379 "type": "struct_pattern",
380 "named": true
381 },
382 {
383 "type": "tuple_pattern",
384 "named": true
385 },
386 {
387 "type": "tuple_struct_pattern",
388 "named": true
389 }
390 ]
391 },
392 {
393 "type": "_type",
394 "named": true,
395 "subtypes": [
396 {
397 "type": "abstract_type",
398 "named": true
399 },
400 {
401 "type": "array_type",
402 "named": true
403 },
404 {
405 "type": "bounded_type",
406 "named": true
407 },
408 {
409 "type": "dynamic_type",
410 "named": true
411 },
412 {
413 "type": "function_type",
414 "named": true
415 },
416 {
417 "type": "generic_type",
418 "named": true
419 },
420 {
421 "type": "macro_invocation",
422 "named": true
423 },
424 {
425 "type": "metavariable",
426 "named": true
427 },
428 {
429 "type": "never_type",
430 "named": true
431 },
432 {
433 "type": "pointer_type",
434 "named": true
435 },
436 {
437 "type": "primitive_type",
438 "named": true
439 },
440 {
441 "type": "reference_type",
442 "named": true
443 },
444 {
445 "type": "removed_trait_bound",
446 "named": true
447 },
448 {
449 "type": "scoped_type_identifier",
450 "named": true
451 },
452 {
453 "type": "tuple_type",
454 "named": true
455 },
456 {
457 "type": "type_identifier",
458 "named": true
459 },
460 {
461 "type": "unit_type",
462 "named": true
463 }
464 ]
465 },
466 {
467 "type": "abstract_type",
468 "named": true,
469 "fields": {
470 "trait": {
471 "multiple": false,
472 "required": true,
473 "types": [
474 {
475 "type": "function_type",
476 "named": true
477 },
478 {
479 "type": "generic_type",
480 "named": true
481 },
482 {
483 "type": "removed_trait_bound",
484 "named": true
485 },
486 {
487 "type": "scoped_type_identifier",
488 "named": true
489 },
490 {
491 "type": "tuple_type",
492 "named": true
493 },
494 {
495 "type": "type_identifier",
496 "named": true
497 }
498 ]
499 }
500 },
501 "children": {
502 "multiple": false,
503 "required": false,
504 "types": [
505 {
506 "type": "type_parameters",
507 "named": true
508 }
509 ]
510 }
511 },
512 {
513 "type": "arguments",
514 "named": true,
515 "fields": {},
516 "children": {
517 "multiple": true,
518 "required": false,
519 "types": [
520 {
521 "type": "_expression",
522 "named": true
523 },
524 {
525 "type": "attribute_item",
526 "named": true
527 }
528 ]
529 }
530 },
531 {
532 "type": "array_expression",
533 "named": true,
534 "fields": {
535 "length": {
536 "multiple": false,
537 "required": false,
538 "types": [
539 {
540 "type": "_expression",
541 "named": true
542 }
543 ]
544 }
545 },
546 "children": {
547 "multiple": true,
548 "required": false,
549 "types": [
550 {
551 "type": "_expression",
552 "named": true
553 },
554 {
555 "type": "attribute_item",
556 "named": true
557 }
558 ]
559 }
560 },
561 {
562 "type": "array_type",
563 "named": true,
564 "fields": {
565 "element": {
566 "multiple": false,
567 "required": true,
568 "types": [
569 {
570 "type": "_type",
571 "named": true
572 }
573 ]
574 },
575 "length": {
576 "multiple": false,
577 "required": false,
578 "types": [
579 {
580 "type": "_expression",
581 "named": true
582 }
583 ]
584 }
585 }
586 },
587 {
588 "type": "assignment_expression",
589 "named": true,
590 "fields": {
591 "left": {
592 "multiple": false,
593 "required": true,
594 "types": [
595 {
596 "type": "_expression",
597 "named": true
598 }
599 ]
600 },
601 "right": {
602 "multiple": false,
603 "required": true,
604 "types": [
605 {
606 "type": "_expression",
607 "named": true
608 }
609 ]
610 }
611 }
612 },
613 {
614 "type": "associated_type",
615 "named": true,
616 "fields": {
617 "bounds": {
618 "multiple": false,
619 "required": false,
620 "types": [
621 {
622 "type": "trait_bounds",
623 "named": true
624 }
625 ]
626 },
627 "name": {
628 "multiple": false,
629 "required": true,
630 "types": [
631 {
632 "type": "type_identifier",
633 "named": true
634 }
635 ]
636 },
637 "type_parameters": {
638 "multiple": false,
639 "required": false,
640 "types": [
641 {
642 "type": "type_parameters",
643 "named": true
644 }
645 ]
646 }
647 },
648 "children": {
649 "multiple": false,
650 "required": false,
651 "types": [
652 {
653 "type": "where_clause",
654 "named": true
655 }
656 ]
657 }
658 },
659 {
660 "type": "async_block",
661 "named": true,
662 "fields": {},
663 "children": {
664 "multiple": false,
665 "required": true,
666 "types": [
667 {
668 "type": "block",
669 "named": true
670 }
671 ]
672 }
673 },
674 {
675 "type": "attribute",
676 "named": true,
677 "fields": {
678 "arguments": {
679 "multiple": false,
680 "required": false,
681 "types": [
682 {
683 "type": "token_tree",
684 "named": true
685 }
686 ]
687 },
688 "value": {
689 "multiple": false,
690 "required": false,
691 "types": [
692 {
693 "type": "_expression",
694 "named": true
695 }
696 ]
697 }
698 },
699 "children": {
700 "multiple": false,
701 "required": true,
702 "types": [
703 {
704 "type": "crate",
705 "named": true
706 },
707 {
708 "type": "identifier",
709 "named": true
710 },
711 {
712 "type": "metavariable",
713 "named": true
714 },
715 {
716 "type": "scoped_identifier",
717 "named": true
718 },
719 {
720 "type": "self",
721 "named": true
722 },
723 {
724 "type": "super",
725 "named": true
726 }
727 ]
728 }
729 },
730 {
731 "type": "attribute_item",
732 "named": true,
733 "fields": {},
734 "children": {
735 "multiple": false,
736 "required": true,
737 "types": [
738 {
739 "type": "attribute",
740 "named": true
741 }
742 ]
743 }
744 },
745 {
746 "type": "await_expression",
747 "named": true,
748 "fields": {},
749 "children": {
750 "multiple": false,
751 "required": true,
752 "types": [
753 {
754 "type": "_expression",
755 "named": true
756 }
757 ]
758 }
759 },
760 {
761 "type": "base_field_initializer",
762 "named": true,
763 "fields": {},
764 "children": {
765 "multiple": false,
766 "required": true,
767 "types": [
768 {
769 "type": "_expression",
770 "named": true
771 }
772 ]
773 }
774 },
775 {
776 "type": "binary_expression",
777 "named": true,
778 "fields": {
779 "left": {
780 "multiple": false,
781 "required": true,
782 "types": [
783 {
784 "type": "_expression",
785 "named": true
786 }
787 ]
788 },
789 "operator": {
790 "multiple": false,
791 "required": true,
792 "types": [
793 {
794 "type": "!=",
795 "named": false
796 },
797 {
798 "type": "%",
799 "named": false
800 },
801 {
802 "type": "&",
803 "named": false
804 },
805 {
806 "type": "&&",
807 "named": false
808 },
809 {
810 "type": "*",
811 "named": false
812 },
813 {
814 "type": "+",
815 "named": false
816 },
817 {
818 "type": "-",
819 "named": false
820 },
821 {
822 "type": "/",
823 "named": false
824 },
825 {
826 "type": "<",
827 "named": false
828 },
829 {
830 "type": "<<",
831 "named": false
832 },
833 {
834 "type": "<=",
835 "named": false
836 },
837 {
838 "type": "==",
839 "named": false
840 },
841 {
842 "type": ">",
843 "named": false
844 },
845 {
846 "type": ">=",
847 "named": false
848 },
849 {
850 "type": ">>",
851 "named": false
852 },
853 {
854 "type": "^",
855 "named": false
856 },
857 {
858 "type": "|",
859 "named": false
860 },
861 {
862 "type": "||",
863 "named": false
864 }
865 ]
866 },
867 "right": {
868 "multiple": false,
869 "required": true,
870 "types": [
871 {
872 "type": "_expression",
873 "named": true
874 }
875 ]
876 }
877 }
878 },
879 {
880 "type": "block",
881 "named": true,
882 "fields": {},
883 "children": {
884 "multiple": true,
885 "required": false,
886 "types": [
887 {
888 "type": "_declaration_statement",
889 "named": true
890 },
891 {
892 "type": "_expression",
893 "named": true
894 },
895 {
896 "type": "expression_statement",
897 "named": true
898 },
899 {
900 "type": "label",
901 "named": true
902 }
903 ]
904 }
905 },
906 {
907 "type": "block_comment",
908 "named": true,
909 "fields": {
910 "doc": {
911 "multiple": false,
912 "required": false,
913 "types": [
914 {
915 "type": "doc_comment",
916 "named": true
917 }
918 ]
919 },
920 "inner": {
921 "multiple": false,
922 "required": false,
923 "types": [
924 {
925 "type": "inner_doc_comment_marker",
926 "named": true
927 }
928 ]
929 },
930 "outer": {
931 "multiple": false,
932 "required": false,
933 "types": [
934 {
935 "type": "outer_doc_comment_marker",
936 "named": true
937 }
938 ]
939 }
940 }
941 },
942 {
943 "type": "boolean_literal",
944 "named": true,
945 "fields": {}
946 },
947 {
948 "type": "bounded_type",
949 "named": true,
950 "fields": {},
951 "children": {
952 "multiple": true,
953 "required": true,
954 "types": [
955 {
956 "type": "_type",
957 "named": true
958 },
959 {
960 "type": "lifetime",
961 "named": true
962 }
963 ]
964 }
965 },
966 {
967 "type": "bracketed_type",
968 "named": true,
969 "fields": {},
970 "children": {
971 "multiple": false,
972 "required": true,
973 "types": [
974 {
975 "type": "_type",
976 "named": true
977 },
978 {
979 "type": "qualified_type",
980 "named": true
981 }
982 ]
983 }
984 },
985 {
986 "type": "break_expression",
987 "named": true,
988 "fields": {},
989 "children": {
990 "multiple": true,
991 "required": false,
992 "types": [
993 {
994 "type": "_expression",
995 "named": true
996 },
997 {
998 "type": "label",
999 "named": true
1000 }
1001 ]
1002 }
1003 },
1004 {
1005 "type": "call_expression",
1006 "named": true,
1007 "fields": {
1008 "arguments": {
1009 "multiple": false,
1010 "required": true,
1011 "types": [
1012 {
1013 "type": "arguments",
1014 "named": true
1015 }
1016 ]
1017 },
1018 "function": {
1019 "multiple": false,
1020 "required": true,
1021 "types": [
1022 {
1023 "type": "_literal",
1024 "named": true
1025 },
1026 {
1027 "type": "array_expression",
1028 "named": true
1029 },
1030 {
1031 "type": "assignment_expression",
1032 "named": true
1033 },
1034 {
1035 "type": "async_block",
1036 "named": true
1037 },
1038 {
1039 "type": "await_expression",
1040 "named": true
1041 },
1042 {
1043 "type": "binary_expression",
1044 "named": true
1045 },
1046 {
1047 "type": "block",
1048 "named": true
1049 },
1050 {
1051 "type": "break_expression",
1052 "named": true
1053 },
1054 {
1055 "type": "call_expression",
1056 "named": true
1057 },
1058 {
1059 "type": "closure_expression",
1060 "named": true
1061 },
1062 {
1063 "type": "compound_assignment_expr",
1064 "named": true
1065 },
1066 {
1067 "type": "const_block",
1068 "named": true
1069 },
1070 {
1071 "type": "continue_expression",
1072 "named": true
1073 },
1074 {
1075 "type": "field_expression",
1076 "named": true
1077 },
1078 {
1079 "type": "for_expression",
1080 "named": true
1081 },
1082 {
1083 "type": "generic_function",
1084 "named": true
1085 },
1086 {
1087 "type": "identifier",
1088 "named": true
1089 },
1090 {
1091 "type": "if_expression",
1092 "named": true
1093 },
1094 {
1095 "type": "index_expression",
1096 "named": true
1097 },
1098 {
1099 "type": "loop_expression",
1100 "named": true
1101 },
1102 {
1103 "type": "macro_invocation",
1104 "named": true
1105 },
1106 {
1107 "type": "match_expression",
1108 "named": true
1109 },
1110 {
1111 "type": "metavariable",
1112 "named": true
1113 },
1114 {
1115 "type": "parenthesized_expression",
1116 "named": true
1117 },
1118 {
1119 "type": "reference_expression",
1120 "named": true
1121 },
1122 {
1123 "type": "return_expression",
1124 "named": true
1125 },
1126 {
1127 "type": "scoped_identifier",
1128 "named": true
1129 },
1130 {
1131 "type": "self",
1132 "named": true
1133 },
1134 {
1135 "type": "struct_expression",
1136 "named": true
1137 },
1138 {
1139 "type": "try_block",
1140 "named": true
1141 },
1142 {
1143 "type": "try_expression",
1144 "named": true
1145 },
1146 {
1147 "type": "tuple_expression",
1148 "named": true
1149 },
1150 {
1151 "type": "type_cast_expression",
1152 "named": true
1153 },
1154 {
1155 "type": "unary_expression",
1156 "named": true
1157 },
1158 {
1159 "type": "unit_expression",
1160 "named": true
1161 },
1162 {
1163 "type": "unsafe_block",
1164 "named": true
1165 },
1166 {
1167 "type": "while_expression",
1168 "named": true
1169 },
1170 {
1171 "type": "yield_expression",
1172 "named": true
1173 }
1174 ]
1175 }
1176 }
1177 },
1178 {
1179 "type": "captured_pattern",
1180 "named": true,
1181 "fields": {},
1182 "children": {
1183 "multiple": true,
1184 "required": true,
1185 "types": [
1186 {
1187 "type": "_pattern",
1188 "named": true
1189 }
1190 ]
1191 }
1192 },
1193 {
1194 "type": "closure_expression",
1195 "named": true,
1196 "fields": {
1197 "body": {
1198 "multiple": false,
1199 "required": true,
1200 "types": [
1201 {
1202 "type": "_",
1203 "named": false
1204 },
1205 {
1206 "type": "_expression",
1207 "named": true
1208 }
1209 ]
1210 },
1211 "parameters": {
1212 "multiple": false,
1213 "required": true,
1214 "types": [
1215 {
1216 "type": "closure_parameters",
1217 "named": true
1218 }
1219 ]
1220 },
1221 "return_type": {
1222 "multiple": false,
1223 "required": false,
1224 "types": [
1225 {
1226 "type": "_type",
1227 "named": true
1228 }
1229 ]
1230 }
1231 }
1232 },
1233 {
1234 "type": "closure_parameters",
1235 "named": true,
1236 "fields": {},
1237 "children": {
1238 "multiple": true,
1239 "required": false,
1240 "types": [
1241 {
1242 "type": "_pattern",
1243 "named": true
1244 },
1245 {
1246 "type": "parameter",
1247 "named": true
1248 }
1249 ]
1250 }
1251 },
1252 {
1253 "type": "compound_assignment_expr",
1254 "named": true,
1255 "fields": {
1256 "left": {
1257 "multiple": false,
1258 "required": true,
1259 "types": [
1260 {
1261 "type": "_expression",
1262 "named": true
1263 }
1264 ]
1265 },
1266 "operator": {
1267 "multiple": false,
1268 "required": true,
1269 "types": [
1270 {
1271 "type": "%=",
1272 "named": false
1273 },
1274 {
1275 "type": "&=",
1276 "named": false
1277 },
1278 {
1279 "type": "*=",
1280 "named": false
1281 },
1282 {
1283 "type": "+=",
1284 "named": false
1285 },
1286 {
1287 "type": "-=",
1288 "named": false
1289 },
1290 {
1291 "type": "/=",
1292 "named": false
1293 },
1294 {
1295 "type": "<<=",
1296 "named": false
1297 },
1298 {
1299 "type": ">>=",
1300 "named": false
1301 },
1302 {
1303 "type": "^=",
1304 "named": false
1305 },
1306 {
1307 "type": "|=",
1308 "named": false
1309 }
1310 ]
1311 },
1312 "right": {
1313 "multiple": false,
1314 "required": true,
1315 "types": [
1316 {
1317 "type": "_expression",
1318 "named": true
1319 }
1320 ]
1321 }
1322 }
1323 },
1324 {
1325 "type": "const_block",
1326 "named": true,
1327 "fields": {
1328 "body": {
1329 "multiple": false,
1330 "required": true,
1331 "types": [
1332 {
1333 "type": "block",
1334 "named": true
1335 }
1336 ]
1337 }
1338 }
1339 },
1340 {
1341 "type": "const_item",
1342 "named": true,
1343 "fields": {
1344 "name": {
1345 "multiple": false,
1346 "required": true,
1347 "types": [
1348 {
1349 "type": "identifier",
1350 "named": true
1351 }
1352 ]
1353 },
1354 "type": {
1355 "multiple": false,
1356 "required": true,
1357 "types": [
1358 {
1359 "type": "_type",
1360 "named": true
1361 }
1362 ]
1363 },
1364 "value": {
1365 "multiple": false,
1366 "required": false,
1367 "types": [
1368 {
1369 "type": "_expression",
1370 "named": true
1371 }
1372 ]
1373 }
1374 },
1375 "children": {
1376 "multiple": false,
1377 "required": false,
1378 "types": [
1379 {
1380 "type": "visibility_modifier",
1381 "named": true
1382 }
1383 ]
1384 }
1385 },
1386 {
1387 "type": "const_parameter",
1388 "named": true,
1389 "fields": {
1390 "name": {
1391 "multiple": false,
1392 "required": true,
1393 "types": [
1394 {
1395 "type": "identifier",
1396 "named": true
1397 }
1398 ]
1399 },
1400 "type": {
1401 "multiple": false,
1402 "required": true,
1403 "types": [
1404 {
1405 "type": "_type",
1406 "named": true
1407 }
1408 ]
1409 }
1410 }
1411 },
1412 {
1413 "type": "constrained_type_parameter",
1414 "named": true,
1415 "fields": {
1416 "bounds": {
1417 "multiple": false,
1418 "required": true,
1419 "types": [
1420 {
1421 "type": "trait_bounds",
1422 "named": true
1423 }
1424 ]
1425 },
1426 "left": {
1427 "multiple": false,
1428 "required": true,
1429 "types": [
1430 {
1431 "type": "lifetime",
1432 "named": true
1433 },
1434 {
1435 "type": "type_identifier",
1436 "named": true
1437 }
1438 ]
1439 }
1440 }
1441 },
1442 {
1443 "type": "continue_expression",
1444 "named": true,
1445 "fields": {},
1446 "children": {
1447 "multiple": false,
1448 "required": false,
1449 "types": [
1450 {
1451 "type": "label",
1452 "named": true
1453 }
1454 ]
1455 }
1456 },
1457 {
1458 "type": "declaration_list",
1459 "named": true,
1460 "fields": {},
1461 "children": {
1462 "multiple": true,
1463 "required": false,
1464 "types": [
1465 {
1466 "type": "_declaration_statement",
1467 "named": true
1468 }
1469 ]
1470 }
1471 },
1472 {
1473 "type": "dynamic_type",
1474 "named": true,
1475 "fields": {
1476 "trait": {
1477 "multiple": false,
1478 "required": true,
1479 "types": [
1480 {
1481 "type": "function_type",
1482 "named": true
1483 },
1484 {
1485 "type": "generic_type",
1486 "named": true
1487 },
1488 {
1489 "type": "higher_ranked_trait_bound",
1490 "named": true
1491 },
1492 {
1493 "type": "scoped_type_identifier",
1494 "named": true
1495 },
1496 {
1497 "type": "type_identifier",
1498 "named": true
1499 }
1500 ]
1501 }
1502 }
1503 },
1504 {
1505 "type": "else_clause",
1506 "named": true,
1507 "fields": {},
1508 "children": {
1509 "multiple": false,
1510 "required": true,
1511 "types": [
1512 {
1513 "type": "block",
1514 "named": true
1515 },
1516 {
1517 "type": "if_expression",
1518 "named": true
1519 }
1520 ]
1521 }
1522 },
1523 {
1524 "type": "empty_statement",
1525 "named": true,
1526 "fields": {}
1527 },
1528 {
1529 "type": "enum_item",
1530 "named": true,
1531 "fields": {
1532 "body": {
1533 "multiple": false,
1534 "required": true,
1535 "types": [
1536 {
1537 "type": "enum_variant_list",
1538 "named": true
1539 }
1540 ]
1541 },
1542 "name": {
1543 "multiple": false,
1544 "required": true,
1545 "types": [
1546 {
1547 "type": "type_identifier",
1548 "named": true
1549 }
1550 ]
1551 },
1552 "type_parameters": {
1553 "multiple": false,
1554 "required": false,
1555 "types": [
1556 {
1557 "type": "type_parameters",
1558 "named": true
1559 }
1560 ]
1561 }
1562 },
1563 "children": {
1564 "multiple": true,
1565 "required": false,
1566 "types": [
1567 {
1568 "type": "visibility_modifier",
1569 "named": true
1570 },
1571 {
1572 "type": "where_clause",
1573 "named": true
1574 }
1575 ]
1576 }
1577 },
1578 {
1579 "type": "enum_variant",
1580 "named": true,
1581 "fields": {
1582 "body": {
1583 "multiple": false,
1584 "required": false,
1585 "types": [
1586 {
1587 "type": "field_declaration_list",
1588 "named": true
1589 },
1590 {
1591 "type": "ordered_field_declaration_list",
1592 "named": true
1593 }
1594 ]
1595 },
1596 "name": {
1597 "multiple": false,
1598 "required": true,
1599 "types": [
1600 {
1601 "type": "identifier",
1602 "named": true
1603 }
1604 ]
1605 },
1606 "value": {
1607 "multiple": false,
1608 "required": false,
1609 "types": [
1610 {
1611 "type": "_expression",
1612 "named": true
1613 }
1614 ]
1615 }
1616 },
1617 "children": {
1618 "multiple": false,
1619 "required": false,
1620 "types": [
1621 {
1622 "type": "visibility_modifier",
1623 "named": true
1624 }
1625 ]
1626 }
1627 },
1628 {
1629 "type": "enum_variant_list",
1630 "named": true,
1631 "fields": {},
1632 "children": {
1633 "multiple": true,
1634 "required": false,
1635 "types": [
1636 {
1637 "type": "attribute_item",
1638 "named": true
1639 },
1640 {
1641 "type": "enum_variant",
1642 "named": true
1643 }
1644 ]
1645 }
1646 },
1647 {
1648 "type": "expression_statement",
1649 "named": true,
1650 "fields": {},
1651 "children": {
1652 "multiple": false,
1653 "required": true,
1654 "types": [
1655 {
1656 "type": "_expression",
1657 "named": true
1658 }
1659 ]
1660 }
1661 },
1662 {
1663 "type": "extern_crate_declaration",
1664 "named": true,
1665 "fields": {
1666 "alias": {
1667 "multiple": false,
1668 "required": false,
1669 "types": [
1670 {
1671 "type": "identifier",
1672 "named": true
1673 }
1674 ]
1675 },
1676 "name": {
1677 "multiple": false,
1678 "required": true,
1679 "types": [
1680 {
1681 "type": "identifier",
1682 "named": true
1683 }
1684 ]
1685 }
1686 },
1687 "children": {
1688 "multiple": true,
1689 "required": true,
1690 "types": [
1691 {
1692 "type": "crate",
1693 "named": true
1694 },
1695 {
1696 "type": "visibility_modifier",
1697 "named": true
1698 }
1699 ]
1700 }
1701 },
1702 {
1703 "type": "extern_modifier",
1704 "named": true,
1705 "fields": {},
1706 "children": {
1707 "multiple": false,
1708 "required": false,
1709 "types": [
1710 {
1711 "type": "string_literal",
1712 "named": true
1713 }
1714 ]
1715 }
1716 },
1717 {
1718 "type": "field_declaration",
1719 "named": true,
1720 "fields": {
1721 "name": {
1722 "multiple": false,
1723 "required": true,
1724 "types": [
1725 {
1726 "type": "field_identifier",
1727 "named": true
1728 }
1729 ]
1730 },
1731 "type": {
1732 "multiple": false,
1733 "required": true,
1734 "types": [
1735 {
1736 "type": "_type",
1737 "named": true
1738 }
1739 ]
1740 }
1741 },
1742 "children": {
1743 "multiple": false,
1744 "required": false,
1745 "types": [
1746 {
1747 "type": "visibility_modifier",
1748 "named": true
1749 }
1750 ]
1751 }
1752 },
1753 {
1754 "type": "field_declaration_list",
1755 "named": true,
1756 "fields": {},
1757 "children": {
1758 "multiple": true,
1759 "required": false,
1760 "types": [
1761 {
1762 "type": "attribute_item",
1763 "named": true
1764 },
1765 {
1766 "type": "field_declaration",
1767 "named": true
1768 }
1769 ]
1770 }
1771 },
1772 {
1773 "type": "field_expression",
1774 "named": true,
1775 "fields": {
1776 "field": {
1777 "multiple": false,
1778 "required": true,
1779 "types": [
1780 {
1781 "type": "field_identifier",
1782 "named": true
1783 },
1784 {
1785 "type": "integer_literal",
1786 "named": true
1787 }
1788 ]
1789 },
1790 "value": {
1791 "multiple": false,
1792 "required": true,
1793 "types": [
1794 {
1795 "type": "_expression",
1796 "named": true
1797 }
1798 ]
1799 }
1800 }
1801 },
1802 {
1803 "type": "field_initializer",
1804 "named": true,
1805 "fields": {
1806 "field": {
1807 "multiple": false,
1808 "required": true,
1809 "types": [
1810 {
1811 "type": "field_identifier",
1812 "named": true
1813 },
1814 {
1815 "type": "integer_literal",
1816 "named": true
1817 }
1818 ]
1819 },
1820 "value": {
1821 "multiple": false,
1822 "required": true,
1823 "types": [
1824 {
1825 "type": "_expression",
1826 "named": true
1827 }
1828 ]
1829 }
1830 },
1831 "children": {
1832 "multiple": true,
1833 "required": false,
1834 "types": [
1835 {
1836 "type": "attribute_item",
1837 "named": true
1838 }
1839 ]
1840 }
1841 },
1842 {
1843 "type": "field_initializer_list",
1844 "named": true,
1845 "fields": {},
1846 "children": {
1847 "multiple": true,
1848 "required": false,
1849 "types": [
1850 {
1851 "type": "base_field_initializer",
1852 "named": true
1853 },
1854 {
1855 "type": "field_initializer",
1856 "named": true
1857 },
1858 {
1859 "type": "shorthand_field_initializer",
1860 "named": true
1861 }
1862 ]
1863 }
1864 },
1865 {
1866 "type": "field_pattern",
1867 "named": true,
1868 "fields": {
1869 "name": {
1870 "multiple": false,
1871 "required": true,
1872 "types": [
1873 {
1874 "type": "field_identifier",
1875 "named": true
1876 },
1877 {
1878 "type": "shorthand_field_identifier",
1879 "named": true
1880 }
1881 ]
1882 },
1883 "pattern": {
1884 "multiple": false,
1885 "required": false,
1886 "types": [
1887 {
1888 "type": "_pattern",
1889 "named": true
1890 }
1891 ]
1892 }
1893 },
1894 "children": {
1895 "multiple": false,
1896 "required": false,
1897 "types": [
1898 {
1899 "type": "mutable_specifier",
1900 "named": true
1901 }
1902 ]
1903 }
1904 },
1905 {
1906 "type": "for_expression",
1907 "named": true,
1908 "fields": {
1909 "body": {
1910 "multiple": false,
1911 "required": true,
1912 "types": [
1913 {
1914 "type": "block",
1915 "named": true
1916 }
1917 ]
1918 },
1919 "pattern": {
1920 "multiple": false,
1921 "required": true,
1922 "types": [
1923 {
1924 "type": "_pattern",
1925 "named": true
1926 }
1927 ]
1928 },
1929 "value": {
1930 "multiple": false,
1931 "required": true,
1932 "types": [
1933 {
1934 "type": "_expression",
1935 "named": true
1936 }
1937 ]
1938 }
1939 },
1940 "children": {
1941 "multiple": false,
1942 "required": false,
1943 "types": [
1944 {
1945 "type": "label",
1946 "named": true
1947 }
1948 ]
1949 }
1950 },
1951 {
1952 "type": "for_lifetimes",
1953 "named": true,
1954 "fields": {},
1955 "children": {
1956 "multiple": true,
1957 "required": true,
1958 "types": [
1959 {
1960 "type": "lifetime",
1961 "named": true
1962 }
1963 ]
1964 }
1965 },
1966 {
1967 "type": "foreign_mod_item",
1968 "named": true,
1969 "fields": {
1970 "body": {
1971 "multiple": false,
1972 "required": false,
1973 "types": [
1974 {
1975 "type": "declaration_list",
1976 "named": true
1977 }
1978 ]
1979 }
1980 },
1981 "children": {
1982 "multiple": true,
1983 "required": true,
1984 "types": [
1985 {
1986 "type": "extern_modifier",
1987 "named": true
1988 },
1989 {
1990 "type": "visibility_modifier",
1991 "named": true
1992 }
1993 ]
1994 }
1995 },
1996 {
1997 "type": "fragment_specifier",
1998 "named": true,
1999 "fields": {}
2000 },
2001 {
2002 "type": "function_item",
2003 "named": true,
2004 "fields": {
2005 "body": {
2006 "multiple": false,
2007 "required": true,
2008 "types": [
2009 {
2010 "type": "block",
2011 "named": true
2012 }
2013 ]
2014 },
2015 "name": {
2016 "multiple": false,
2017 "required": true,
2018 "types": [
2019 {
2020 "type": "identifier",
2021 "named": true
2022 },
2023 {
2024 "type": "metavariable",
2025 "named": true
2026 }
2027 ]
2028 },
2029 "parameters": {
2030 "multiple": false,
2031 "required": true,
2032 "types": [
2033 {
2034 "type": "parameters",
2035 "named": true
2036 }
2037 ]
2038 },
2039 "return_type": {
2040 "multiple": false,
2041 "required": false,
2042 "types": [
2043 {
2044 "type": "_type",
2045 "named": true
2046 }
2047 ]
2048 },
2049 "type_parameters": {
2050 "multiple": false,
2051 "required": false,
2052 "types": [
2053 {
2054 "type": "type_parameters",
2055 "named": true
2056 }
2057 ]
2058 }
2059 },
2060 "children": {
2061 "multiple": true,
2062 "required": false,
2063 "types": [
2064 {
2065 "type": "function_modifiers",
2066 "named": true
2067 },
2068 {
2069 "type": "visibility_modifier",
2070 "named": true
2071 },
2072 {
2073 "type": "where_clause",
2074 "named": true
2075 }
2076 ]
2077 }
2078 },
2079 {
2080 "type": "function_modifiers",
2081 "named": true,
2082 "fields": {},
2083 "children": {
2084 "multiple": true,
2085 "required": false,
2086 "types": [
2087 {
2088 "type": "extern_modifier",
2089 "named": true
2090 }
2091 ]
2092 }
2093 },
2094 {
2095 "type": "function_signature_item",
2096 "named": true,
2097 "fields": {
2098 "name": {
2099 "multiple": false,
2100 "required": true,
2101 "types": [
2102 {
2103 "type": "identifier",
2104 "named": true
2105 },
2106 {
2107 "type": "metavariable",
2108 "named": true
2109 }
2110 ]
2111 },
2112 "parameters": {
2113 "multiple": false,
2114 "required": true,
2115 "types": [
2116 {
2117 "type": "parameters",
2118 "named": true
2119 }
2120 ]
2121 },
2122 "return_type": {
2123 "multiple": false,
2124 "required": false,
2125 "types": [
2126 {
2127 "type": "_type",
2128 "named": true
2129 }
2130 ]
2131 },
2132 "type_parameters": {
2133 "multiple": false,
2134 "required": false,
2135 "types": [
2136 {
2137 "type": "type_parameters",
2138 "named": true
2139 }
2140 ]
2141 }
2142 },
2143 "children": {
2144 "multiple": true,
2145 "required": false,
2146 "types": [
2147 {
2148 "type": "function_modifiers",
2149 "named": true
2150 },
2151 {
2152 "type": "visibility_modifier",
2153 "named": true
2154 },
2155 {
2156 "type": "where_clause",
2157 "named": true
2158 }
2159 ]
2160 }
2161 },
2162 {
2163 "type": "function_type",
2164 "named": true,
2165 "fields": {
2166 "parameters": {
2167 "multiple": false,
2168 "required": true,
2169 "types": [
2170 {
2171 "type": "parameters",
2172 "named": true
2173 }
2174 ]
2175 },
2176 "return_type": {
2177 "multiple": false,
2178 "required": false,
2179 "types": [
2180 {
2181 "type": "_type",
2182 "named": true
2183 }
2184 ]
2185 },
2186 "trait": {
2187 "multiple": false,
2188 "required": false,
2189 "types": [
2190 {
2191 "type": "scoped_type_identifier",
2192 "named": true
2193 },
2194 {
2195 "type": "type_identifier",
2196 "named": true
2197 }
2198 ]
2199 }
2200 },
2201 "children": {
2202 "multiple": true,
2203 "required": false,
2204 "types": [
2205 {
2206 "type": "for_lifetimes",
2207 "named": true
2208 },
2209 {
2210 "type": "function_modifiers",
2211 "named": true
2212 }
2213 ]
2214 }
2215 },
2216 {
2217 "type": "generic_function",
2218 "named": true,
2219 "fields": {
2220 "function": {
2221 "multiple": false,
2222 "required": true,
2223 "types": [
2224 {
2225 "type": "field_expression",
2226 "named": true
2227 },
2228 {
2229 "type": "identifier",
2230 "named": true
2231 },
2232 {
2233 "type": "scoped_identifier",
2234 "named": true
2235 }
2236 ]
2237 },
2238 "type_arguments": {
2239 "multiple": false,
2240 "required": true,
2241 "types": [
2242 {
2243 "type": "type_arguments",
2244 "named": true
2245 }
2246 ]
2247 }
2248 }
2249 },
2250 {
2251 "type": "generic_type",
2252 "named": true,
2253 "fields": {
2254 "type": {
2255 "multiple": false,
2256 "required": true,
2257 "types": [
2258 {
2259 "type": "identifier",
2260 "named": true
2261 },
2262 {
2263 "type": "scoped_identifier",
2264 "named": true
2265 },
2266 {
2267 "type": "scoped_type_identifier",
2268 "named": true
2269 },
2270 {
2271 "type": "type_identifier",
2272 "named": true
2273 }
2274 ]
2275 },
2276 "type_arguments": {
2277 "multiple": false,
2278 "required": true,
2279 "types": [
2280 {
2281 "type": "type_arguments",
2282 "named": true
2283 }
2284 ]
2285 }
2286 }
2287 },
2288 {
2289 "type": "generic_type_with_turbofish",
2290 "named": true,
2291 "fields": {
2292 "type": {
2293 "multiple": false,
2294 "required": true,
2295 "types": [
2296 {
2297 "type": "scoped_identifier",
2298 "named": true
2299 },
2300 {
2301 "type": "type_identifier",
2302 "named": true
2303 }
2304 ]
2305 },
2306 "type_arguments": {
2307 "multiple": false,
2308 "required": true,
2309 "types": [
2310 {
2311 "type": "type_arguments",
2312 "named": true
2313 }
2314 ]
2315 }
2316 }
2317 },
2318 {
2319 "type": "higher_ranked_trait_bound",
2320 "named": true,
2321 "fields": {
2322 "type": {
2323 "multiple": false,
2324 "required": true,
2325 "types": [
2326 {
2327 "type": "_type",
2328 "named": true
2329 }
2330 ]
2331 },
2332 "type_parameters": {
2333 "multiple": false,
2334 "required": true,
2335 "types": [
2336 {
2337 "type": "type_parameters",
2338 "named": true
2339 }
2340 ]
2341 }
2342 }
2343 },
2344 {
2345 "type": "if_expression",
2346 "named": true,
2347 "fields": {
2348 "alternative": {
2349 "multiple": false,
2350 "required": false,
2351 "types": [
2352 {
2353 "type": "else_clause",
2354 "named": true
2355 }
2356 ]
2357 },
2358 "condition": {
2359 "multiple": false,
2360 "required": true,
2361 "types": [
2362 {
2363 "type": "_expression",
2364 "named": true
2365 },
2366 {
2367 "type": "let_chain",
2368 "named": true
2369 },
2370 {
2371 "type": "let_condition",
2372 "named": true
2373 }
2374 ]
2375 },
2376 "consequence": {
2377 "multiple": false,
2378 "required": true,
2379 "types": [
2380 {
2381 "type": "block",
2382 "named": true
2383 }
2384 ]
2385 }
2386 }
2387 },
2388 {
2389 "type": "impl_item",
2390 "named": true,
2391 "fields": {
2392 "body": {
2393 "multiple": false,
2394 "required": false,
2395 "types": [
2396 {
2397 "type": "declaration_list",
2398 "named": true
2399 }
2400 ]
2401 },
2402 "trait": {
2403 "multiple": false,
2404 "required": false,
2405 "types": [
2406 {
2407 "type": "generic_type",
2408 "named": true
2409 },
2410 {
2411 "type": "scoped_type_identifier",
2412 "named": true
2413 },
2414 {
2415 "type": "type_identifier",
2416 "named": true
2417 }
2418 ]
2419 },
2420 "type": {
2421 "multiple": false,
2422 "required": true,
2423 "types": [
2424 {
2425 "type": "_type",
2426 "named": true
2427 }
2428 ]
2429 },
2430 "type_parameters": {
2431 "multiple": false,
2432 "required": false,
2433 "types": [
2434 {
2435 "type": "type_parameters",
2436 "named": true
2437 }
2438 ]
2439 }
2440 },
2441 "children": {
2442 "multiple": false,
2443 "required": false,
2444 "types": [
2445 {
2446 "type": "where_clause",
2447 "named": true
2448 }
2449 ]
2450 }
2451 },
2452 {
2453 "type": "index_expression",
2454 "named": true,
2455 "fields": {},
2456 "children": {
2457 "multiple": true,
2458 "required": true,
2459 "types": [
2460 {
2461 "type": "_expression",
2462 "named": true
2463 }
2464 ]
2465 }
2466 },
2467 {
2468 "type": "inner_attribute_item",
2469 "named": true,
2470 "fields": {},
2471 "children": {
2472 "multiple": false,
2473 "required": true,
2474 "types": [
2475 {
2476 "type": "attribute",
2477 "named": true
2478 }
2479 ]
2480 }
2481 },
2482 {
2483 "type": "label",
2484 "named": true,
2485 "fields": {},
2486 "children": {
2487 "multiple": false,
2488 "required": true,
2489 "types": [
2490 {
2491 "type": "identifier",
2492 "named": true
2493 }
2494 ]
2495 }
2496 },
2497 {
2498 "type": "let_chain",
2499 "named": true,
2500 "fields": {},
2501 "children": {
2502 "multiple": true,
2503 "required": true,
2504 "types": [
2505 {
2506 "type": "_expression",
2507 "named": true
2508 },
2509 {
2510 "type": "let_condition",
2511 "named": true
2512 }
2513 ]
2514 }
2515 },
2516 {
2517 "type": "let_condition",
2518 "named": true,
2519 "fields": {
2520 "pattern": {
2521 "multiple": false,
2522 "required": true,
2523 "types": [
2524 {
2525 "type": "_pattern",
2526 "named": true
2527 }
2528 ]
2529 },
2530 "value": {
2531 "multiple": false,
2532 "required": true,
2533 "types": [
2534 {
2535 "type": "_expression",
2536 "named": true
2537 }
2538 ]
2539 }
2540 }
2541 },
2542 {
2543 "type": "let_declaration",
2544 "named": true,
2545 "fields": {
2546 "alternative": {
2547 "multiple": false,
2548 "required": false,
2549 "types": [
2550 {
2551 "type": "block",
2552 "named": true
2553 }
2554 ]
2555 },
2556 "pattern": {
2557 "multiple": false,
2558 "required": true,
2559 "types": [
2560 {
2561 "type": "_pattern",
2562 "named": true
2563 }
2564 ]
2565 },
2566 "type": {
2567 "multiple": false,
2568 "required": false,
2569 "types": [
2570 {
2571 "type": "_type",
2572 "named": true
2573 }
2574 ]
2575 },
2576 "value": {
2577 "multiple": false,
2578 "required": false,
2579 "types": [
2580 {
2581 "type": "_expression",
2582 "named": true
2583 }
2584 ]
2585 }
2586 },
2587 "children": {
2588 "multiple": false,
2589 "required": false,
2590 "types": [
2591 {
2592 "type": "mutable_specifier",
2593 "named": true
2594 }
2595 ]
2596 }
2597 },
2598 {
2599 "type": "lifetime",
2600 "named": true,
2601 "fields": {},
2602 "children": {
2603 "multiple": false,
2604 "required": true,
2605 "types": [
2606 {
2607 "type": "identifier",
2608 "named": true
2609 }
2610 ]
2611 }
2612 },
2613 {
2614 "type": "line_comment",
2615 "named": true,
2616 "fields": {
2617 "doc": {
2618 "multiple": false,
2619 "required": false,
2620 "types": [
2621 {
2622 "type": "doc_comment",
2623 "named": true
2624 }
2625 ]
2626 },
2627 "inner": {
2628 "multiple": false,
2629 "required": false,
2630 "types": [
2631 {
2632 "type": "inner_doc_comment_marker",
2633 "named": true
2634 }
2635 ]
2636 },
2637 "outer": {
2638 "multiple": false,
2639 "required": false,
2640 "types": [
2641 {
2642 "type": "outer_doc_comment_marker",
2643 "named": true
2644 }
2645 ]
2646 }
2647 }
2648 },
2649 {
2650 "type": "loop_expression",
2651 "named": true,
2652 "fields": {
2653 "body": {
2654 "multiple": false,
2655 "required": true,
2656 "types": [
2657 {
2658 "type": "block",
2659 "named": true
2660 }
2661 ]
2662 }
2663 },
2664 "children": {
2665 "multiple": false,
2666 "required": false,
2667 "types": [
2668 {
2669 "type": "label",
2670 "named": true
2671 }
2672 ]
2673 }
2674 },
2675 {
2676 "type": "macro_definition",
2677 "named": true,
2678 "fields": {
2679 "name": {
2680 "multiple": false,
2681 "required": true,
2682 "types": [
2683 {
2684 "type": "identifier",
2685 "named": true
2686 }
2687 ]
2688 }
2689 },
2690 "children": {
2691 "multiple": true,
2692 "required": false,
2693 "types": [
2694 {
2695 "type": "macro_rule",
2696 "named": true
2697 }
2698 ]
2699 }
2700 },
2701 {
2702 "type": "macro_invocation",
2703 "named": true,
2704 "fields": {
2705 "macro": {
2706 "multiple": false,
2707 "required": true,
2708 "types": [
2709 {
2710 "type": "identifier",
2711 "named": true
2712 },
2713 {
2714 "type": "scoped_identifier",
2715 "named": true
2716 }
2717 ]
2718 }
2719 },
2720 "children": {
2721 "multiple": false,
2722 "required": true,
2723 "types": [
2724 {
2725 "type": "token_tree",
2726 "named": true
2727 }
2728 ]
2729 }
2730 },
2731 {
2732 "type": "macro_rule",
2733 "named": true,
2734 "fields": {
2735 "left": {
2736 "multiple": false,
2737 "required": true,
2738 "types": [
2739 {
2740 "type": "token_tree_pattern",
2741 "named": true
2742 }
2743 ]
2744 },
2745 "right": {
2746 "multiple": false,
2747 "required": true,
2748 "types": [
2749 {
2750 "type": "token_tree",
2751 "named": true
2752 }
2753 ]
2754 }
2755 }
2756 },
2757 {
2758 "type": "match_arm",
2759 "named": true,
2760 "fields": {
2761 "pattern": {
2762 "multiple": false,
2763 "required": true,
2764 "types": [
2765 {
2766 "type": "match_pattern",
2767 "named": true
2768 }
2769 ]
2770 },
2771 "value": {
2772 "multiple": false,
2773 "required": true,
2774 "types": [
2775 {
2776 "type": "_expression",
2777 "named": true
2778 }
2779 ]
2780 }
2781 },
2782 "children": {
2783 "multiple": true,
2784 "required": false,
2785 "types": [
2786 {
2787 "type": "attribute_item",
2788 "named": true
2789 },
2790 {
2791 "type": "inner_attribute_item",
2792 "named": true
2793 }
2794 ]
2795 }
2796 },
2797 {
2798 "type": "match_block",
2799 "named": true,
2800 "fields": {},
2801 "children": {
2802 "multiple": true,
2803 "required": false,
2804 "types": [
2805 {
2806 "type": "match_arm",
2807 "named": true
2808 }
2809 ]
2810 }
2811 },
2812 {
2813 "type": "match_expression",
2814 "named": true,
2815 "fields": {
2816 "body": {
2817 "multiple": false,
2818 "required": true,
2819 "types": [
2820 {
2821 "type": "match_block",
2822 "named": true
2823 }
2824 ]
2825 },
2826 "value": {
2827 "multiple": false,
2828 "required": true,
2829 "types": [
2830 {
2831 "type": "_expression",
2832 "named": true
2833 }
2834 ]
2835 }
2836 }
2837 },
2838 {
2839 "type": "match_pattern",
2840 "named": true,
2841 "fields": {
2842 "condition": {
2843 "multiple": false,
2844 "required": false,
2845 "types": [
2846 {
2847 "type": "_expression",
2848 "named": true
2849 },
2850 {
2851 "type": "let_chain",
2852 "named": true
2853 },
2854 {
2855 "type": "let_condition",
2856 "named": true
2857 }
2858 ]
2859 }
2860 },
2861 "children": {
2862 "multiple": false,
2863 "required": true,
2864 "types": [
2865 {
2866 "type": "_pattern",
2867 "named": true
2868 }
2869 ]
2870 }
2871 },
2872 {
2873 "type": "mod_item",
2874 "named": true,
2875 "fields": {
2876 "body": {
2877 "multiple": false,
2878 "required": false,
2879 "types": [
2880 {
2881 "type": "declaration_list",
2882 "named": true
2883 }
2884 ]
2885 },
2886 "name": {
2887 "multiple": false,
2888 "required": true,
2889 "types": [
2890 {
2891 "type": "identifier",
2892 "named": true
2893 }
2894 ]
2895 }
2896 },
2897 "children": {
2898 "multiple": false,
2899 "required": false,
2900 "types": [
2901 {
2902 "type": "visibility_modifier",
2903 "named": true
2904 }
2905 ]
2906 }
2907 },
2908 {
2909 "type": "mut_pattern",
2910 "named": true,
2911 "fields": {},
2912 "children": {
2913 "multiple": true,
2914 "required": true,
2915 "types": [
2916 {
2917 "type": "_pattern",
2918 "named": true
2919 },
2920 {
2921 "type": "mutable_specifier",
2922 "named": true
2923 }
2924 ]
2925 }
2926 },
2927 {
2928 "type": "negative_literal",
2929 "named": true,
2930 "fields": {},
2931 "children": {
2932 "multiple": false,
2933 "required": true,
2934 "types": [
2935 {
2936 "type": "float_literal",
2937 "named": true
2938 },
2939 {
2940 "type": "integer_literal",
2941 "named": true
2942 }
2943 ]
2944 }
2945 },
2946 {
2947 "type": "never_type",
2948 "named": true,
2949 "fields": {}
2950 },
2951 {
2952 "type": "optional_type_parameter",
2953 "named": true,
2954 "fields": {
2955 "default_type": {
2956 "multiple": false,
2957 "required": true,
2958 "types": [
2959 {
2960 "type": "_type",
2961 "named": true
2962 }
2963 ]
2964 },
2965 "name": {
2966 "multiple": false,
2967 "required": true,
2968 "types": [
2969 {
2970 "type": "constrained_type_parameter",
2971 "named": true
2972 },
2973 {
2974 "type": "type_identifier",
2975 "named": true
2976 }
2977 ]
2978 }
2979 }
2980 },
2981 {
2982 "type": "or_pattern",
2983 "named": true,
2984 "fields": {},
2985 "children": {
2986 "multiple": true,
2987 "required": true,
2988 "types": [
2989 {
2990 "type": "_pattern",
2991 "named": true
2992 }
2993 ]
2994 }
2995 },
2996 {
2997 "type": "ordered_field_declaration_list",
2998 "named": true,
2999 "fields": {
3000 "type": {
3001 "multiple": true,
3002 "required": false,
3003 "types": [
3004 {
3005 "type": "_type",
3006 "named": true
3007 }
3008 ]
3009 }
3010 },
3011 "children": {
3012 "multiple": true,
3013 "required": false,
3014 "types": [
3015 {
3016 "type": "attribute_item",
3017 "named": true
3018 },
3019 {
3020 "type": "visibility_modifier",
3021 "named": true
3022 }
3023 ]
3024 }
3025 },
3026 {
3027 "type": "parameter",
3028 "named": true,
3029 "fields": {
3030 "pattern": {
3031 "multiple": false,
3032 "required": true,
3033 "types": [
3034 {
3035 "type": "_pattern",
3036 "named": true
3037 },
3038 {
3039 "type": "self",
3040 "named": true
3041 }
3042 ]
3043 },
3044 "type": {
3045 "multiple": false,
3046 "required": true,
3047 "types": [
3048 {
3049 "type": "_type",
3050 "named": true
3051 }
3052 ]
3053 }
3054 },
3055 "children": {
3056 "multiple": false,
3057 "required": false,
3058 "types": [
3059 {
3060 "type": "mutable_specifier",
3061 "named": true
3062 }
3063 ]
3064 }
3065 },
3066 {
3067 "type": "parameters",
3068 "named": true,
3069 "fields": {},
3070 "children": {
3071 "multiple": true,
3072 "required": false,
3073 "types": [
3074 {
3075 "type": "_type",
3076 "named": true
3077 },
3078 {
3079 "type": "attribute_item",
3080 "named": true
3081 },
3082 {
3083 "type": "parameter",
3084 "named": true
3085 },
3086 {
3087 "type": "self_parameter",
3088 "named": true
3089 },
3090 {
3091 "type": "variadic_parameter",
3092 "named": true
3093 }
3094 ]
3095 }
3096 },
3097 {
3098 "type": "parenthesized_expression",
3099 "named": true,
3100 "fields": {},
3101 "children": {
3102 "multiple": false,
3103 "required": true,
3104 "types": [
3105 {
3106 "type": "_expression",
3107 "named": true
3108 }
3109 ]
3110 }
3111 },
3112 {
3113 "type": "pointer_type",
3114 "named": true,
3115 "fields": {
3116 "type": {
3117 "multiple": false,
3118 "required": true,
3119 "types": [
3120 {
3121 "type": "_type",
3122 "named": true
3123 }
3124 ]
3125 }
3126 },
3127 "children": {
3128 "multiple": false,
3129 "required": false,
3130 "types": [
3131 {
3132 "type": "mutable_specifier",
3133 "named": true
3134 }
3135 ]
3136 }
3137 },
3138 {
3139 "type": "qualified_type",
3140 "named": true,
3141 "fields": {
3142 "alias": {
3143 "multiple": false,
3144 "required": true,
3145 "types": [
3146 {
3147 "type": "_type",
3148 "named": true
3149 }
3150 ]
3151 },
3152 "type": {
3153 "multiple": false,
3154 "required": true,
3155 "types": [
3156 {
3157 "type": "_type",
3158 "named": true
3159 }
3160 ]
3161 }
3162 }
3163 },
3164 {
3165 "type": "range_expression",
3166 "named": true,
3167 "fields": {},
3168 "children": {
3169 "multiple": true,
3170 "required": false,
3171 "types": [
3172 {
3173 "type": "_expression",
3174 "named": true
3175 }
3176 ]
3177 }
3178 },
3179 {
3180 "type": "range_pattern",
3181 "named": true,
3182 "fields": {},
3183 "children": {
3184 "multiple": true,
3185 "required": true,
3186 "types": [
3187 {
3188 "type": "_literal_pattern",
3189 "named": true
3190 },
3191 {
3192 "type": "crate",
3193 "named": true
3194 },
3195 {
3196 "type": "identifier",
3197 "named": true
3198 },
3199 {
3200 "type": "metavariable",
3201 "named": true
3202 },
3203 {
3204 "type": "scoped_identifier",
3205 "named": true
3206 },
3207 {
3208 "type": "self",
3209 "named": true
3210 },
3211 {
3212 "type": "super",
3213 "named": true
3214 }
3215 ]
3216 }
3217 },
3218 {
3219 "type": "raw_string_literal",
3220 "named": true,
3221 "fields": {},
3222 "children": {
3223 "multiple": false,
3224 "required": true,
3225 "types": [
3226 {
3227 "type": "string_content",
3228 "named": true
3229 }
3230 ]
3231 }
3232 },
3233 {
3234 "type": "ref_pattern",
3235 "named": true,
3236 "fields": {},
3237 "children": {
3238 "multiple": false,
3239 "required": true,
3240 "types": [
3241 {
3242 "type": "_pattern",
3243 "named": true
3244 }
3245 ]
3246 }
3247 },
3248 {
3249 "type": "reference_expression",
3250 "named": true,
3251 "fields": {
3252 "value": {
3253 "multiple": false,
3254 "required": true,
3255 "types": [
3256 {
3257 "type": "_expression",
3258 "named": true
3259 }
3260 ]
3261 }
3262 },
3263 "children": {
3264 "multiple": false,
3265 "required": false,
3266 "types": [
3267 {
3268 "type": "mutable_specifier",
3269 "named": true
3270 }
3271 ]
3272 }
3273 },
3274 {
3275 "type": "reference_pattern",
3276 "named": true,
3277 "fields": {},
3278 "children": {
3279 "multiple": true,
3280 "required": true,
3281 "types": [
3282 {
3283 "type": "_pattern",
3284 "named": true
3285 },
3286 {
3287 "type": "mutable_specifier",
3288 "named": true
3289 }
3290 ]
3291 }
3292 },
3293 {
3294 "type": "reference_type",
3295 "named": true,
3296 "fields": {
3297 "type": {
3298 "multiple": false,
3299 "required": true,
3300 "types": [
3301 {
3302 "type": "_type",
3303 "named": true
3304 }
3305 ]
3306 }
3307 },
3308 "children": {
3309 "multiple": true,
3310 "required": false,
3311 "types": [
3312 {
3313 "type": "lifetime",
3314 "named": true
3315 },
3316 {
3317 "type": "mutable_specifier",
3318 "named": true
3319 }
3320 ]
3321 }
3322 },
3323 {
3324 "type": "remaining_field_pattern",
3325 "named": true,
3326 "fields": {}
3327 },
3328 {
3329 "type": "removed_trait_bound",
3330 "named": true,
3331 "fields": {},
3332 "children": {
3333 "multiple": false,
3334 "required": true,
3335 "types": [
3336 {
3337 "type": "_type",
3338 "named": true
3339 }
3340 ]
3341 }
3342 },
3343 {
3344 "type": "return_expression",
3345 "named": true,
3346 "fields": {},
3347 "children": {
3348 "multiple": false,
3349 "required": false,
3350 "types": [
3351 {
3352 "type": "_expression",
3353 "named": true
3354 }
3355 ]
3356 }
3357 },
3358 {
3359 "type": "scoped_identifier",
3360 "named": true,
3361 "fields": {
3362 "name": {
3363 "multiple": false,
3364 "required": true,
3365 "types": [
3366 {
3367 "type": "identifier",
3368 "named": true
3369 },
3370 {
3371 "type": "super",
3372 "named": true
3373 }
3374 ]
3375 },
3376 "path": {
3377 "multiple": false,
3378 "required": false,
3379 "types": [
3380 {
3381 "type": "bracketed_type",
3382 "named": true
3383 },
3384 {
3385 "type": "crate",
3386 "named": true
3387 },
3388 {
3389 "type": "generic_type",
3390 "named": true
3391 },
3392 {
3393 "type": "identifier",
3394 "named": true
3395 },
3396 {
3397 "type": "metavariable",
3398 "named": true
3399 },
3400 {
3401 "type": "scoped_identifier",
3402 "named": true
3403 },
3404 {
3405 "type": "self",
3406 "named": true
3407 },
3408 {
3409 "type": "super",
3410 "named": true
3411 }
3412 ]
3413 }
3414 }
3415 },
3416 {
3417 "type": "scoped_type_identifier",
3418 "named": true,
3419 "fields": {
3420 "name": {
3421 "multiple": false,
3422 "required": true,
3423 "types": [
3424 {
3425 "type": "type_identifier",
3426 "named": true
3427 }
3428 ]
3429 },
3430 "path": {
3431 "multiple": false,
3432 "required": false,
3433 "types": [
3434 {
3435 "type": "bracketed_type",
3436 "named": true
3437 },
3438 {
3439 "type": "crate",
3440 "named": true
3441 },
3442 {
3443 "type": "generic_type",
3444 "named": true
3445 },
3446 {
3447 "type": "identifier",
3448 "named": true
3449 },
3450 {
3451 "type": "metavariable",
3452 "named": true
3453 },
3454 {
3455 "type": "scoped_identifier",
3456 "named": true
3457 },
3458 {
3459 "type": "self",
3460 "named": true
3461 },
3462 {
3463 "type": "super",
3464 "named": true
3465 }
3466 ]
3467 }
3468 }
3469 },
3470 {
3471 "type": "scoped_use_list",
3472 "named": true,
3473 "fields": {
3474 "list": {
3475 "multiple": false,
3476 "required": true,
3477 "types": [
3478 {
3479 "type": "use_list",
3480 "named": true
3481 }
3482 ]
3483 },
3484 "path": {
3485 "multiple": false,
3486 "required": false,
3487 "types": [
3488 {
3489 "type": "crate",
3490 "named": true
3491 },
3492 {
3493 "type": "identifier",
3494 "named": true
3495 },
3496 {
3497 "type": "metavariable",
3498 "named": true
3499 },
3500 {
3501 "type": "scoped_identifier",
3502 "named": true
3503 },
3504 {
3505 "type": "self",
3506 "named": true
3507 },
3508 {
3509 "type": "super",
3510 "named": true
3511 }
3512 ]
3513 }
3514 }
3515 },
3516 {
3517 "type": "self_parameter",
3518 "named": true,
3519 "fields": {},
3520 "children": {
3521 "multiple": true,
3522 "required": true,
3523 "types": [
3524 {
3525 "type": "lifetime",
3526 "named": true
3527 },
3528 {
3529 "type": "mutable_specifier",
3530 "named": true
3531 },
3532 {
3533 "type": "self",
3534 "named": true
3535 }
3536 ]
3537 }
3538 },
3539 {
3540 "type": "shorthand_field_initializer",
3541 "named": true,
3542 "fields": {},
3543 "children": {
3544 "multiple": true,
3545 "required": true,
3546 "types": [
3547 {
3548 "type": "attribute_item",
3549 "named": true
3550 },
3551 {
3552 "type": "identifier",
3553 "named": true
3554 }
3555 ]
3556 }
3557 },
3558 {
3559 "type": "slice_pattern",
3560 "named": true,
3561 "fields": {},
3562 "children": {
3563 "multiple": true,
3564 "required": false,
3565 "types": [
3566 {
3567 "type": "_pattern",
3568 "named": true
3569 }
3570 ]
3571 }
3572 },
3573 {
3574 "type": "source_file",
3575 "named": true,
3576 "fields": {},
3577 "children": {
3578 "multiple": true,
3579 "required": false,
3580 "types": [
3581 {
3582 "type": "_declaration_statement",
3583 "named": true
3584 },
3585 {
3586 "type": "expression_statement",
3587 "named": true
3588 },
3589 {
3590 "type": "shebang",
3591 "named": true
3592 }
3593 ]
3594 }
3595 },
3596 {
3597 "type": "static_item",
3598 "named": true,
3599 "fields": {
3600 "name": {
3601 "multiple": false,
3602 "required": true,
3603 "types": [
3604 {
3605 "type": "identifier",
3606 "named": true
3607 }
3608 ]
3609 },
3610 "type": {
3611 "multiple": false,
3612 "required": true,
3613 "types": [
3614 {
3615 "type": "_type",
3616 "named": true
3617 }
3618 ]
3619 },
3620 "value": {
3621 "multiple": false,
3622 "required": false,
3623 "types": [
3624 {
3625 "type": "_expression",
3626 "named": true
3627 }
3628 ]
3629 }
3630 },
3631 "children": {
3632 "multiple": true,
3633 "required": false,
3634 "types": [
3635 {
3636 "type": "mutable_specifier",
3637 "named": true
3638 },
3639 {
3640 "type": "visibility_modifier",
3641 "named": true
3642 }
3643 ]
3644 }
3645 },
3646 {
3647 "type": "string_literal",
3648 "named": true,
3649 "fields": {},
3650 "children": {
3651 "multiple": true,
3652 "required": false,
3653 "types": [
3654 {
3655 "type": "escape_sequence",
3656 "named": true
3657 },
3658 {
3659 "type": "string_content",
3660 "named": true
3661 }
3662 ]
3663 }
3664 },
3665 {
3666 "type": "struct_expression",
3667 "named": true,
3668 "fields": {
3669 "body": {
3670 "multiple": false,
3671 "required": true,
3672 "types": [
3673 {
3674 "type": "field_initializer_list",
3675 "named": true
3676 }
3677 ]
3678 },
3679 "name": {
3680 "multiple": false,
3681 "required": true,
3682 "types": [
3683 {
3684 "type": "generic_type_with_turbofish",
3685 "named": true
3686 },
3687 {
3688 "type": "scoped_type_identifier",
3689 "named": true
3690 },
3691 {
3692 "type": "type_identifier",
3693 "named": true
3694 }
3695 ]
3696 }
3697 }
3698 },
3699 {
3700 "type": "struct_item",
3701 "named": true,
3702 "fields": {
3703 "body": {
3704 "multiple": false,
3705 "required": false,
3706 "types": [
3707 {
3708 "type": "field_declaration_list",
3709 "named": true
3710 },
3711 {
3712 "type": "ordered_field_declaration_list",
3713 "named": true
3714 }
3715 ]
3716 },
3717 "name": {
3718 "multiple": false,
3719 "required": true,
3720 "types": [
3721 {
3722 "type": "type_identifier",
3723 "named": true
3724 }
3725 ]
3726 },
3727 "type_parameters": {
3728 "multiple": false,
3729 "required": false,
3730 "types": [
3731 {
3732 "type": "type_parameters",
3733 "named": true
3734 }
3735 ]
3736 }
3737 },
3738 "children": {
3739 "multiple": true,
3740 "required": false,
3741 "types": [
3742 {
3743 "type": "visibility_modifier",
3744 "named": true
3745 },
3746 {
3747 "type": "where_clause",
3748 "named": true
3749 }
3750 ]
3751 }
3752 },
3753 {
3754 "type": "struct_pattern",
3755 "named": true,
3756 "fields": {
3757 "type": {
3758 "multiple": false,
3759 "required": true,
3760 "types": [
3761 {
3762 "type": "scoped_type_identifier",
3763 "named": true
3764 },
3765 {
3766 "type": "type_identifier",
3767 "named": true
3768 }
3769 ]
3770 }
3771 },
3772 "children": {
3773 "multiple": true,
3774 "required": false,
3775 "types": [
3776 {
3777 "type": "field_pattern",
3778 "named": true
3779 },
3780 {
3781 "type": "remaining_field_pattern",
3782 "named": true
3783 }
3784 ]
3785 }
3786 },
3787 {
3788 "type": "token_binding_pattern",
3789 "named": true,
3790 "fields": {
3791 "name": {
3792 "multiple": false,
3793 "required": true,
3794 "types": [
3795 {
3796 "type": "metavariable",
3797 "named": true
3798 }
3799 ]
3800 },
3801 "type": {
3802 "multiple": false,
3803 "required": true,
3804 "types": [
3805 {
3806 "type": "fragment_specifier",
3807 "named": true
3808 }
3809 ]
3810 }
3811 }
3812 },
3813 {
3814 "type": "token_repetition",
3815 "named": true,
3816 "fields": {},
3817 "children": {
3818 "multiple": true,
3819 "required": false,
3820 "types": [
3821 {
3822 "type": "_literal",
3823 "named": true
3824 },
3825 {
3826 "type": "crate",
3827 "named": true
3828 },
3829 {
3830 "type": "identifier",
3831 "named": true
3832 },
3833 {
3834 "type": "metavariable",
3835 "named": true
3836 },
3837 {
3838 "type": "mutable_specifier",
3839 "named": true
3840 },
3841 {
3842 "type": "primitive_type",
3843 "named": true
3844 },
3845 {
3846 "type": "self",
3847 "named": true
3848 },
3849 {
3850 "type": "super",
3851 "named": true
3852 },
3853 {
3854 "type": "token_repetition",
3855 "named": true
3856 },
3857 {
3858 "type": "token_tree",
3859 "named": true
3860 }
3861 ]
3862 }
3863 },
3864 {
3865 "type": "token_repetition_pattern",
3866 "named": true,
3867 "fields": {},
3868 "children": {
3869 "multiple": true,
3870 "required": false,
3871 "types": [
3872 {
3873 "type": "_literal",
3874 "named": true
3875 },
3876 {
3877 "type": "crate",
3878 "named": true
3879 },
3880 {
3881 "type": "identifier",
3882 "named": true
3883 },
3884 {
3885 "type": "metavariable",
3886 "named": true
3887 },
3888 {
3889 "type": "mutable_specifier",
3890 "named": true
3891 },
3892 {
3893 "type": "primitive_type",
3894 "named": true
3895 },
3896 {
3897 "type": "self",
3898 "named": true
3899 },
3900 {
3901 "type": "super",
3902 "named": true
3903 },
3904 {
3905 "type": "token_binding_pattern",
3906 "named": true
3907 },
3908 {
3909 "type": "token_repetition_pattern",
3910 "named": true
3911 },
3912 {
3913 "type": "token_tree_pattern",
3914 "named": true
3915 }
3916 ]
3917 }
3918 },
3919 {
3920 "type": "token_tree",
3921 "named": true,
3922 "fields": {},
3923 "children": {
3924 "multiple": true,
3925 "required": false,
3926 "types": [
3927 {
3928 "type": "_literal",
3929 "named": true
3930 },
3931 {
3932 "type": "crate",
3933 "named": true
3934 },
3935 {
3936 "type": "identifier",
3937 "named": true
3938 },
3939 {
3940 "type": "metavariable",
3941 "named": true
3942 },
3943 {
3944 "type": "mutable_specifier",
3945 "named": true
3946 },
3947 {
3948 "type": "primitive_type",
3949 "named": true
3950 },
3951 {
3952 "type": "self",
3953 "named": true
3954 },
3955 {
3956 "type": "super",
3957 "named": true
3958 },
3959 {
3960 "type": "token_repetition",
3961 "named": true
3962 },
3963 {
3964 "type": "token_tree",
3965 "named": true
3966 }
3967 ]
3968 }
3969 },
3970 {
3971 "type": "token_tree_pattern",
3972 "named": true,
3973 "fields": {},
3974 "children": {
3975 "multiple": true,
3976 "required": false,
3977 "types": [
3978 {
3979 "type": "_literal",
3980 "named": true
3981 },
3982 {
3983 "type": "crate",
3984 "named": true
3985 },
3986 {
3987 "type": "identifier",
3988 "named": true
3989 },
3990 {
3991 "type": "metavariable",
3992 "named": true
3993 },
3994 {
3995 "type": "mutable_specifier",
3996 "named": true
3997 },
3998 {
3999 "type": "primitive_type",
4000 "named": true
4001 },
4002 {
4003 "type": "self",
4004 "named": true
4005 },
4006 {
4007 "type": "super",
4008 "named": true
4009 },
4010 {
4011 "type": "token_binding_pattern",
4012 "named": true
4013 },
4014 {
4015 "type": "token_repetition_pattern",
4016 "named": true
4017 },
4018 {
4019 "type": "token_tree_pattern",
4020 "named": true
4021 }
4022 ]
4023 }
4024 },
4025 {
4026 "type": "trait_bounds",
4027 "named": true,
4028 "fields": {},
4029 "children": {
4030 "multiple": true,
4031 "required": true,
4032 "types": [
4033 {
4034 "type": "_type",
4035 "named": true
4036 },
4037 {
4038 "type": "higher_ranked_trait_bound",
4039 "named": true
4040 },
4041 {
4042 "type": "lifetime",
4043 "named": true
4044 }
4045 ]
4046 }
4047 },
4048 {
4049 "type": "trait_item",
4050 "named": true,
4051 "fields": {
4052 "body": {
4053 "multiple": false,
4054 "required": true,
4055 "types": [
4056 {
4057 "type": "declaration_list",
4058 "named": true
4059 }
4060 ]
4061 },
4062 "bounds": {
4063 "multiple": false,
4064 "required": false,
4065 "types": [
4066 {
4067 "type": "trait_bounds",
4068 "named": true
4069 }
4070 ]
4071 },
4072 "name": {
4073 "multiple": false,
4074 "required": true,
4075 "types": [
4076 {
4077 "type": "type_identifier",
4078 "named": true
4079 }
4080 ]
4081 },
4082 "type_parameters": {
4083 "multiple": false,
4084 "required": false,
4085 "types": [
4086 {
4087 "type": "type_parameters",
4088 "named": true
4089 }
4090 ]
4091 }
4092 },
4093 "children": {
4094 "multiple": true,
4095 "required": false,
4096 "types": [
4097 {
4098 "type": "visibility_modifier",
4099 "named": true
4100 },
4101 {
4102 "type": "where_clause",
4103 "named": true
4104 }
4105 ]
4106 }
4107 },
4108 {
4109 "type": "try_block",
4110 "named": true,
4111 "fields": {},
4112 "children": {
4113 "multiple": false,
4114 "required": true,
4115 "types": [
4116 {
4117 "type": "block",
4118 "named": true
4119 }
4120 ]
4121 }
4122 },
4123 {
4124 "type": "try_expression",
4125 "named": true,
4126 "fields": {},
4127 "children": {
4128 "multiple": false,
4129 "required": true,
4130 "types": [
4131 {
4132 "type": "_expression",
4133 "named": true
4134 }
4135 ]
4136 }
4137 },
4138 {
4139 "type": "tuple_expression",
4140 "named": true,
4141 "fields": {},
4142 "children": {
4143 "multiple": true,
4144 "required": true,
4145 "types": [
4146 {
4147 "type": "_expression",
4148 "named": true
4149 },
4150 {
4151 "type": "attribute_item",
4152 "named": true
4153 }
4154 ]
4155 }
4156 },
4157 {
4158 "type": "tuple_pattern",
4159 "named": true,
4160 "fields": {},
4161 "children": {
4162 "multiple": true,
4163 "required": false,
4164 "types": [
4165 {
4166 "type": "_pattern",
4167 "named": true
4168 },
4169 {
4170 "type": "closure_expression",
4171 "named": true
4172 }
4173 ]
4174 }
4175 },
4176 {
4177 "type": "tuple_struct_pattern",
4178 "named": true,
4179 "fields": {
4180 "type": {
4181 "multiple": false,
4182 "required": true,
4183 "types": [
4184 {
4185 "type": "generic_type",
4186 "named": true
4187 },
4188 {
4189 "type": "identifier",
4190 "named": true
4191 },
4192 {
4193 "type": "scoped_identifier",
4194 "named": true
4195 }
4196 ]
4197 }
4198 },
4199 "children": {
4200 "multiple": true,
4201 "required": false,
4202 "types": [
4203 {
4204 "type": "_pattern",
4205 "named": true
4206 }
4207 ]
4208 }
4209 },
4210 {
4211 "type": "tuple_type",
4212 "named": true,
4213 "fields": {},
4214 "children": {
4215 "multiple": true,
4216 "required": true,
4217 "types": [
4218 {
4219 "type": "_type",
4220 "named": true
4221 }
4222 ]
4223 }
4224 },
4225 {
4226 "type": "type_arguments",
4227 "named": true,
4228 "fields": {},
4229 "children": {
4230 "multiple": true,
4231 "required": true,
4232 "types": [
4233 {
4234 "type": "_literal",
4235 "named": true
4236 },
4237 {
4238 "type": "_type",
4239 "named": true
4240 },
4241 {
4242 "type": "block",
4243 "named": true
4244 },
4245 {
4246 "type": "lifetime",
4247 "named": true
4248 },
4249 {
4250 "type": "trait_bounds",
4251 "named": true
4252 },
4253 {
4254 "type": "type_binding",
4255 "named": true
4256 }
4257 ]
4258 }
4259 },
4260 {
4261 "type": "type_binding",
4262 "named": true,
4263 "fields": {
4264 "name": {
4265 "multiple": false,
4266 "required": true,
4267 "types": [
4268 {
4269 "type": "type_identifier",
4270 "named": true
4271 }
4272 ]
4273 },
4274 "type": {
4275 "multiple": false,
4276 "required": true,
4277 "types": [
4278 {
4279 "type": "_type",
4280 "named": true
4281 }
4282 ]
4283 },
4284 "type_arguments": {
4285 "multiple": false,
4286 "required": false,
4287 "types": [
4288 {
4289 "type": "type_arguments",
4290 "named": true
4291 }
4292 ]
4293 }
4294 }
4295 },
4296 {
4297 "type": "type_cast_expression",
4298 "named": true,
4299 "fields": {
4300 "type": {
4301 "multiple": false,
4302 "required": true,
4303 "types": [
4304 {
4305 "type": "_type",
4306 "named": true
4307 }
4308 ]
4309 },
4310 "value": {
4311 "multiple": false,
4312 "required": true,
4313 "types": [
4314 {
4315 "type": "_expression",
4316 "named": true
4317 }
4318 ]
4319 }
4320 }
4321 },
4322 {
4323 "type": "type_item",
4324 "named": true,
4325 "fields": {
4326 "name": {
4327 "multiple": false,
4328 "required": true,
4329 "types": [
4330 {
4331 "type": "type_identifier",
4332 "named": true
4333 }
4334 ]
4335 },
4336 "type": {
4337 "multiple": false,
4338 "required": true,
4339 "types": [
4340 {
4341 "type": "_type",
4342 "named": true
4343 }
4344 ]
4345 },
4346 "type_parameters": {
4347 "multiple": false,
4348 "required": false,
4349 "types": [
4350 {
4351 "type": "type_parameters",
4352 "named": true
4353 }
4354 ]
4355 }
4356 },
4357 "children": {
4358 "multiple": true,
4359 "required": false,
4360 "types": [
4361 {
4362 "type": "visibility_modifier",
4363 "named": true
4364 },
4365 {
4366 "type": "where_clause",
4367 "named": true
4368 }
4369 ]
4370 }
4371 },
4372 {
4373 "type": "type_parameters",
4374 "named": true,
4375 "fields": {},
4376 "children": {
4377 "multiple": true,
4378 "required": true,
4379 "types": [
4380 {
4381 "type": "attribute_item",
4382 "named": true
4383 },
4384 {
4385 "type": "const_parameter",
4386 "named": true
4387 },
4388 {
4389 "type": "constrained_type_parameter",
4390 "named": true
4391 },
4392 {
4393 "type": "lifetime",
4394 "named": true
4395 },
4396 {
4397 "type": "metavariable",
4398 "named": true
4399 },
4400 {
4401 "type": "optional_type_parameter",
4402 "named": true
4403 },
4404 {
4405 "type": "type_identifier",
4406 "named": true
4407 }
4408 ]
4409 }
4410 },
4411 {
4412 "type": "unary_expression",
4413 "named": true,
4414 "fields": {},
4415 "children": {
4416 "multiple": false,
4417 "required": true,
4418 "types": [
4419 {
4420 "type": "_expression",
4421 "named": true
4422 }
4423 ]
4424 }
4425 },
4426 {
4427 "type": "union_item",
4428 "named": true,
4429 "fields": {
4430 "body": {
4431 "multiple": false,
4432 "required": true,
4433 "types": [
4434 {
4435 "type": "field_declaration_list",
4436 "named": true
4437 }
4438 ]
4439 },
4440 "name": {
4441 "multiple": false,
4442 "required": true,
4443 "types": [
4444 {
4445 "type": "type_identifier",
4446 "named": true
4447 }
4448 ]
4449 },
4450 "type_parameters": {
4451 "multiple": false,
4452 "required": false,
4453 "types": [
4454 {
4455 "type": "type_parameters",
4456 "named": true
4457 }
4458 ]
4459 }
4460 },
4461 "children": {
4462 "multiple": true,
4463 "required": false,
4464 "types": [
4465 {
4466 "type": "visibility_modifier",
4467 "named": true
4468 },
4469 {
4470 "type": "where_clause",
4471 "named": true
4472 }
4473 ]
4474 }
4475 },
4476 {
4477 "type": "unit_expression",
4478 "named": true,
4479 "fields": {}
4480 },
4481 {
4482 "type": "unit_type",
4483 "named": true,
4484 "fields": {}
4485 },
4486 {
4487 "type": "unsafe_block",
4488 "named": true,
4489 "fields": {},
4490 "children": {
4491 "multiple": false,
4492 "required": true,
4493 "types": [
4494 {
4495 "type": "block",
4496 "named": true
4497 }
4498 ]
4499 }
4500 },
4501 {
4502 "type": "use_as_clause",
4503 "named": true,
4504 "fields": {
4505 "alias": {
4506 "multiple": false,
4507 "required": true,
4508 "types": [
4509 {
4510 "type": "identifier",
4511 "named": true
4512 }
4513 ]
4514 },
4515 "path": {
4516 "multiple": false,
4517 "required": true,
4518 "types": [
4519 {
4520 "type": "crate",
4521 "named": true
4522 },
4523 {
4524 "type": "identifier",
4525 "named": true
4526 },
4527 {
4528 "type": "metavariable",
4529 "named": true
4530 },
4531 {
4532 "type": "scoped_identifier",
4533 "named": true
4534 },
4535 {
4536 "type": "self",
4537 "named": true
4538 },
4539 {
4540 "type": "super",
4541 "named": true
4542 }
4543 ]
4544 }
4545 }
4546 },
4547 {
4548 "type": "use_declaration",
4549 "named": true,
4550 "fields": {
4551 "argument": {
4552 "multiple": false,
4553 "required": true,
4554 "types": [
4555 {
4556 "type": "crate",
4557 "named": true
4558 },
4559 {
4560 "type": "identifier",
4561 "named": true
4562 },
4563 {
4564 "type": "metavariable",
4565 "named": true
4566 },
4567 {
4568 "type": "scoped_identifier",
4569 "named": true
4570 },
4571 {
4572 "type": "scoped_use_list",
4573 "named": true
4574 },
4575 {
4576 "type": "self",
4577 "named": true
4578 },
4579 {
4580 "type": "super",
4581 "named": true
4582 },
4583 {
4584 "type": "use_as_clause",
4585 "named": true
4586 },
4587 {
4588 "type": "use_list",
4589 "named": true
4590 },
4591 {
4592 "type": "use_wildcard",
4593 "named": true
4594 }
4595 ]
4596 }
4597 },
4598 "children": {
4599 "multiple": false,
4600 "required": false,
4601 "types": [
4602 {
4603 "type": "visibility_modifier",
4604 "named": true
4605 }
4606 ]
4607 }
4608 },
4609 {
4610 "type": "use_list",
4611 "named": true,
4612 "fields": {},
4613 "children": {
4614 "multiple": true,
4615 "required": false,
4616 "types": [
4617 {
4618 "type": "crate",
4619 "named": true
4620 },
4621 {
4622 "type": "identifier",
4623 "named": true
4624 },
4625 {
4626 "type": "metavariable",
4627 "named": true
4628 },
4629 {
4630 "type": "scoped_identifier",
4631 "named": true
4632 },
4633 {
4634 "type": "scoped_use_list",
4635 "named": true
4636 },
4637 {
4638 "type": "self",
4639 "named": true
4640 },
4641 {
4642 "type": "super",
4643 "named": true
4644 },
4645 {
4646 "type": "use_as_clause",
4647 "named": true
4648 },
4649 {
4650 "type": "use_list",
4651 "named": true
4652 },
4653 {
4654 "type": "use_wildcard",
4655 "named": true
4656 }
4657 ]
4658 }
4659 },
4660 {
4661 "type": "use_wildcard",
4662 "named": true,
4663 "fields": {},
4664 "children": {
4665 "multiple": false,
4666 "required": false,
4667 "types": [
4668 {
4669 "type": "crate",
4670 "named": true
4671 },
4672 {
4673 "type": "identifier",
4674 "named": true
4675 },
4676 {
4677 "type": "metavariable",
4678 "named": true
4679 },
4680 {
4681 "type": "scoped_identifier",
4682 "named": true
4683 },
4684 {
4685 "type": "self",
4686 "named": true
4687 },
4688 {
4689 "type": "super",
4690 "named": true
4691 }
4692 ]
4693 }
4694 },
4695 {
4696 "type": "variadic_parameter",
4697 "named": true,
4698 "fields": {
4699 "pattern": {
4700 "multiple": false,
4701 "required": false,
4702 "types": [
4703 {
4704 "type": "_pattern",
4705 "named": true
4706 }
4707 ]
4708 }
4709 },
4710 "children": {
4711 "multiple": false,
4712 "required": false,
4713 "types": [
4714 {
4715 "type": "mutable_specifier",
4716 "named": true
4717 }
4718 ]
4719 }
4720 },
4721 {
4722 "type": "visibility_modifier",
4723 "named": true,
4724 "fields": {},
4725 "children": {
4726 "multiple": false,
4727 "required": false,
4728 "types": [
4729 {
4730 "type": "crate",
4731 "named": true
4732 },
4733 {
4734 "type": "identifier",
4735 "named": true
4736 },
4737 {
4738 "type": "metavariable",
4739 "named": true
4740 },
4741 {
4742 "type": "scoped_identifier",
4743 "named": true
4744 },
4745 {
4746 "type": "self",
4747 "named": true
4748 },
4749 {
4750 "type": "super",
4751 "named": true
4752 }
4753 ]
4754 }
4755 },
4756 {
4757 "type": "where_clause",
4758 "named": true,
4759 "fields": {},
4760 "children": {
4761 "multiple": true,
4762 "required": true,
4763 "types": [
4764 {
4765 "type": "where_predicate",
4766 "named": true
4767 }
4768 ]
4769 }
4770 },
4771 {
4772 "type": "where_predicate",
4773 "named": true,
4774 "fields": {
4775 "bounds": {
4776 "multiple": false,
4777 "required": true,
4778 "types": [
4779 {
4780 "type": "trait_bounds",
4781 "named": true
4782 }
4783 ]
4784 },
4785 "left": {
4786 "multiple": false,
4787 "required": true,
4788 "types": [
4789 {
4790 "type": "array_type",
4791 "named": true
4792 },
4793 {
4794 "type": "generic_type",
4795 "named": true
4796 },
4797 {
4798 "type": "higher_ranked_trait_bound",
4799 "named": true
4800 },
4801 {
4802 "type": "lifetime",
4803 "named": true
4804 },
4805 {
4806 "type": "pointer_type",
4807 "named": true
4808 },
4809 {
4810 "type": "primitive_type",
4811 "named": true
4812 },
4813 {
4814 "type": "reference_type",
4815 "named": true
4816 },
4817 {
4818 "type": "scoped_type_identifier",
4819 "named": true
4820 },
4821 {
4822 "type": "tuple_type",
4823 "named": true
4824 },
4825 {
4826 "type": "type_identifier",
4827 "named": true
4828 }
4829 ]
4830 }
4831 }
4832 },
4833 {
4834 "type": "while_expression",
4835 "named": true,
4836 "fields": {
4837 "body": {
4838 "multiple": false,
4839 "required": true,
4840 "types": [
4841 {
4842 "type": "block",
4843 "named": true
4844 }
4845 ]
4846 },
4847 "condition": {
4848 "multiple": false,
4849 "required": true,
4850 "types": [
4851 {
4852 "type": "_expression",
4853 "named": true
4854 },
4855 {
4856 "type": "let_chain",
4857 "named": true
4858 },
4859 {
4860 "type": "let_condition",
4861 "named": true
4862 }
4863 ]
4864 }
4865 },
4866 "children": {
4867 "multiple": false,
4868 "required": false,
4869 "types": [
4870 {
4871 "type": "label",
4872 "named": true
4873 }
4874 ]
4875 }
4876 },
4877 {
4878 "type": "yield_expression",
4879 "named": true,
4880 "fields": {},
4881 "children": {
4882 "multiple": false,
4883 "required": false,
4884 "types": [
4885 {
4886 "type": "_expression",
4887 "named": true
4888 }
4889 ]
4890 }
4891 },
4892 {
4893 "type": "!",
4894 "named": false
4895 },
4896 {
4897 "type": "!=",
4898 "named": false
4899 },
4900 {
4901 "type": "\"",
4902 "named": false
4903 },
4904 {
4905 "type": "#",
4906 "named": false
4907 },
4908 {
4909 "type": "$",
4910 "named": false
4911 },
4912 {
4913 "type": "%",
4914 "named": false
4915 },
4916 {
4917 "type": "%=",
4918 "named": false
4919 },
4920 {
4921 "type": "&",
4922 "named": false
4923 },
4924 {
4925 "type": "&&",
4926 "named": false
4927 },
4928 {
4929 "type": "&=",
4930 "named": false
4931 },
4932 {
4933 "type": "'",
4934 "named": false
4935 },
4936 {
4937 "type": "(",
4938 "named": false
4939 },
4940 {
4941 "type": ")",
4942 "named": false
4943 },
4944 {
4945 "type": "*",
4946 "named": false
4947 },
4948 {
4949 "type": "*/",
4950 "named": false
4951 },
4952 {
4953 "type": "*=",
4954 "named": false
4955 },
4956 {
4957 "type": "+",
4958 "named": false
4959 },
4960 {
4961 "type": "+=",
4962 "named": false
4963 },
4964 {
4965 "type": ",",
4966 "named": false
4967 },
4968 {
4969 "type": "-",
4970 "named": false
4971 },
4972 {
4973 "type": "-=",
4974 "named": false
4975 },
4976 {
4977 "type": "->",
4978 "named": false
4979 },
4980 {
4981 "type": ".",
4982 "named": false
4983 },
4984 {
4985 "type": "..",
4986 "named": false
4987 },
4988 {
4989 "type": "...",
4990 "named": false
4991 },
4992 {
4993 "type": "..=",
4994 "named": false
4995 },
4996 {
4997 "type": "/",
4998 "named": false
4999 },
5000 {
5001 "type": "/*",
5002 "named": false
5003 },
5004 {
5005 "type": "//",
5006 "named": false
5007 },
5008 {
5009 "type": "/=",
5010 "named": false
5011 },
5012 {
5013 "type": ":",
5014 "named": false
5015 },
5016 {
5017 "type": "::",
5018 "named": false
5019 },
5020 {
5021 "type": ";",
5022 "named": false
5023 },
5024 {
5025 "type": "<",
5026 "named": false
5027 },
5028 {
5029 "type": "<<",
5030 "named": false
5031 },
5032 {
5033 "type": "<<=",
5034 "named": false
5035 },
5036 {
5037 "type": "<=",
5038 "named": false
5039 },
5040 {
5041 "type": "=",
5042 "named": false
5043 },
5044 {
5045 "type": "==",
5046 "named": false
5047 },
5048 {
5049 "type": "=>",
5050 "named": false
5051 },
5052 {
5053 "type": ">",
5054 "named": false
5055 },
5056 {
5057 "type": ">=",
5058 "named": false
5059 },
5060 {
5061 "type": ">>",
5062 "named": false
5063 },
5064 {
5065 "type": ">>=",
5066 "named": false
5067 },
5068 {
5069 "type": "?",
5070 "named": false
5071 },
5072 {
5073 "type": "@",
5074 "named": false
5075 },
5076 {
5077 "type": "[",
5078 "named": false
5079 },
5080 {
5081 "type": "]",
5082 "named": false
5083 },
5084 {
5085 "type": "^",
5086 "named": false
5087 },
5088 {
5089 "type": "^=",
5090 "named": false
5091 },
5092 {
5093 "type": "_",
5094 "named": false
5095 },
5096 {
5097 "type": "as",
5098 "named": false
5099 },
5100 {
5101 "type": "async",
5102 "named": false
5103 },
5104 {
5105 "type": "await",
5106 "named": false
5107 },
5108 {
5109 "type": "block",
5110 "named": false
5111 },
5112 {
5113 "type": "break",
5114 "named": false
5115 },
5116 {
5117 "type": "char_literal",
5118 "named": true
5119 },
5120 {
5121 "type": "const",
5122 "named": false
5123 },
5124 {
5125 "type": "continue",
5126 "named": false
5127 },
5128 {
5129 "type": "crate",
5130 "named": true
5131 },
5132 {
5133 "type": "default",
5134 "named": false
5135 },
5136 {
5137 "type": "doc_comment",
5138 "named": true
5139 },
5140 {
5141 "type": "dyn",
5142 "named": false
5143 },
5144 {
5145 "type": "else",
5146 "named": false
5147 },
5148 {
5149 "type": "enum",
5150 "named": false
5151 },
5152 {
5153 "type": "escape_sequence",
5154 "named": true
5155 },
5156 {
5157 "type": "expr",
5158 "named": false
5159 },
5160 {
5161 "type": "extern",
5162 "named": false
5163 },
5164 {
5165 "type": "false",
5166 "named": false
5167 },
5168 {
5169 "type": "field_identifier",
5170 "named": true
5171 },
5172 {
5173 "type": "float_literal",
5174 "named": true
5175 },
5176 {
5177 "type": "fn",
5178 "named": false
5179 },
5180 {
5181 "type": "for",
5182 "named": false
5183 },
5184 {
5185 "type": "ident",
5186 "named": false
5187 },
5188 {
5189 "type": "identifier",
5190 "named": true
5191 },
5192 {
5193 "type": "if",
5194 "named": false
5195 },
5196 {
5197 "type": "impl",
5198 "named": false
5199 },
5200 {
5201 "type": "in",
5202 "named": false
5203 },
5204 {
5205 "type": "inner_doc_comment_marker",
5206 "named": true
5207 },
5208 {
5209 "type": "integer_literal",
5210 "named": true
5211 },
5212 {
5213 "type": "item",
5214 "named": false
5215 },
5216 {
5217 "type": "let",
5218 "named": false
5219 },
5220 {
5221 "type": "lifetime",
5222 "named": false
5223 },
5224 {
5225 "type": "literal",
5226 "named": false
5227 },
5228 {
5229 "type": "loop",
5230 "named": false
5231 },
5232 {
5233 "type": "macro_rules!",
5234 "named": false
5235 },
5236 {
5237 "type": "match",
5238 "named": false
5239 },
5240 {
5241 "type": "meta",
5242 "named": false
5243 },
5244 {
5245 "type": "metavariable",
5246 "named": true
5247 },
5248 {
5249 "type": "mod",
5250 "named": false
5251 },
5252 {
5253 "type": "move",
5254 "named": false
5255 },
5256 {
5257 "type": "mutable_specifier",
5258 "named": true
5259 },
5260 {
5261 "type": "outer_doc_comment_marker",
5262 "named": true
5263 },
5264 {
5265 "type": "pat",
5266 "named": false
5267 },
5268 {
5269 "type": "path",
5270 "named": false
5271 },
5272 {
5273 "type": "primitive_type",
5274 "named": true
5275 },
5276 {
5277 "type": "pub",
5278 "named": false
5279 },
5280 {
5281 "type": "ref",
5282 "named": false
5283 },
5284 {
5285 "type": "return",
5286 "named": false
5287 },
5288 {
5289 "type": "self",
5290 "named": true
5291 },
5292 {
5293 "type": "shebang",
5294 "named": true
5295 },
5296 {
5297 "type": "shorthand_field_identifier",
5298 "named": true
5299 },
5300 {
5301 "type": "static",
5302 "named": false
5303 },
5304 {
5305 "type": "stmt",
5306 "named": false
5307 },
5308 {
5309 "type": "string_content",
5310 "named": true
5311 },
5312 {
5313 "type": "struct",
5314 "named": false
5315 },
5316 {
5317 "type": "super",
5318 "named": true
5319 },
5320 {
5321 "type": "trait",
5322 "named": false
5323 },
5324 {
5325 "type": "true",
5326 "named": false
5327 },
5328 {
5329 "type": "try",
5330 "named": false
5331 },
5332 {
5333 "type": "tt",
5334 "named": false
5335 },
5336 {
5337 "type": "ty",
5338 "named": false
5339 },
5340 {
5341 "type": "type",
5342 "named": false
5343 },
5344 {
5345 "type": "type_identifier",
5346 "named": true
5347 },
5348 {
5349 "type": "union",
5350 "named": false
5351 },
5352 {
5353 "type": "unsafe",
5354 "named": false
5355 },
5356 {
5357 "type": "use",
5358 "named": false
5359 },
5360 {
5361 "type": "vis",
5362 "named": false
5363 },
5364 {
5365 "type": "where",
5366 "named": false
5367 },
5368 {
5369 "type": "while",
5370 "named": false
5371 },
5372 {
5373 "type": "yield",
5374 "named": false
5375 },
5376 {
5377 "type": "{",
5378 "named": false
5379 },
5380 {
5381 "type": "|",
5382 "named": false
5383 },
5384 {
5385 "type": "|=",
5386 "named": false
5387 },
5388 {
5389 "type": "||",
5390 "named": false
5391 },
5392 {
5393 "type": "}",
5394 "named": false
5395 }
5396]