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]