1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "A", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 16, 14 "column": 7 15 }, 16 "end": { 17 "line": 16, 18 "column": 8 19 } 20 } 21 }, 22 "typeParameters": { 23 "type": "TSTypeParameterDeclaration", 24 "params": [ 25 { 26 "type": "TSTypeParameter", 27 "name": { 28 "type": "Identifier", 29 "name": "TA", 30 "decorators": [], 31 "loc": { 32 "start": { 33 "line": 16, 34 "column": 9 35 }, 36 "end": { 37 "line": 16, 38 "column": 11 39 } 40 } 41 }, 42 "loc": { 43 "start": { 44 "line": 16, 45 "column": 9 46 }, 47 "end": { 48 "line": 16, 49 "column": 12 50 } 51 } 52 } 53 ], 54 "loc": { 55 "start": { 56 "line": 16, 57 "column": 8 58 }, 59 "end": { 60 "line": 16, 61 "column": 12 62 } 63 } 64 }, 65 "superClass": { 66 "type": "ETSTypeReference", 67 "part": { 68 "type": "ETSTypeReferencePart", 69 "name": { 70 "type": "Identifier", 71 "name": "B", 72 "decorators": [], 73 "loc": { 74 "start": { 75 "line": 16, 76 "column": 21 77 }, 78 "end": { 79 "line": 16, 80 "column": 22 81 } 82 } 83 }, 84 "typeParams": { 85 "type": "TSTypeParameterInstantiation", 86 "params": [ 87 { 88 "type": "ETSTypeReference", 89 "part": { 90 "type": "ETSTypeReferencePart", 91 "name": { 92 "type": "Identifier", 93 "name": "TA", 94 "decorators": [], 95 "loc": { 96 "start": { 97 "line": 16, 98 "column": 23 99 }, 100 "end": { 101 "line": 16, 102 "column": 25 103 } 104 } 105 }, 106 "loc": { 107 "start": { 108 "line": 16, 109 "column": 23 110 }, 111 "end": { 112 "line": 16, 113 "column": 26 114 } 115 } 116 }, 117 "loc": { 118 "start": { 119 "line": 16, 120 "column": 23 121 }, 122 "end": { 123 "line": 16, 124 "column": 26 125 } 126 } 127 } 128 ], 129 "loc": { 130 "start": { 131 "line": 16, 132 "column": 22 133 }, 134 "end": { 135 "line": 16, 136 "column": 26 137 } 138 } 139 }, 140 "loc": { 141 "start": { 142 "line": 16, 143 "column": 21 144 }, 145 "end": { 146 "line": 16, 147 "column": 28 148 } 149 } 150 }, 151 "loc": { 152 "start": { 153 "line": 16, 154 "column": 21 155 }, 156 "end": { 157 "line": 16, 158 "column": 28 159 } 160 } 161 }, 162 "implements": [], 163 "body": [ 164 { 165 "type": "MethodDefinition", 166 "key": { 167 "type": "Identifier", 168 "name": "constructor", 169 "decorators": [], 170 "loc": { 171 "start": { 172 "line": 1, 173 "column": 1 174 }, 175 "end": { 176 "line": 1, 177 "column": 1 178 } 179 } 180 }, 181 "kind": "constructor", 182 "static": false, 183 "optional": false, 184 "computed": false, 185 "value": { 186 "type": "FunctionExpression", 187 "function": { 188 "type": "ScriptFunction", 189 "id": { 190 "type": "Identifier", 191 "name": "constructor", 192 "decorators": [], 193 "loc": { 194 "start": { 195 "line": 1, 196 "column": 1 197 }, 198 "end": { 199 "line": 1, 200 "column": 1 201 } 202 } 203 }, 204 "generator": false, 205 "async": false, 206 "expression": false, 207 "params": [], 208 "body": { 209 "type": "BlockStatement", 210 "statements": [], 211 "loc": { 212 "start": { 213 "line": 1, 214 "column": 1 215 }, 216 "end": { 217 "line": 1, 218 "column": 1 219 } 220 } 221 }, 222 "loc": { 223 "start": { 224 "line": 1, 225 "column": 1 226 }, 227 "end": { 228 "line": 1, 229 "column": 1 230 } 231 } 232 }, 233 "loc": { 234 "start": { 235 "line": 1, 236 "column": 1 237 }, 238 "end": { 239 "line": 1, 240 "column": 1 241 } 242 } 243 }, 244 "overloads": [], 245 "decorators": [], 246 "loc": { 247 "start": { 248 "line": 16, 249 "column": 29 250 }, 251 "end": { 252 "line": 16, 253 "column": 29 254 } 255 } 256 } 257 ], 258 "loc": { 259 "start": { 260 "line": 16, 261 "column": 27 262 }, 263 "end": { 264 "line": 16, 265 "column": 29 266 } 267 } 268 }, 269 "loc": { 270 "start": { 271 "line": 16, 272 "column": 1 273 }, 274 "end": { 275 "line": 16, 276 "column": 29 277 } 278 } 279 }, 280 { 281 "type": "ClassDeclaration", 282 "definition": { 283 "id": { 284 "type": "Identifier", 285 "name": "B", 286 "decorators": [], 287 "loc": { 288 "start": { 289 "line": 18, 290 "column": 7 291 }, 292 "end": { 293 "line": 18, 294 "column": 8 295 } 296 } 297 }, 298 "typeParameters": { 299 "type": "TSTypeParameterDeclaration", 300 "params": [ 301 { 302 "type": "TSTypeParameter", 303 "name": { 304 "type": "Identifier", 305 "name": "TB", 306 "decorators": [], 307 "loc": { 308 "start": { 309 "line": 18, 310 "column": 9 311 }, 312 "end": { 313 "line": 18, 314 "column": 11 315 } 316 } 317 }, 318 "loc": { 319 "start": { 320 "line": 18, 321 "column": 9 322 }, 323 "end": { 324 "line": 18, 325 "column": 12 326 } 327 } 328 } 329 ], 330 "loc": { 331 "start": { 332 "line": 18, 333 "column": 8 334 }, 335 "end": { 336 "line": 18, 337 "column": 12 338 } 339 } 340 }, 341 "superClass": null, 342 "implements": [], 343 "body": [ 344 { 345 "type": "MethodDefinition", 346 "key": { 347 "type": "Identifier", 348 "name": "f", 349 "decorators": [], 350 "loc": { 351 "start": { 352 "line": 19, 353 "column": 5 354 }, 355 "end": { 356 "line": 19, 357 "column": 6 358 } 359 } 360 }, 361 "kind": "method", 362 "accessibility": "public", 363 "static": false, 364 "optional": false, 365 "computed": false, 366 "value": { 367 "type": "FunctionExpression", 368 "function": { 369 "type": "ScriptFunction", 370 "id": { 371 "type": "Identifier", 372 "name": "f", 373 "decorators": [], 374 "loc": { 375 "start": { 376 "line": 19, 377 "column": 5 378 }, 379 "end": { 380 "line": 19, 381 "column": 6 382 } 383 } 384 }, 385 "generator": false, 386 "async": false, 387 "expression": false, 388 "params": [], 389 "body": { 390 "type": "BlockStatement", 391 "statements": [], 392 "loc": { 393 "start": { 394 "line": 19, 395 "column": 9 396 }, 397 "end": { 398 "line": 19, 399 "column": 11 400 } 401 } 402 }, 403 "loc": { 404 "start": { 405 "line": 19, 406 "column": 6 407 }, 408 "end": { 409 "line": 19, 410 "column": 11 411 } 412 } 413 }, 414 "loc": { 415 "start": { 416 "line": 19, 417 "column": 6 418 }, 419 "end": { 420 "line": 19, 421 "column": 11 422 } 423 } 424 }, 425 "overloads": [], 426 "decorators": [], 427 "loc": { 428 "start": { 429 "line": 19, 430 "column": 5 431 }, 432 "end": { 433 "line": 19, 434 "column": 11 435 } 436 } 437 }, 438 { 439 "type": "MethodDefinition", 440 "key": { 441 "type": "Identifier", 442 "name": "g", 443 "decorators": [], 444 "loc": { 445 "start": { 446 "line": 20, 447 "column": 5 448 }, 449 "end": { 450 "line": 20, 451 "column": 6 452 } 453 } 454 }, 455 "kind": "method", 456 "accessibility": "public", 457 "static": false, 458 "optional": false, 459 "computed": false, 460 "value": { 461 "type": "FunctionExpression", 462 "function": { 463 "type": "ScriptFunction", 464 "id": { 465 "type": "Identifier", 466 "name": "g", 467 "decorators": [], 468 "loc": { 469 "start": { 470 "line": 20, 471 "column": 5 472 }, 473 "end": { 474 "line": 20, 475 "column": 6 476 } 477 } 478 }, 479 "generator": false, 480 "async": false, 481 "expression": false, 482 "params": [ 483 { 484 "type": "ETSParameterExpression", 485 "name": { 486 "type": "Identifier", 487 "name": "a", 488 "typeAnnotation": { 489 "type": "ETSTypeReference", 490 "part": { 491 "type": "ETSTypeReferencePart", 492 "name": { 493 "type": "Identifier", 494 "name": "A", 495 "decorators": [], 496 "loc": { 497 "start": { 498 "line": 20, 499 "column": 10 500 }, 501 "end": { 502 "line": 20, 503 "column": 11 504 } 505 } 506 }, 507 "typeParams": { 508 "type": "TSTypeParameterInstantiation", 509 "params": [ 510 { 511 "type": "ETSTypeReference", 512 "part": { 513 "type": "ETSTypeReferencePart", 514 "name": { 515 "type": "Identifier", 516 "name": "TB", 517 "decorators": [], 518 "loc": { 519 "start": { 520 "line": 20, 521 "column": 12 522 }, 523 "end": { 524 "line": 20, 525 "column": 14 526 } 527 } 528 }, 529 "loc": { 530 "start": { 531 "line": 20, 532 "column": 12 533 }, 534 "end": { 535 "line": 20, 536 "column": 15 537 } 538 } 539 }, 540 "loc": { 541 "start": { 542 "line": 20, 543 "column": 12 544 }, 545 "end": { 546 "line": 20, 547 "column": 15 548 } 549 } 550 } 551 ], 552 "loc": { 553 "start": { 554 "line": 20, 555 "column": 11 556 }, 557 "end": { 558 "line": 20, 559 "column": 15 560 } 561 } 562 }, 563 "loc": { 564 "start": { 565 "line": 20, 566 "column": 10 567 }, 568 "end": { 569 "line": 20, 570 "column": 16 571 } 572 } 573 }, 574 "loc": { 575 "start": { 576 "line": 20, 577 "column": 10 578 }, 579 "end": { 580 "line": 20, 581 "column": 16 582 } 583 } 584 }, 585 "decorators": [], 586 "loc": { 587 "start": { 588 "line": 20, 589 "column": 7 590 }, 591 "end": { 592 "line": 20, 593 "column": 16 594 } 595 } 596 }, 597 "loc": { 598 "start": { 599 "line": 20, 600 "column": 7 601 }, 602 "end": { 603 "line": 20, 604 "column": 16 605 } 606 } 607 } 608 ], 609 "body": { 610 "type": "BlockStatement", 611 "statements": [ 612 { 613 "type": "ExpressionStatement", 614 "expression": { 615 "type": "CallExpression", 616 "callee": { 617 "type": "MemberExpression", 618 "object": { 619 "type": "Identifier", 620 "name": "a", 621 "decorators": [], 622 "loc": { 623 "start": { 624 "line": 21, 625 "column": 9 626 }, 627 "end": { 628 "line": 21, 629 "column": 10 630 } 631 } 632 }, 633 "property": { 634 "type": "Identifier", 635 "name": "f", 636 "decorators": [], 637 "loc": { 638 "start": { 639 "line": 21, 640 "column": 11 641 }, 642 "end": { 643 "line": 21, 644 "column": 12 645 } 646 } 647 }, 648 "computed": false, 649 "optional": false, 650 "loc": { 651 "start": { 652 "line": 21, 653 "column": 9 654 }, 655 "end": { 656 "line": 21, 657 "column": 12 658 } 659 } 660 }, 661 "arguments": [], 662 "optional": false, 663 "loc": { 664 "start": { 665 "line": 21, 666 "column": 9 667 }, 668 "end": { 669 "line": 21, 670 "column": 14 671 } 672 } 673 }, 674 "loc": { 675 "start": { 676 "line": 21, 677 "column": 9 678 }, 679 "end": { 680 "line": 21, 681 "column": 15 682 } 683 } 684 } 685 ], 686 "loc": { 687 "start": { 688 "line": 20, 689 "column": 17 690 }, 691 "end": { 692 "line": 22, 693 "column": 6 694 } 695 } 696 }, 697 "loc": { 698 "start": { 699 "line": 20, 700 "column": 6 701 }, 702 "end": { 703 "line": 22, 704 "column": 6 705 } 706 } 707 }, 708 "loc": { 709 "start": { 710 "line": 20, 711 "column": 6 712 }, 713 "end": { 714 "line": 22, 715 "column": 6 716 } 717 } 718 }, 719 "overloads": [], 720 "decorators": [], 721 "loc": { 722 "start": { 723 "line": 20, 724 "column": 5 725 }, 726 "end": { 727 "line": 22, 728 "column": 6 729 } 730 } 731 }, 732 { 733 "type": "MethodDefinition", 734 "key": { 735 "type": "Identifier", 736 "name": "constructor", 737 "decorators": [], 738 "loc": { 739 "start": { 740 "line": 1, 741 "column": 1 742 }, 743 "end": { 744 "line": 1, 745 "column": 1 746 } 747 } 748 }, 749 "kind": "constructor", 750 "static": false, 751 "optional": false, 752 "computed": false, 753 "value": { 754 "type": "FunctionExpression", 755 "function": { 756 "type": "ScriptFunction", 757 "id": { 758 "type": "Identifier", 759 "name": "constructor", 760 "decorators": [], 761 "loc": { 762 "start": { 763 "line": 1, 764 "column": 1 765 }, 766 "end": { 767 "line": 1, 768 "column": 1 769 } 770 } 771 }, 772 "generator": false, 773 "async": false, 774 "expression": false, 775 "params": [], 776 "body": { 777 "type": "BlockStatement", 778 "statements": [], 779 "loc": { 780 "start": { 781 "line": 1, 782 "column": 1 783 }, 784 "end": { 785 "line": 1, 786 "column": 1 787 } 788 } 789 }, 790 "loc": { 791 "start": { 792 "line": 1, 793 "column": 1 794 }, 795 "end": { 796 "line": 1, 797 "column": 1 798 } 799 } 800 }, 801 "loc": { 802 "start": { 803 "line": 1, 804 "column": 1 805 }, 806 "end": { 807 "line": 1, 808 "column": 1 809 } 810 } 811 }, 812 "overloads": [], 813 "decorators": [], 814 "loc": { 815 "start": { 816 "line": 23, 817 "column": 2 818 }, 819 "end": { 820 "line": 23, 821 "column": 2 822 } 823 } 824 } 825 ], 826 "loc": { 827 "start": { 828 "line": 18, 829 "column": 13 830 }, 831 "end": { 832 "line": 23, 833 "column": 2 834 } 835 } 836 }, 837 "loc": { 838 "start": { 839 "line": 18, 840 "column": 1 841 }, 842 "end": { 843 "line": 23, 844 "column": 2 845 } 846 } 847 }, 848 { 849 "type": "ClassDeclaration", 850 "definition": { 851 "id": { 852 "type": "Identifier", 853 "name": "M", 854 "decorators": [], 855 "loc": { 856 "start": { 857 "line": 25, 858 "column": 7 859 }, 860 "end": { 861 "line": 25, 862 "column": 8 863 } 864 } 865 }, 866 "typeParameters": { 867 "type": "TSTypeParameterDeclaration", 868 "params": [ 869 { 870 "type": "TSTypeParameter", 871 "name": { 872 "type": "Identifier", 873 "name": "K", 874 "decorators": [], 875 "loc": { 876 "start": { 877 "line": 25, 878 "column": 9 879 }, 880 "end": { 881 "line": 25, 882 "column": 10 883 } 884 } 885 }, 886 "loc": { 887 "start": { 888 "line": 25, 889 "column": 9 890 }, 891 "end": { 892 "line": 25, 893 "column": 11 894 } 895 } 896 }, 897 { 898 "type": "TSTypeParameter", 899 "name": { 900 "type": "Identifier", 901 "name": "V", 902 "decorators": [], 903 "loc": { 904 "start": { 905 "line": 25, 906 "column": 12 907 }, 908 "end": { 909 "line": 25, 910 "column": 13 911 } 912 } 913 }, 914 "loc": { 915 "start": { 916 "line": 25, 917 "column": 12 918 }, 919 "end": { 920 "line": 25, 921 "column": 14 922 } 923 } 924 } 925 ], 926 "loc": { 927 "start": { 928 "line": 25, 929 "column": 8 930 }, 931 "end": { 932 "line": 25, 933 "column": 14 934 } 935 } 936 }, 937 "superClass": null, 938 "implements": [], 939 "body": [ 940 { 941 "type": "MethodDefinition", 942 "key": { 943 "type": "Identifier", 944 "name": "constructor", 945 "decorators": [], 946 "loc": { 947 "start": { 948 "line": 1, 949 "column": 1 950 }, 951 "end": { 952 "line": 1, 953 "column": 1 954 } 955 } 956 }, 957 "kind": "constructor", 958 "accessibility": "public", 959 "static": false, 960 "optional": false, 961 "computed": false, 962 "value": { 963 "type": "FunctionExpression", 964 "function": { 965 "type": "ScriptFunction", 966 "id": { 967 "type": "Identifier", 968 "name": "constructor", 969 "decorators": [], 970 "loc": { 971 "start": { 972 "line": 1, 973 "column": 1 974 }, 975 "end": { 976 "line": 1, 977 "column": 1 978 } 979 } 980 }, 981 "generator": false, 982 "async": false, 983 "expression": false, 984 "params": [ 985 { 986 "type": "ETSParameterExpression", 987 "name": { 988 "type": "Identifier", 989 "name": "iter", 990 "typeAnnotation": { 991 "type": "ETSUnionType", 992 "types": [ 993 { 994 "type": "ETSTypeReference", 995 "part": { 996 "type": "ETSTypeReferencePart", 997 "name": { 998 "type": "Identifier", 999 "name": "ArrayLike", 1000 "decorators": [], 1001 "loc": { 1002 "start": { 1003 "line": 26, 1004 "column": 23 1005 }, 1006 "end": { 1007 "line": 26, 1008 "column": 32 1009 } 1010 } 1011 }, 1012 "typeParams": { 1013 "type": "TSTypeParameterInstantiation", 1014 "params": [ 1015 { 1016 "type": "ETSTuple", 1017 "types": [ 1018 { 1019 "type": "ETSTypeReference", 1020 "part": { 1021 "type": "ETSTypeReferencePart", 1022 "name": { 1023 "type": "Identifier", 1024 "name": "K", 1025 "decorators": [], 1026 "loc": { 1027 "start": { 1028 "line": 26, 1029 "column": 34 1030 }, 1031 "end": { 1032 "line": 26, 1033 "column": 35 1034 } 1035 } 1036 }, 1037 "loc": { 1038 "start": { 1039 "line": 26, 1040 "column": 34 1041 }, 1042 "end": { 1043 "line": 26, 1044 "column": 36 1045 } 1046 } 1047 }, 1048 "loc": { 1049 "start": { 1050 "line": 26, 1051 "column": 34 1052 }, 1053 "end": { 1054 "line": 26, 1055 "column": 36 1056 } 1057 } 1058 }, 1059 { 1060 "type": "ETSTypeReference", 1061 "part": { 1062 "type": "ETSTypeReferencePart", 1063 "name": { 1064 "type": "Identifier", 1065 "name": "V", 1066 "decorators": [], 1067 "loc": { 1068 "start": { 1069 "line": 26, 1070 "column": 37 1071 }, 1072 "end": { 1073 "line": 26, 1074 "column": 38 1075 } 1076 } 1077 }, 1078 "loc": { 1079 "start": { 1080 "line": 26, 1081 "column": 37 1082 }, 1083 "end": { 1084 "line": 26, 1085 "column": 39 1086 } 1087 } 1088 }, 1089 "loc": { 1090 "start": { 1091 "line": 26, 1092 "column": 37 1093 }, 1094 "end": { 1095 "line": 26, 1096 "column": 39 1097 } 1098 } 1099 } 1100 ], 1101 "spreadType": null, 1102 "loc": { 1103 "start": { 1104 "line": 26, 1105 "column": 33 1106 }, 1107 "end": { 1108 "line": 26, 1109 "column": 40 1110 } 1111 } 1112 } 1113 ], 1114 "loc": { 1115 "start": { 1116 "line": 26, 1117 "column": 32 1118 }, 1119 "end": { 1120 "line": 26, 1121 "column": 40 1122 } 1123 } 1124 }, 1125 "loc": { 1126 "start": { 1127 "line": 26, 1128 "column": 23 1129 }, 1130 "end": { 1131 "line": 26, 1132 "column": 42 1133 } 1134 } 1135 }, 1136 "loc": { 1137 "start": { 1138 "line": 26, 1139 "column": 23 1140 }, 1141 "end": { 1142 "line": 26, 1143 "column": 42 1144 } 1145 } 1146 }, 1147 { 1148 "type": "ETSTypeReference", 1149 "part": { 1150 "type": "ETSTypeReferencePart", 1151 "name": { 1152 "type": "Identifier", 1153 "name": "Iterable", 1154 "decorators": [], 1155 "loc": { 1156 "start": { 1157 "line": 26, 1158 "column": 43 1159 }, 1160 "end": { 1161 "line": 26, 1162 "column": 51 1163 } 1164 } 1165 }, 1166 "typeParams": { 1167 "type": "TSTypeParameterInstantiation", 1168 "params": [ 1169 { 1170 "type": "ETSTuple", 1171 "types": [ 1172 { 1173 "type": "ETSTypeReference", 1174 "part": { 1175 "type": "ETSTypeReferencePart", 1176 "name": { 1177 "type": "Identifier", 1178 "name": "K", 1179 "decorators": [], 1180 "loc": { 1181 "start": { 1182 "line": 26, 1183 "column": 53 1184 }, 1185 "end": { 1186 "line": 26, 1187 "column": 54 1188 } 1189 } 1190 }, 1191 "loc": { 1192 "start": { 1193 "line": 26, 1194 "column": 53 1195 }, 1196 "end": { 1197 "line": 26, 1198 "column": 55 1199 } 1200 } 1201 }, 1202 "loc": { 1203 "start": { 1204 "line": 26, 1205 "column": 53 1206 }, 1207 "end": { 1208 "line": 26, 1209 "column": 55 1210 } 1211 } 1212 }, 1213 { 1214 "type": "ETSTypeReference", 1215 "part": { 1216 "type": "ETSTypeReferencePart", 1217 "name": { 1218 "type": "Identifier", 1219 "name": "V", 1220 "decorators": [], 1221 "loc": { 1222 "start": { 1223 "line": 26, 1224 "column": 56 1225 }, 1226 "end": { 1227 "line": 26, 1228 "column": 57 1229 } 1230 } 1231 }, 1232 "loc": { 1233 "start": { 1234 "line": 26, 1235 "column": 56 1236 }, 1237 "end": { 1238 "line": 26, 1239 "column": 58 1240 } 1241 } 1242 }, 1243 "loc": { 1244 "start": { 1245 "line": 26, 1246 "column": 56 1247 }, 1248 "end": { 1249 "line": 26, 1250 "column": 58 1251 } 1252 } 1253 } 1254 ], 1255 "spreadType": null, 1256 "loc": { 1257 "start": { 1258 "line": 26, 1259 "column": 52 1260 }, 1261 "end": { 1262 "line": 26, 1263 "column": 59 1264 } 1265 } 1266 } 1267 ], 1268 "loc": { 1269 "start": { 1270 "line": 26, 1271 "column": 51 1272 }, 1273 "end": { 1274 "line": 26, 1275 "column": 59 1276 } 1277 } 1278 }, 1279 "loc": { 1280 "start": { 1281 "line": 26, 1282 "column": 43 1283 }, 1284 "end": { 1285 "line": 26, 1286 "column": 60 1287 } 1288 } 1289 }, 1290 "loc": { 1291 "start": { 1292 "line": 26, 1293 "column": 43 1294 }, 1295 "end": { 1296 "line": 26, 1297 "column": 60 1298 } 1299 } 1300 } 1301 ], 1302 "loc": { 1303 "start": { 1304 "line": 26, 1305 "column": 23 1306 }, 1307 "end": { 1308 "line": 26, 1309 "column": 60 1310 } 1311 } 1312 }, 1313 "decorators": [], 1314 "loc": { 1315 "start": { 1316 "line": 26, 1317 "column": 17 1318 }, 1319 "end": { 1320 "line": 26, 1321 "column": 60 1322 } 1323 } 1324 }, 1325 "loc": { 1326 "start": { 1327 "line": 26, 1328 "column": 17 1329 }, 1330 "end": { 1331 "line": 26, 1332 "column": 60 1333 } 1334 } 1335 } 1336 ], 1337 "body": { 1338 "type": "BlockStatement", 1339 "statements": [ 1340 { 1341 "type": "ExpressionStatement", 1342 "expression": { 1343 "type": "CallExpression", 1344 "callee": { 1345 "type": "MemberExpression", 1346 "object": { 1347 "type": "Identifier", 1348 "name": "Array", 1349 "decorators": [], 1350 "loc": { 1351 "start": { 1352 "line": 27, 1353 "column": 9 1354 }, 1355 "end": { 1356 "line": 27, 1357 "column": 14 1358 } 1359 } 1360 }, 1361 "property": { 1362 "type": "Identifier", 1363 "name": "from", 1364 "decorators": [], 1365 "loc": { 1366 "start": { 1367 "line": 27, 1368 "column": 15 1369 }, 1370 "end": { 1371 "line": 27, 1372 "column": 19 1373 } 1374 } 1375 }, 1376 "computed": false, 1377 "optional": false, 1378 "loc": { 1379 "start": { 1380 "line": 27, 1381 "column": 9 1382 }, 1383 "end": { 1384 "line": 27, 1385 "column": 19 1386 } 1387 } 1388 }, 1389 "arguments": [ 1390 { 1391 "type": "Identifier", 1392 "name": "iter", 1393 "decorators": [], 1394 "loc": { 1395 "start": { 1396 "line": 27, 1397 "column": 28 1398 }, 1399 "end": { 1400 "line": 27, 1401 "column": 32 1402 } 1403 } 1404 } 1405 ], 1406 "optional": false, 1407 "typeParameters": { 1408 "type": "TSTypeParameterInstantiation", 1409 "params": [ 1410 { 1411 "type": "ETSTuple", 1412 "types": [ 1413 { 1414 "type": "ETSTypeReference", 1415 "part": { 1416 "type": "ETSTypeReferencePart", 1417 "name": { 1418 "type": "Identifier", 1419 "name": "K", 1420 "decorators": [], 1421 "loc": { 1422 "start": { 1423 "line": 27, 1424 "column": 21 1425 }, 1426 "end": { 1427 "line": 27, 1428 "column": 22 1429 } 1430 } 1431 }, 1432 "loc": { 1433 "start": { 1434 "line": 27, 1435 "column": 21 1436 }, 1437 "end": { 1438 "line": 27, 1439 "column": 23 1440 } 1441 } 1442 }, 1443 "loc": { 1444 "start": { 1445 "line": 27, 1446 "column": 21 1447 }, 1448 "end": { 1449 "line": 27, 1450 "column": 23 1451 } 1452 } 1453 }, 1454 { 1455 "type": "ETSTypeReference", 1456 "part": { 1457 "type": "ETSTypeReferencePart", 1458 "name": { 1459 "type": "Identifier", 1460 "name": "V", 1461 "decorators": [], 1462 "loc": { 1463 "start": { 1464 "line": 27, 1465 "column": 24 1466 }, 1467 "end": { 1468 "line": 27, 1469 "column": 25 1470 } 1471 } 1472 }, 1473 "loc": { 1474 "start": { 1475 "line": 27, 1476 "column": 24 1477 }, 1478 "end": { 1479 "line": 27, 1480 "column": 26 1481 } 1482 } 1483 }, 1484 "loc": { 1485 "start": { 1486 "line": 27, 1487 "column": 24 1488 }, 1489 "end": { 1490 "line": 27, 1491 "column": 26 1492 } 1493 } 1494 } 1495 ], 1496 "spreadType": null, 1497 "loc": { 1498 "start": { 1499 "line": 27, 1500 "column": 20 1501 }, 1502 "end": { 1503 "line": 27, 1504 "column": 27 1505 } 1506 } 1507 } 1508 ], 1509 "loc": { 1510 "start": { 1511 "line": 27, 1512 "column": 19 1513 }, 1514 "end": { 1515 "line": 27, 1516 "column": 27 1517 } 1518 } 1519 }, 1520 "loc": { 1521 "start": { 1522 "line": 27, 1523 "column": 9 1524 }, 1525 "end": { 1526 "line": 27, 1527 "column": 33 1528 } 1529 } 1530 }, 1531 "loc": { 1532 "start": { 1533 "line": 27, 1534 "column": 9 1535 }, 1536 "end": { 1537 "line": 27, 1538 "column": 34 1539 } 1540 } 1541 } 1542 ], 1543 "loc": { 1544 "start": { 1545 "line": 26, 1546 "column": 61 1547 }, 1548 "end": { 1549 "line": 28, 1550 "column": 6 1551 } 1552 } 1553 }, 1554 "loc": { 1555 "start": { 1556 "line": 26, 1557 "column": 16 1558 }, 1559 "end": { 1560 "line": 28, 1561 "column": 6 1562 } 1563 } 1564 }, 1565 "loc": { 1566 "start": { 1567 "line": 26, 1568 "column": 16 1569 }, 1570 "end": { 1571 "line": 28, 1572 "column": 6 1573 } 1574 } 1575 }, 1576 "overloads": [], 1577 "decorators": [], 1578 "loc": { 1579 "start": { 1580 "line": 26, 1581 "column": 5 1582 }, 1583 "end": { 1584 "line": 28, 1585 "column": 6 1586 } 1587 } 1588 } 1589 ], 1590 "loc": { 1591 "start": { 1592 "line": 25, 1593 "column": 15 1594 }, 1595 "end": { 1596 "line": 29, 1597 "column": 2 1598 } 1599 } 1600 }, 1601 "loc": { 1602 "start": { 1603 "line": 25, 1604 "column": 1 1605 }, 1606 "end": { 1607 "line": 29, 1608 "column": 2 1609 } 1610 } 1611 }, 1612 { 1613 "type": "ClassDeclaration", 1614 "definition": { 1615 "id": { 1616 "type": "Identifier", 1617 "name": "C", 1618 "decorators": [], 1619 "loc": { 1620 "start": { 1621 "line": 31, 1622 "column": 7 1623 }, 1624 "end": { 1625 "line": 31, 1626 "column": 8 1627 } 1628 } 1629 }, 1630 "typeParameters": { 1631 "type": "TSTypeParameterDeclaration", 1632 "params": [ 1633 { 1634 "type": "TSTypeParameter", 1635 "name": { 1636 "type": "Identifier", 1637 "name": "T", 1638 "decorators": [], 1639 "loc": { 1640 "start": { 1641 "line": 31, 1642 "column": 9 1643 }, 1644 "end": { 1645 "line": 31, 1646 "column": 10 1647 } 1648 } 1649 }, 1650 "loc": { 1651 "start": { 1652 "line": 31, 1653 "column": 9 1654 }, 1655 "end": { 1656 "line": 31, 1657 "column": 11 1658 } 1659 } 1660 } 1661 ], 1662 "loc": { 1663 "start": { 1664 "line": 31, 1665 "column": 8 1666 }, 1667 "end": { 1668 "line": 31, 1669 "column": 11 1670 } 1671 } 1672 }, 1673 "superClass": null, 1674 "implements": [], 1675 "body": [ 1676 { 1677 "type": "MethodDefinition", 1678 "key": { 1679 "type": "Identifier", 1680 "name": "constructor", 1681 "decorators": [], 1682 "loc": { 1683 "start": { 1684 "line": 1, 1685 "column": 1 1686 }, 1687 "end": { 1688 "line": 1, 1689 "column": 1 1690 } 1691 } 1692 }, 1693 "kind": "constructor", 1694 "static": false, 1695 "optional": false, 1696 "computed": false, 1697 "value": { 1698 "type": "FunctionExpression", 1699 "function": { 1700 "type": "ScriptFunction", 1701 "id": { 1702 "type": "Identifier", 1703 "name": "constructor", 1704 "decorators": [], 1705 "loc": { 1706 "start": { 1707 "line": 1, 1708 "column": 1 1709 }, 1710 "end": { 1711 "line": 1, 1712 "column": 1 1713 } 1714 } 1715 }, 1716 "generator": false, 1717 "async": false, 1718 "expression": false, 1719 "params": [], 1720 "body": { 1721 "type": "BlockStatement", 1722 "statements": [], 1723 "loc": { 1724 "start": { 1725 "line": 1, 1726 "column": 1 1727 }, 1728 "end": { 1729 "line": 1, 1730 "column": 1 1731 } 1732 } 1733 }, 1734 "loc": { 1735 "start": { 1736 "line": 1, 1737 "column": 1 1738 }, 1739 "end": { 1740 "line": 1, 1741 "column": 1 1742 } 1743 } 1744 }, 1745 "loc": { 1746 "start": { 1747 "line": 1, 1748 "column": 1 1749 }, 1750 "end": { 1751 "line": 1, 1752 "column": 1 1753 } 1754 } 1755 }, 1756 "overloads": [], 1757 "decorators": [], 1758 "loc": { 1759 "start": { 1760 "line": 31, 1761 "column": 14 1762 }, 1763 "end": { 1764 "line": 31, 1765 "column": 14 1766 } 1767 } 1768 } 1769 ], 1770 "loc": { 1771 "start": { 1772 "line": 31, 1773 "column": 12 1774 }, 1775 "end": { 1776 "line": 31, 1777 "column": 14 1778 } 1779 } 1780 }, 1781 "loc": { 1782 "start": { 1783 "line": 31, 1784 "column": 1 1785 }, 1786 "end": { 1787 "line": 31, 1788 "column": 14 1789 } 1790 } 1791 }, 1792 { 1793 "type": "ClassDeclaration", 1794 "definition": { 1795 "id": { 1796 "type": "Identifier", 1797 "name": "M1", 1798 "decorators": [], 1799 "loc": { 1800 "start": { 1801 "line": 37, 1802 "column": 7 1803 }, 1804 "end": { 1805 "line": 37, 1806 "column": 9 1807 } 1808 } 1809 }, 1810 "typeParameters": { 1811 "type": "TSTypeParameterDeclaration", 1812 "params": [ 1813 { 1814 "type": "TSTypeParameter", 1815 "name": { 1816 "type": "Identifier", 1817 "name": "K", 1818 "decorators": [], 1819 "loc": { 1820 "start": { 1821 "line": 37, 1822 "column": 10 1823 }, 1824 "end": { 1825 "line": 37, 1826 "column": 11 1827 } 1828 } 1829 }, 1830 "loc": { 1831 "start": { 1832 "line": 37, 1833 "column": 10 1834 }, 1835 "end": { 1836 "line": 37, 1837 "column": 12 1838 } 1839 } 1840 }, 1841 { 1842 "type": "TSTypeParameter", 1843 "name": { 1844 "type": "Identifier", 1845 "name": "V", 1846 "decorators": [], 1847 "loc": { 1848 "start": { 1849 "line": 37, 1850 "column": 13 1851 }, 1852 "end": { 1853 "line": 37, 1854 "column": 14 1855 } 1856 } 1857 }, 1858 "loc": { 1859 "start": { 1860 "line": 37, 1861 "column": 13 1862 }, 1863 "end": { 1864 "line": 37, 1865 "column": 15 1866 } 1867 } 1868 } 1869 ], 1870 "loc": { 1871 "start": { 1872 "line": 37, 1873 "column": 9 1874 }, 1875 "end": { 1876 "line": 37, 1877 "column": 15 1878 } 1879 } 1880 }, 1881 "superClass": null, 1882 "implements": [], 1883 "body": [ 1884 { 1885 "type": "MethodDefinition", 1886 "key": { 1887 "type": "Identifier", 1888 "name": "it", 1889 "decorators": [], 1890 "loc": { 1891 "start": { 1892 "line": 38, 1893 "column": 5 1894 }, 1895 "end": { 1896 "line": 38, 1897 "column": 7 1898 } 1899 } 1900 }, 1901 "kind": "method", 1902 "accessibility": "public", 1903 "static": false, 1904 "optional": false, 1905 "computed": false, 1906 "value": { 1907 "type": "FunctionExpression", 1908 "function": { 1909 "type": "ScriptFunction", 1910 "id": { 1911 "type": "Identifier", 1912 "name": "it", 1913 "decorators": [], 1914 "loc": { 1915 "start": { 1916 "line": 38, 1917 "column": 5 1918 }, 1919 "end": { 1920 "line": 38, 1921 "column": 7 1922 } 1923 } 1924 }, 1925 "generator": false, 1926 "async": false, 1927 "expression": false, 1928 "params": [], 1929 "returnType": { 1930 "type": "ETSTypeReference", 1931 "part": { 1932 "type": "ETSTypeReferencePart", 1933 "name": { 1934 "type": "Identifier", 1935 "name": "C", 1936 "decorators": [], 1937 "loc": { 1938 "start": { 1939 "line": 38, 1940 "column": 11 1941 }, 1942 "end": { 1943 "line": 38, 1944 "column": 12 1945 } 1946 } 1947 }, 1948 "typeParams": { 1949 "type": "TSTypeParameterInstantiation", 1950 "params": [ 1951 { 1952 "type": "ETSTuple", 1953 "types": [ 1954 { 1955 "type": "ETSTypeReference", 1956 "part": { 1957 "type": "ETSTypeReferencePart", 1958 "name": { 1959 "type": "Identifier", 1960 "name": "K", 1961 "decorators": [], 1962 "loc": { 1963 "start": { 1964 "line": 38, 1965 "column": 14 1966 }, 1967 "end": { 1968 "line": 38, 1969 "column": 15 1970 } 1971 } 1972 }, 1973 "loc": { 1974 "start": { 1975 "line": 38, 1976 "column": 14 1977 }, 1978 "end": { 1979 "line": 38, 1980 "column": 16 1981 } 1982 } 1983 }, 1984 "loc": { 1985 "start": { 1986 "line": 38, 1987 "column": 14 1988 }, 1989 "end": { 1990 "line": 38, 1991 "column": 16 1992 } 1993 } 1994 }, 1995 { 1996 "type": "ETSTypeReference", 1997 "part": { 1998 "type": "ETSTypeReferencePart", 1999 "name": { 2000 "type": "Identifier", 2001 "name": "V", 2002 "decorators": [], 2003 "loc": { 2004 "start": { 2005 "line": 38, 2006 "column": 17 2007 }, 2008 "end": { 2009 "line": 38, 2010 "column": 18 2011 } 2012 } 2013 }, 2014 "loc": { 2015 "start": { 2016 "line": 38, 2017 "column": 17 2018 }, 2019 "end": { 2020 "line": 38, 2021 "column": 19 2022 } 2023 } 2024 }, 2025 "loc": { 2026 "start": { 2027 "line": 38, 2028 "column": 17 2029 }, 2030 "end": { 2031 "line": 38, 2032 "column": 19 2033 } 2034 } 2035 } 2036 ], 2037 "spreadType": null, 2038 "loc": { 2039 "start": { 2040 "line": 38, 2041 "column": 13 2042 }, 2043 "end": { 2044 "line": 38, 2045 "column": 20 2046 } 2047 } 2048 } 2049 ], 2050 "loc": { 2051 "start": { 2052 "line": 38, 2053 "column": 12 2054 }, 2055 "end": { 2056 "line": 38, 2057 "column": 20 2058 } 2059 } 2060 }, 2061 "loc": { 2062 "start": { 2063 "line": 38, 2064 "column": 11 2065 }, 2066 "end": { 2067 "line": 38, 2068 "column": 22 2069 } 2070 } 2071 }, 2072 "loc": { 2073 "start": { 2074 "line": 38, 2075 "column": 11 2076 }, 2077 "end": { 2078 "line": 38, 2079 "column": 22 2080 } 2081 } 2082 }, 2083 "body": { 2084 "type": "BlockStatement", 2085 "statements": [ 2086 { 2087 "type": "ReturnStatement", 2088 "argument": { 2089 "type": "CallExpression", 2090 "callee": { 2091 "type": "MemberExpression", 2092 "object": { 2093 "type": "ThisExpression", 2094 "loc": { 2095 "start": { 2096 "line": 39, 2097 "column": 16 2098 }, 2099 "end": { 2100 "line": 39, 2101 "column": 20 2102 } 2103 } 2104 }, 2105 "property": { 2106 "type": "Identifier", 2107 "name": "bar", 2108 "decorators": [], 2109 "loc": { 2110 "start": { 2111 "line": 39, 2112 "column": 21 2113 }, 2114 "end": { 2115 "line": 39, 2116 "column": 24 2117 } 2118 } 2119 }, 2120 "computed": false, 2121 "optional": false, 2122 "loc": { 2123 "start": { 2124 "line": 39, 2125 "column": 16 2126 }, 2127 "end": { 2128 "line": 39, 2129 "column": 24 2130 } 2131 } 2132 }, 2133 "arguments": [], 2134 "optional": false, 2135 "loc": { 2136 "start": { 2137 "line": 39, 2138 "column": 16 2139 }, 2140 "end": { 2141 "line": 39, 2142 "column": 26 2143 } 2144 } 2145 }, 2146 "loc": { 2147 "start": { 2148 "line": 39, 2149 "column": 9 2150 }, 2151 "end": { 2152 "line": 39, 2153 "column": 27 2154 } 2155 } 2156 } 2157 ], 2158 "loc": { 2159 "start": { 2160 "line": 38, 2161 "column": 21 2162 }, 2163 "end": { 2164 "line": 40, 2165 "column": 6 2166 } 2167 } 2168 }, 2169 "loc": { 2170 "start": { 2171 "line": 38, 2172 "column": 7 2173 }, 2174 "end": { 2175 "line": 40, 2176 "column": 6 2177 } 2178 } 2179 }, 2180 "loc": { 2181 "start": { 2182 "line": 38, 2183 "column": 7 2184 }, 2185 "end": { 2186 "line": 40, 2187 "column": 6 2188 } 2189 } 2190 }, 2191 "overloads": [], 2192 "decorators": [], 2193 "loc": { 2194 "start": { 2195 "line": 38, 2196 "column": 5 2197 }, 2198 "end": { 2199 "line": 40, 2200 "column": 6 2201 } 2202 } 2203 }, 2204 { 2205 "type": "MethodDefinition", 2206 "key": { 2207 "type": "Identifier", 2208 "name": "bar", 2209 "decorators": [], 2210 "loc": { 2211 "start": { 2212 "line": 41, 2213 "column": 5 2214 }, 2215 "end": { 2216 "line": 41, 2217 "column": 8 2218 } 2219 } 2220 }, 2221 "kind": "method", 2222 "accessibility": "public", 2223 "static": false, 2224 "optional": false, 2225 "computed": false, 2226 "value": { 2227 "type": "FunctionExpression", 2228 "function": { 2229 "type": "ScriptFunction", 2230 "id": { 2231 "type": "Identifier", 2232 "name": "bar", 2233 "decorators": [], 2234 "loc": { 2235 "start": { 2236 "line": 41, 2237 "column": 5 2238 }, 2239 "end": { 2240 "line": 41, 2241 "column": 8 2242 } 2243 } 2244 }, 2245 "generator": false, 2246 "async": false, 2247 "expression": false, 2248 "params": [], 2249 "returnType": { 2250 "type": "ETSTypeReference", 2251 "part": { 2252 "type": "ETSTypeReferencePart", 2253 "name": { 2254 "type": "Identifier", 2255 "name": "C", 2256 "decorators": [], 2257 "loc": { 2258 "start": { 2259 "line": 41, 2260 "column": 12 2261 }, 2262 "end": { 2263 "line": 41, 2264 "column": 13 2265 } 2266 } 2267 }, 2268 "typeParams": { 2269 "type": "TSTypeParameterInstantiation", 2270 "params": [ 2271 { 2272 "type": "ETSTuple", 2273 "types": [ 2274 { 2275 "type": "ETSTypeReference", 2276 "part": { 2277 "type": "ETSTypeReferencePart", 2278 "name": { 2279 "type": "Identifier", 2280 "name": "K", 2281 "decorators": [], 2282 "loc": { 2283 "start": { 2284 "line": 41, 2285 "column": 15 2286 }, 2287 "end": { 2288 "line": 41, 2289 "column": 16 2290 } 2291 } 2292 }, 2293 "loc": { 2294 "start": { 2295 "line": 41, 2296 "column": 15 2297 }, 2298 "end": { 2299 "line": 41, 2300 "column": 17 2301 } 2302 } 2303 }, 2304 "loc": { 2305 "start": { 2306 "line": 41, 2307 "column": 15 2308 }, 2309 "end": { 2310 "line": 41, 2311 "column": 17 2312 } 2313 } 2314 }, 2315 { 2316 "type": "ETSTypeReference", 2317 "part": { 2318 "type": "ETSTypeReferencePart", 2319 "name": { 2320 "type": "Identifier", 2321 "name": "V", 2322 "decorators": [], 2323 "loc": { 2324 "start": { 2325 "line": 41, 2326 "column": 18 2327 }, 2328 "end": { 2329 "line": 41, 2330 "column": 19 2331 } 2332 } 2333 }, 2334 "loc": { 2335 "start": { 2336 "line": 41, 2337 "column": 18 2338 }, 2339 "end": { 2340 "line": 41, 2341 "column": 20 2342 } 2343 } 2344 }, 2345 "loc": { 2346 "start": { 2347 "line": 41, 2348 "column": 18 2349 }, 2350 "end": { 2351 "line": 41, 2352 "column": 20 2353 } 2354 } 2355 } 2356 ], 2357 "spreadType": null, 2358 "loc": { 2359 "start": { 2360 "line": 41, 2361 "column": 14 2362 }, 2363 "end": { 2364 "line": 41, 2365 "column": 21 2366 } 2367 } 2368 } 2369 ], 2370 "loc": { 2371 "start": { 2372 "line": 41, 2373 "column": 13 2374 }, 2375 "end": { 2376 "line": 41, 2377 "column": 21 2378 } 2379 } 2380 }, 2381 "loc": { 2382 "start": { 2383 "line": 41, 2384 "column": 12 2385 }, 2386 "end": { 2387 "line": 41, 2388 "column": 23 2389 } 2390 } 2391 }, 2392 "loc": { 2393 "start": { 2394 "line": 41, 2395 "column": 12 2396 }, 2397 "end": { 2398 "line": 41, 2399 "column": 23 2400 } 2401 } 2402 }, 2403 "body": { 2404 "type": "BlockStatement", 2405 "statements": [ 2406 { 2407 "type": "ReturnStatement", 2408 "argument": { 2409 "type": "CallExpression", 2410 "callee": { 2411 "type": "Identifier", 2412 "name": "mp", 2413 "decorators": [], 2414 "loc": { 2415 "start": { 2416 "line": 42, 2417 "column": 16 2418 }, 2419 "end": { 2420 "line": 42, 2421 "column": 18 2422 } 2423 } 2424 }, 2425 "arguments": [], 2426 "optional": false, 2427 "typeParameters": { 2428 "type": "TSTypeParameterInstantiation", 2429 "params": [ 2430 { 2431 "type": "ETSTuple", 2432 "types": [ 2433 { 2434 "type": "ETSTypeReference", 2435 "part": { 2436 "type": "ETSTypeReferencePart", 2437 "name": { 2438 "type": "Identifier", 2439 "name": "K", 2440 "decorators": [], 2441 "loc": { 2442 "start": { 2443 "line": 42, 2444 "column": 20 2445 }, 2446 "end": { 2447 "line": 42, 2448 "column": 21 2449 } 2450 } 2451 }, 2452 "loc": { 2453 "start": { 2454 "line": 42, 2455 "column": 20 2456 }, 2457 "end": { 2458 "line": 42, 2459 "column": 22 2460 } 2461 } 2462 }, 2463 "loc": { 2464 "start": { 2465 "line": 42, 2466 "column": 20 2467 }, 2468 "end": { 2469 "line": 42, 2470 "column": 22 2471 } 2472 } 2473 }, 2474 { 2475 "type": "ETSTypeReference", 2476 "part": { 2477 "type": "ETSTypeReferencePart", 2478 "name": { 2479 "type": "Identifier", 2480 "name": "V", 2481 "decorators": [], 2482 "loc": { 2483 "start": { 2484 "line": 42, 2485 "column": 23 2486 }, 2487 "end": { 2488 "line": 42, 2489 "column": 24 2490 } 2491 } 2492 }, 2493 "loc": { 2494 "start": { 2495 "line": 42, 2496 "column": 23 2497 }, 2498 "end": { 2499 "line": 42, 2500 "column": 25 2501 } 2502 } 2503 }, 2504 "loc": { 2505 "start": { 2506 "line": 42, 2507 "column": 23 2508 }, 2509 "end": { 2510 "line": 42, 2511 "column": 25 2512 } 2513 } 2514 } 2515 ], 2516 "spreadType": null, 2517 "loc": { 2518 "start": { 2519 "line": 42, 2520 "column": 19 2521 }, 2522 "end": { 2523 "line": 42, 2524 "column": 26 2525 } 2526 } 2527 } 2528 ], 2529 "loc": { 2530 "start": { 2531 "line": 42, 2532 "column": 18 2533 }, 2534 "end": { 2535 "line": 42, 2536 "column": 26 2537 } 2538 } 2539 }, 2540 "loc": { 2541 "start": { 2542 "line": 42, 2543 "column": 16 2544 }, 2545 "end": { 2546 "line": 42, 2547 "column": 28 2548 } 2549 } 2550 }, 2551 "loc": { 2552 "start": { 2553 "line": 42, 2554 "column": 9 2555 }, 2556 "end": { 2557 "line": 42, 2558 "column": 29 2559 } 2560 } 2561 } 2562 ], 2563 "loc": { 2564 "start": { 2565 "line": 41, 2566 "column": 22 2567 }, 2568 "end": { 2569 "line": 43, 2570 "column": 6 2571 } 2572 } 2573 }, 2574 "loc": { 2575 "start": { 2576 "line": 41, 2577 "column": 8 2578 }, 2579 "end": { 2580 "line": 43, 2581 "column": 6 2582 } 2583 } 2584 }, 2585 "loc": { 2586 "start": { 2587 "line": 41, 2588 "column": 8 2589 }, 2590 "end": { 2591 "line": 43, 2592 "column": 6 2593 } 2594 } 2595 }, 2596 "overloads": [], 2597 "decorators": [], 2598 "loc": { 2599 "start": { 2600 "line": 41, 2601 "column": 5 2602 }, 2603 "end": { 2604 "line": 43, 2605 "column": 6 2606 } 2607 } 2608 }, 2609 { 2610 "type": "MethodDefinition", 2611 "key": { 2612 "type": "Identifier", 2613 "name": "constructor", 2614 "decorators": [], 2615 "loc": { 2616 "start": { 2617 "line": 1, 2618 "column": 1 2619 }, 2620 "end": { 2621 "line": 1, 2622 "column": 1 2623 } 2624 } 2625 }, 2626 "kind": "constructor", 2627 "static": false, 2628 "optional": false, 2629 "computed": false, 2630 "value": { 2631 "type": "FunctionExpression", 2632 "function": { 2633 "type": "ScriptFunction", 2634 "id": { 2635 "type": "Identifier", 2636 "name": "constructor", 2637 "decorators": [], 2638 "loc": { 2639 "start": { 2640 "line": 1, 2641 "column": 1 2642 }, 2643 "end": { 2644 "line": 1, 2645 "column": 1 2646 } 2647 } 2648 }, 2649 "generator": false, 2650 "async": false, 2651 "expression": false, 2652 "params": [], 2653 "body": { 2654 "type": "BlockStatement", 2655 "statements": [], 2656 "loc": { 2657 "start": { 2658 "line": 1, 2659 "column": 1 2660 }, 2661 "end": { 2662 "line": 1, 2663 "column": 1 2664 } 2665 } 2666 }, 2667 "loc": { 2668 "start": { 2669 "line": 1, 2670 "column": 1 2671 }, 2672 "end": { 2673 "line": 1, 2674 "column": 1 2675 } 2676 } 2677 }, 2678 "loc": { 2679 "start": { 2680 "line": 1, 2681 "column": 1 2682 }, 2683 "end": { 2684 "line": 1, 2685 "column": 1 2686 } 2687 } 2688 }, 2689 "overloads": [], 2690 "decorators": [], 2691 "loc": { 2692 "start": { 2693 "line": 44, 2694 "column": 2 2695 }, 2696 "end": { 2697 "line": 44, 2698 "column": 2 2699 } 2700 } 2701 } 2702 ], 2703 "loc": { 2704 "start": { 2705 "line": 37, 2706 "column": 16 2707 }, 2708 "end": { 2709 "line": 44, 2710 "column": 2 2711 } 2712 } 2713 }, 2714 "loc": { 2715 "start": { 2716 "line": 37, 2717 "column": 1 2718 }, 2719 "end": { 2720 "line": 44, 2721 "column": 2 2722 } 2723 } 2724 }, 2725 { 2726 "type": "ClassDeclaration", 2727 "definition": { 2728 "id": { 2729 "type": "Identifier", 2730 "name": "ETSGLOBAL", 2731 "decorators": [], 2732 "loc": { 2733 "start": { 2734 "line": 1, 2735 "column": 1 2736 }, 2737 "end": { 2738 "line": 1, 2739 "column": 1 2740 } 2741 } 2742 }, 2743 "superClass": null, 2744 "implements": [], 2745 "body": [ 2746 { 2747 "type": "MethodDefinition", 2748 "key": { 2749 "type": "Identifier", 2750 "name": "_$init$_", 2751 "decorators": [], 2752 "loc": { 2753 "start": { 2754 "line": 1, 2755 "column": 1 2756 }, 2757 "end": { 2758 "line": 1, 2759 "column": 1 2760 } 2761 } 2762 }, 2763 "kind": "method", 2764 "accessibility": "public", 2765 "static": true, 2766 "optional": false, 2767 "computed": false, 2768 "value": { 2769 "type": "FunctionExpression", 2770 "function": { 2771 "type": "ScriptFunction", 2772 "id": { 2773 "type": "Identifier", 2774 "name": "_$init$_", 2775 "decorators": [], 2776 "loc": { 2777 "start": { 2778 "line": 1, 2779 "column": 1 2780 }, 2781 "end": { 2782 "line": 1, 2783 "column": 1 2784 } 2785 } 2786 }, 2787 "generator": false, 2788 "async": false, 2789 "expression": false, 2790 "params": [], 2791 "body": { 2792 "type": "BlockStatement", 2793 "statements": [], 2794 "loc": { 2795 "start": { 2796 "line": 1, 2797 "column": 1 2798 }, 2799 "end": { 2800 "line": 1, 2801 "column": 1 2802 } 2803 } 2804 }, 2805 "loc": { 2806 "start": { 2807 "line": 1, 2808 "column": 1 2809 }, 2810 "end": { 2811 "line": 1, 2812 "column": 1 2813 } 2814 } 2815 }, 2816 "loc": { 2817 "start": { 2818 "line": 1, 2819 "column": 1 2820 }, 2821 "end": { 2822 "line": 1, 2823 "column": 1 2824 } 2825 } 2826 }, 2827 "overloads": [], 2828 "decorators": [], 2829 "loc": { 2830 "start": { 2831 "line": 1, 2832 "column": 1 2833 }, 2834 "end": { 2835 "line": 1, 2836 "column": 1 2837 } 2838 } 2839 }, 2840 { 2841 "type": "MethodDefinition", 2842 "key": { 2843 "type": "Identifier", 2844 "name": "mp", 2845 "decorators": [], 2846 "loc": { 2847 "start": { 2848 "line": 33, 2849 "column": 10 2850 }, 2851 "end": { 2852 "line": 33, 2853 "column": 12 2854 } 2855 } 2856 }, 2857 "kind": "method", 2858 "accessibility": "public", 2859 "static": true, 2860 "optional": false, 2861 "computed": false, 2862 "value": { 2863 "type": "FunctionExpression", 2864 "function": { 2865 "type": "ScriptFunction", 2866 "id": { 2867 "type": "Identifier", 2868 "name": "mp", 2869 "decorators": [], 2870 "loc": { 2871 "start": { 2872 "line": 33, 2873 "column": 10 2874 }, 2875 "end": { 2876 "line": 33, 2877 "column": 12 2878 } 2879 } 2880 }, 2881 "generator": false, 2882 "async": false, 2883 "expression": false, 2884 "params": [], 2885 "returnType": { 2886 "type": "ETSTypeReference", 2887 "part": { 2888 "type": "ETSTypeReferencePart", 2889 "name": { 2890 "type": "Identifier", 2891 "name": "C", 2892 "decorators": [], 2893 "loc": { 2894 "start": { 2895 "line": 33, 2896 "column": 19 2897 }, 2898 "end": { 2899 "line": 33, 2900 "column": 20 2901 } 2902 } 2903 }, 2904 "typeParams": { 2905 "type": "TSTypeParameterInstantiation", 2906 "params": [ 2907 { 2908 "type": "ETSTypeReference", 2909 "part": { 2910 "type": "ETSTypeReferencePart", 2911 "name": { 2912 "type": "Identifier", 2913 "name": "T", 2914 "decorators": [], 2915 "loc": { 2916 "start": { 2917 "line": 33, 2918 "column": 21 2919 }, 2920 "end": { 2921 "line": 33, 2922 "column": 22 2923 } 2924 } 2925 }, 2926 "loc": { 2927 "start": { 2928 "line": 33, 2929 "column": 21 2930 }, 2931 "end": { 2932 "line": 33, 2933 "column": 23 2934 } 2935 } 2936 }, 2937 "loc": { 2938 "start": { 2939 "line": 33, 2940 "column": 21 2941 }, 2942 "end": { 2943 "line": 33, 2944 "column": 23 2945 } 2946 } 2947 } 2948 ], 2949 "loc": { 2950 "start": { 2951 "line": 33, 2952 "column": 20 2953 }, 2954 "end": { 2955 "line": 33, 2956 "column": 23 2957 } 2958 } 2959 }, 2960 "loc": { 2961 "start": { 2962 "line": 33, 2963 "column": 19 2964 }, 2965 "end": { 2966 "line": 33, 2967 "column": 25 2968 } 2969 } 2970 }, 2971 "loc": { 2972 "start": { 2973 "line": 33, 2974 "column": 19 2975 }, 2976 "end": { 2977 "line": 33, 2978 "column": 25 2979 } 2980 } 2981 }, 2982 "typeParameters": { 2983 "type": "TSTypeParameterDeclaration", 2984 "params": [ 2985 { 2986 "type": "TSTypeParameter", 2987 "name": { 2988 "type": "Identifier", 2989 "name": "T", 2990 "decorators": [], 2991 "loc": { 2992 "start": { 2993 "line": 33, 2994 "column": 13 2995 }, 2996 "end": { 2997 "line": 33, 2998 "column": 14 2999 } 3000 } 3001 }, 3002 "loc": { 3003 "start": { 3004 "line": 33, 3005 "column": 13 3006 }, 3007 "end": { 3008 "line": 33, 3009 "column": 15 3010 } 3011 } 3012 } 3013 ], 3014 "loc": { 3015 "start": { 3016 "line": 33, 3017 "column": 12 3018 }, 3019 "end": { 3020 "line": 33, 3021 "column": 15 3022 } 3023 } 3024 }, 3025 "body": { 3026 "type": "BlockStatement", 3027 "statements": [ 3028 { 3029 "type": "ReturnStatement", 3030 "argument": { 3031 "type": "ETSNewClassInstanceExpression", 3032 "typeReference": { 3033 "type": "ETSTypeReference", 3034 "part": { 3035 "type": "ETSTypeReferencePart", 3036 "name": { 3037 "type": "Identifier", 3038 "name": "C", 3039 "decorators": [], 3040 "loc": { 3041 "start": { 3042 "line": 34, 3043 "column": 16 3044 }, 3045 "end": { 3046 "line": 34, 3047 "column": 17 3048 } 3049 } 3050 }, 3051 "typeParams": { 3052 "type": "TSTypeParameterInstantiation", 3053 "params": [ 3054 { 3055 "type": "ETSTypeReference", 3056 "part": { 3057 "type": "ETSTypeReferencePart", 3058 "name": { 3059 "type": "Identifier", 3060 "name": "T", 3061 "decorators": [], 3062 "loc": { 3063 "start": { 3064 "line": 34, 3065 "column": 18 3066 }, 3067 "end": { 3068 "line": 34, 3069 "column": 19 3070 } 3071 } 3072 }, 3073 "loc": { 3074 "start": { 3075 "line": 34, 3076 "column": 18 3077 }, 3078 "end": { 3079 "line": 34, 3080 "column": 20 3081 } 3082 } 3083 }, 3084 "loc": { 3085 "start": { 3086 "line": 34, 3087 "column": 18 3088 }, 3089 "end": { 3090 "line": 34, 3091 "column": 20 3092 } 3093 } 3094 } 3095 ], 3096 "loc": { 3097 "start": { 3098 "line": 34, 3099 "column": 17 3100 }, 3101 "end": { 3102 "line": 34, 3103 "column": 20 3104 } 3105 } 3106 }, 3107 "loc": { 3108 "start": { 3109 "line": 34, 3110 "column": 16 3111 }, 3112 "end": { 3113 "line": 34, 3114 "column": 21 3115 } 3116 } 3117 }, 3118 "loc": { 3119 "start": { 3120 "line": 34, 3121 "column": 16 3122 }, 3123 "end": { 3124 "line": 34, 3125 "column": 21 3126 } 3127 } 3128 }, 3129 "arguments": [], 3130 "loc": { 3131 "start": { 3132 "line": 34, 3133 "column": 12 3134 }, 3135 "end": { 3136 "line": 34, 3137 "column": 23 3138 } 3139 } 3140 }, 3141 "loc": { 3142 "start": { 3143 "line": 34, 3144 "column": 5 3145 }, 3146 "end": { 3147 "line": 34, 3148 "column": 23 3149 } 3150 } 3151 } 3152 ], 3153 "loc": { 3154 "start": { 3155 "line": 33, 3156 "column": 24 3157 }, 3158 "end": { 3159 "line": 35, 3160 "column": 2 3161 } 3162 } 3163 }, 3164 "loc": { 3165 "start": { 3166 "line": 33, 3167 "column": 12 3168 }, 3169 "end": { 3170 "line": 35, 3171 "column": 2 3172 } 3173 } 3174 }, 3175 "loc": { 3176 "start": { 3177 "line": 33, 3178 "column": 12 3179 }, 3180 "end": { 3181 "line": 35, 3182 "column": 2 3183 } 3184 } 3185 }, 3186 "overloads": [], 3187 "decorators": [], 3188 "loc": { 3189 "start": { 3190 "line": 33, 3191 "column": 1 3192 }, 3193 "end": { 3194 "line": 35, 3195 "column": 2 3196 } 3197 } 3198 } 3199 ], 3200 "loc": { 3201 "start": { 3202 "line": 1, 3203 "column": 1 3204 }, 3205 "end": { 3206 "line": 1, 3207 "column": 1 3208 } 3209 } 3210 }, 3211 "loc": { 3212 "start": { 3213 "line": 1, 3214 "column": 1 3215 }, 3216 "end": { 3217 "line": 1, 3218 "column": 1 3219 } 3220 } 3221 } 3222 ], 3223 "loc": { 3224 "start": { 3225 "line": 1, 3226 "column": 1 3227 }, 3228 "end": { 3229 "line": 45, 3230 "column": 1 3231 } 3232 } 3233} 3234