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