1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "Tup", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 18, 14 "column": 7, 15 "program": "generics_7.ets" 16 }, 17 "end": { 18 "line": 18, 19 "column": 10, 20 "program": "generics_7.ets" 21 } 22 } 23 }, 24 "typeParameters": { 25 "type": "TSTypeParameterDeclaration", 26 "params": [ 27 { 28 "type": "TSTypeParameter", 29 "name": { 30 "type": "Identifier", 31 "name": "A", 32 "decorators": [], 33 "loc": { 34 "start": { 35 "line": 18, 36 "column": 11, 37 "program": "generics_7.ets" 38 }, 39 "end": { 40 "line": 18, 41 "column": 12, 42 "program": "generics_7.ets" 43 } 44 } 45 }, 46 "loc": { 47 "start": { 48 "line": 18, 49 "column": 11, 50 "program": "generics_7.ets" 51 }, 52 "end": { 53 "line": 18, 54 "column": 13, 55 "program": "generics_7.ets" 56 } 57 } 58 }, 59 { 60 "type": "TSTypeParameter", 61 "name": { 62 "type": "Identifier", 63 "name": "B", 64 "decorators": [], 65 "loc": { 66 "start": { 67 "line": 18, 68 "column": 14, 69 "program": "generics_7.ets" 70 }, 71 "end": { 72 "line": 18, 73 "column": 15, 74 "program": "generics_7.ets" 75 } 76 } 77 }, 78 "loc": { 79 "start": { 80 "line": 18, 81 "column": 14, 82 "program": "generics_7.ets" 83 }, 84 "end": { 85 "line": 18, 86 "column": 16, 87 "program": "generics_7.ets" 88 } 89 } 90 } 91 ], 92 "loc": { 93 "start": { 94 "line": 18, 95 "column": 10, 96 "program": "generics_7.ets" 97 }, 98 "end": { 99 "line": 18, 100 "column": 16, 101 "program": "generics_7.ets" 102 } 103 } 104 }, 105 "superClass": null, 106 "implements": [], 107 "body": [ 108 { 109 "type": "MethodDefinition", 110 "key": { 111 "type": "Identifier", 112 "name": "constructor", 113 "decorators": [], 114 "loc": { 115 "start": { 116 "line": 18, 117 "column": 18, 118 "program": "generics_7.ets" 119 }, 120 "end": { 121 "line": 18, 122 "column": 18, 123 "program": "generics_7.ets" 124 } 125 } 126 }, 127 "kind": "constructor", 128 "static": false, 129 "optional": false, 130 "computed": false, 131 "value": { 132 "type": "FunctionExpression", 133 "function": { 134 "type": "ScriptFunction", 135 "id": { 136 "type": "Identifier", 137 "name": "constructor", 138 "decorators": [], 139 "loc": { 140 "start": { 141 "line": 18, 142 "column": 18, 143 "program": "generics_7.ets" 144 }, 145 "end": { 146 "line": 18, 147 "column": 18, 148 "program": "generics_7.ets" 149 } 150 } 151 }, 152 "generator": false, 153 "async": false, 154 "expression": false, 155 "params": [], 156 "body": { 157 "type": "BlockStatement", 158 "statements": [], 159 "loc": { 160 "start": { 161 "line": 18, 162 "column": 18, 163 "program": "generics_7.ets" 164 }, 165 "end": { 166 "line": 18, 167 "column": 18, 168 "program": "generics_7.ets" 169 } 170 } 171 }, 172 "loc": { 173 "start": { 174 "line": 18, 175 "column": 18, 176 "program": "generics_7.ets" 177 }, 178 "end": { 179 "line": 18, 180 "column": 18, 181 "program": "generics_7.ets" 182 } 183 } 184 }, 185 "loc": { 186 "start": { 187 "line": 18, 188 "column": 18, 189 "program": "generics_7.ets" 190 }, 191 "end": { 192 "line": 18, 193 "column": 18, 194 "program": "generics_7.ets" 195 } 196 } 197 }, 198 "overloads": [], 199 "decorators": [], 200 "loc": { 201 "start": { 202 "line": 1, 203 "column": 1, 204 "program": null 205 }, 206 "end": { 207 "line": 1, 208 "column": 1, 209 "program": null 210 } 211 } 212 } 213 ], 214 "loc": { 215 "start": { 216 "line": 18, 217 "column": 17, 218 "program": "generics_7.ets" 219 }, 220 "end": { 221 "line": 19, 222 "column": 6, 223 "program": "generics_7.ets" 224 } 225 } 226 }, 227 "loc": { 228 "start": { 229 "line": 18, 230 "column": 1, 231 "program": "generics_7.ets" 232 }, 233 "end": { 234 "line": 19, 235 "column": 6, 236 "program": "generics_7.ets" 237 } 238 } 239 }, 240 { 241 "type": "ClassDeclaration", 242 "definition": { 243 "id": { 244 "type": "Identifier", 245 "name": "Tup2", 246 "decorators": [], 247 "loc": { 248 "start": { 249 "line": 19, 250 "column": 7, 251 "program": "generics_7.ets" 252 }, 253 "end": { 254 "line": 19, 255 "column": 11, 256 "program": "generics_7.ets" 257 } 258 } 259 }, 260 "typeParameters": { 261 "type": "TSTypeParameterDeclaration", 262 "params": [ 263 { 264 "type": "TSTypeParameter", 265 "name": { 266 "type": "Identifier", 267 "name": "A", 268 "decorators": [], 269 "loc": { 270 "start": { 271 "line": 19, 272 "column": 12, 273 "program": "generics_7.ets" 274 }, 275 "end": { 276 "line": 19, 277 "column": 13, 278 "program": "generics_7.ets" 279 } 280 } 281 }, 282 "loc": { 283 "start": { 284 "line": 19, 285 "column": 12, 286 "program": "generics_7.ets" 287 }, 288 "end": { 289 "line": 19, 290 "column": 14, 291 "program": "generics_7.ets" 292 } 293 } 294 } 295 ], 296 "loc": { 297 "start": { 298 "line": 19, 299 "column": 11, 300 "program": "generics_7.ets" 301 }, 302 "end": { 303 "line": 19, 304 "column": 14, 305 "program": "generics_7.ets" 306 } 307 } 308 }, 309 "superClass": null, 310 "implements": [], 311 "body": [ 312 { 313 "type": "MethodDefinition", 314 "key": { 315 "type": "Identifier", 316 "name": "constructor", 317 "decorators": [], 318 "loc": { 319 "start": { 320 "line": 19, 321 "column": 16, 322 "program": "generics_7.ets" 323 }, 324 "end": { 325 "line": 19, 326 "column": 16, 327 "program": "generics_7.ets" 328 } 329 } 330 }, 331 "kind": "constructor", 332 "static": false, 333 "optional": false, 334 "computed": false, 335 "value": { 336 "type": "FunctionExpression", 337 "function": { 338 "type": "ScriptFunction", 339 "id": { 340 "type": "Identifier", 341 "name": "constructor", 342 "decorators": [], 343 "loc": { 344 "start": { 345 "line": 19, 346 "column": 16, 347 "program": "generics_7.ets" 348 }, 349 "end": { 350 "line": 19, 351 "column": 16, 352 "program": "generics_7.ets" 353 } 354 } 355 }, 356 "generator": false, 357 "async": false, 358 "expression": false, 359 "params": [], 360 "body": { 361 "type": "BlockStatement", 362 "statements": [], 363 "loc": { 364 "start": { 365 "line": 19, 366 "column": 16, 367 "program": "generics_7.ets" 368 }, 369 "end": { 370 "line": 19, 371 "column": 16, 372 "program": "generics_7.ets" 373 } 374 } 375 }, 376 "loc": { 377 "start": { 378 "line": 19, 379 "column": 16, 380 "program": "generics_7.ets" 381 }, 382 "end": { 383 "line": 19, 384 "column": 16, 385 "program": "generics_7.ets" 386 } 387 } 388 }, 389 "loc": { 390 "start": { 391 "line": 19, 392 "column": 16, 393 "program": "generics_7.ets" 394 }, 395 "end": { 396 "line": 19, 397 "column": 16, 398 "program": "generics_7.ets" 399 } 400 } 401 }, 402 "overloads": [], 403 "decorators": [], 404 "loc": { 405 "start": { 406 "line": 1, 407 "column": 1, 408 "program": null 409 }, 410 "end": { 411 "line": 1, 412 "column": 1, 413 "program": null 414 } 415 } 416 } 417 ], 418 "loc": { 419 "start": { 420 "line": 19, 421 "column": 15, 422 "program": "generics_7.ets" 423 }, 424 "end": { 425 "line": 21, 426 "column": 9, 427 "program": "generics_7.ets" 428 } 429 } 430 }, 431 "loc": { 432 "start": { 433 "line": 19, 434 "column": 1, 435 "program": "generics_7.ets" 436 }, 437 "end": { 438 "line": 21, 439 "column": 9, 440 "program": "generics_7.ets" 441 } 442 } 443 }, 444 { 445 "type": "ClassDeclaration", 446 "definition": { 447 "id": { 448 "type": "Identifier", 449 "name": "ETSGLOBAL", 450 "decorators": [], 451 "loc": { 452 "start": { 453 "line": 1, 454 "column": 1, 455 "program": "generics_7.ets" 456 }, 457 "end": { 458 "line": 1, 459 "column": 1, 460 "program": "generics_7.ets" 461 } 462 } 463 }, 464 "superClass": null, 465 "implements": [], 466 "body": [ 467 { 468 "type": "MethodDefinition", 469 "key": { 470 "type": "Identifier", 471 "name": "_$init$_", 472 "decorators": [], 473 "loc": { 474 "start": { 475 "line": 1, 476 "column": 1, 477 "program": null 478 }, 479 "end": { 480 "line": 1, 481 "column": 1, 482 "program": null 483 } 484 } 485 }, 486 "kind": "method", 487 "accessibility": "public", 488 "static": true, 489 "optional": false, 490 "computed": false, 491 "value": { 492 "type": "FunctionExpression", 493 "function": { 494 "type": "ScriptFunction", 495 "id": { 496 "type": "Identifier", 497 "name": "_$init$_", 498 "decorators": [], 499 "loc": { 500 "start": { 501 "line": 1, 502 "column": 1, 503 "program": null 504 }, 505 "end": { 506 "line": 1, 507 "column": 1, 508 "program": null 509 } 510 } 511 }, 512 "generator": false, 513 "async": false, 514 "expression": false, 515 "params": [], 516 "body": { 517 "type": "BlockStatement", 518 "statements": [], 519 "loc": { 520 "start": { 521 "line": 1, 522 "column": 1, 523 "program": null 524 }, 525 "end": { 526 "line": 1, 527 "column": 1, 528 "program": null 529 } 530 } 531 }, 532 "loc": { 533 "start": { 534 "line": 1, 535 "column": 1, 536 "program": null 537 }, 538 "end": { 539 "line": 1, 540 "column": 1, 541 "program": null 542 } 543 } 544 }, 545 "loc": { 546 "start": { 547 "line": 1, 548 "column": 1, 549 "program": null 550 }, 551 "end": { 552 "line": 1, 553 "column": 1, 554 "program": null 555 } 556 } 557 }, 558 "overloads": [], 559 "decorators": [], 560 "loc": { 561 "start": { 562 "line": 1, 563 "column": 1, 564 "program": "generics_7.ets" 565 }, 566 "end": { 567 "line": 1, 568 "column": 1, 569 "program": "generics_7.ets" 570 } 571 } 572 }, 573 { 574 "type": "MethodDefinition", 575 "key": { 576 "type": "Identifier", 577 "name": "foo", 578 "decorators": [], 579 "loc": { 580 "start": { 581 "line": 16, 582 "column": 10, 583 "program": "generics_7.ets" 584 }, 585 "end": { 586 "line": 16, 587 "column": 13, 588 "program": "generics_7.ets" 589 } 590 } 591 }, 592 "kind": "method", 593 "accessibility": "public", 594 "static": true, 595 "optional": false, 596 "computed": false, 597 "value": { 598 "type": "FunctionExpression", 599 "function": { 600 "type": "ScriptFunction", 601 "id": { 602 "type": "Identifier", 603 "name": "foo", 604 "decorators": [], 605 "loc": { 606 "start": { 607 "line": 16, 608 "column": 10, 609 "program": "generics_7.ets" 610 }, 611 "end": { 612 "line": 16, 613 "column": 13, 614 "program": "generics_7.ets" 615 } 616 } 617 }, 618 "generator": false, 619 "async": false, 620 "expression": false, 621 "params": [ 622 { 623 "type": "ETSParameterExpression", 624 "name": { 625 "type": "Identifier", 626 "name": "x", 627 "typeAnnotation": { 628 "type": "ETSFunctionType", 629 "params": [], 630 "returnType": { 631 "type": "ETSTypeReference", 632 "part": { 633 "type": "ETSTypeReferencePart", 634 "name": { 635 "type": "Identifier", 636 "name": "T", 637 "decorators": [], 638 "loc": { 639 "start": { 640 "line": 16, 641 "column": 26, 642 "program": "generics_7.ets" 643 }, 644 "end": { 645 "line": 16, 646 "column": 27, 647 "program": "generics_7.ets" 648 } 649 } 650 }, 651 "loc": { 652 "start": { 653 "line": 16, 654 "column": 26, 655 "program": "generics_7.ets" 656 }, 657 "end": { 658 "line": 16, 659 "column": 28, 660 "program": "generics_7.ets" 661 } 662 } 663 }, 664 "loc": { 665 "start": { 666 "line": 16, 667 "column": 26, 668 "program": "generics_7.ets" 669 }, 670 "end": { 671 "line": 16, 672 "column": 28, 673 "program": "generics_7.ets" 674 } 675 } 676 }, 677 "loc": { 678 "start": { 679 "line": 16, 680 "column": 20, 681 "program": "generics_7.ets" 682 }, 683 "end": { 684 "line": 16, 685 "column": 28, 686 "program": "generics_7.ets" 687 } 688 } 689 }, 690 "decorators": [], 691 "loc": { 692 "start": { 693 "line": 16, 694 "column": 17, 695 "program": "generics_7.ets" 696 }, 697 "end": { 698 "line": 16, 699 "column": 28, 700 "program": "generics_7.ets" 701 } 702 } 703 }, 704 "loc": { 705 "start": { 706 "line": 16, 707 "column": 17, 708 "program": "generics_7.ets" 709 }, 710 "end": { 711 "line": 16, 712 "column": 28, 713 "program": "generics_7.ets" 714 } 715 } 716 } 717 ], 718 "returnType": { 719 "type": "ETSPrimitiveType", 720 "loc": { 721 "start": { 722 "line": 16, 723 "column": 30, 724 "program": "generics_7.ets" 725 }, 726 "end": { 727 "line": 16, 728 "column": 34, 729 "program": "generics_7.ets" 730 } 731 } 732 }, 733 "typeParameters": { 734 "type": "TSTypeParameterDeclaration", 735 "params": [ 736 { 737 "type": "TSTypeParameter", 738 "name": { 739 "type": "Identifier", 740 "name": "T", 741 "decorators": [], 742 "loc": { 743 "start": { 744 "line": 16, 745 "column": 14, 746 "program": "generics_7.ets" 747 }, 748 "end": { 749 "line": 16, 750 "column": 15, 751 "program": "generics_7.ets" 752 } 753 } 754 }, 755 "loc": { 756 "start": { 757 "line": 16, 758 "column": 14, 759 "program": "generics_7.ets" 760 }, 761 "end": { 762 "line": 16, 763 "column": 16, 764 "program": "generics_7.ets" 765 } 766 } 767 } 768 ], 769 "loc": { 770 "start": { 771 "line": 16, 772 "column": 13, 773 "program": "generics_7.ets" 774 }, 775 "end": { 776 "line": 16, 777 "column": 16, 778 "program": "generics_7.ets" 779 } 780 } 781 }, 782 "body": { 783 "type": "BlockStatement", 784 "statements": [], 785 "loc": { 786 "start": { 787 "line": 16, 788 "column": 35, 789 "program": "generics_7.ets" 790 }, 791 "end": { 792 "line": 16, 793 "column": 37, 794 "program": "generics_7.ets" 795 } 796 } 797 }, 798 "loc": { 799 "start": { 800 "line": 16, 801 "column": 10, 802 "program": "generics_7.ets" 803 }, 804 "end": { 805 "line": 16, 806 "column": 37, 807 "program": "generics_7.ets" 808 } 809 } 810 }, 811 "loc": { 812 "start": { 813 "line": 16, 814 "column": 10, 815 "program": "generics_7.ets" 816 }, 817 "end": { 818 "line": 16, 819 "column": 37, 820 "program": "generics_7.ets" 821 } 822 } 823 }, 824 "overloads": [], 825 "decorators": [], 826 "loc": { 827 "start": { 828 "line": 16, 829 "column": 1, 830 "program": "generics_7.ets" 831 }, 832 "end": { 833 "line": 16, 834 "column": 37, 835 "program": "generics_7.ets" 836 } 837 } 838 }, 839 { 840 "type": "MethodDefinition", 841 "key": { 842 "type": "Identifier", 843 "name": "main", 844 "decorators": [], 845 "loc": { 846 "start": { 847 "line": 21, 848 "column": 10, 849 "program": "generics_7.ets" 850 }, 851 "end": { 852 "line": 21, 853 "column": 14, 854 "program": "generics_7.ets" 855 } 856 } 857 }, 858 "kind": "method", 859 "accessibility": "public", 860 "static": true, 861 "optional": false, 862 "computed": false, 863 "value": { 864 "type": "FunctionExpression", 865 "function": { 866 "type": "ScriptFunction", 867 "id": { 868 "type": "Identifier", 869 "name": "main", 870 "decorators": [], 871 "loc": { 872 "start": { 873 "line": 21, 874 "column": 10, 875 "program": "generics_7.ets" 876 }, 877 "end": { 878 "line": 21, 879 "column": 14, 880 "program": "generics_7.ets" 881 } 882 } 883 }, 884 "generator": false, 885 "async": false, 886 "expression": false, 887 "params": [], 888 "returnType": { 889 "type": "ETSPrimitiveType", 890 "loc": { 891 "start": { 892 "line": 21, 893 "column": 18, 894 "program": "generics_7.ets" 895 }, 896 "end": { 897 "line": 21, 898 "column": 22, 899 "program": "generics_7.ets" 900 } 901 } 902 }, 903 "body": { 904 "type": "BlockStatement", 905 "statements": [ 906 { 907 "type": "ExpressionStatement", 908 "expression": { 909 "type": "CallExpression", 910 "callee": { 911 "type": "Identifier", 912 "name": "foo", 913 "decorators": [], 914 "loc": { 915 "start": { 916 "line": 22, 917 "column": 3, 918 "program": "generics_7.ets" 919 }, 920 "end": { 921 "line": 22, 922 "column": 6, 923 "program": "generics_7.ets" 924 } 925 } 926 }, 927 "arguments": [ 928 { 929 "type": "ArrowFunctionExpression", 930 "function": { 931 "type": "ScriptFunction", 932 "id": null, 933 "generator": false, 934 "async": false, 935 "expression": false, 936 "params": [], 937 "returnType": { 938 "type": "ETSTypeReference", 939 "part": { 940 "type": "ETSTypeReferencePart", 941 "name": { 942 "type": "Identifier", 943 "name": "Tup", 944 "decorators": [], 945 "loc": { 946 "start": { 947 "line": 22, 948 "column": 64, 949 "program": "generics_7.ets" 950 }, 951 "end": { 952 "line": 22, 953 "column": 67, 954 "program": "generics_7.ets" 955 } 956 } 957 }, 958 "typeParams": { 959 "type": "TSTypeParameterInstantiation", 960 "params": [ 961 { 962 "type": "ETSTypeReference", 963 "part": { 964 "type": "ETSTypeReferencePart", 965 "name": { 966 "type": "Identifier", 967 "name": "number", 968 "decorators": [], 969 "loc": { 970 "start": { 971 "line": 22, 972 "column": 68, 973 "program": "generics_7.ets" 974 }, 975 "end": { 976 "line": 22, 977 "column": 74, 978 "program": "generics_7.ets" 979 } 980 } 981 }, 982 "loc": { 983 "start": { 984 "line": 22, 985 "column": 68, 986 "program": "generics_7.ets" 987 }, 988 "end": { 989 "line": 22, 990 "column": 75, 991 "program": "generics_7.ets" 992 } 993 } 994 }, 995 "loc": { 996 "start": { 997 "line": 22, 998 "column": 68, 999 "program": "generics_7.ets" 1000 }, 1001 "end": { 1002 "line": 22, 1003 "column": 75, 1004 "program": "generics_7.ets" 1005 } 1006 } 1007 }, 1008 { 1009 "type": "ETSTypeReference", 1010 "part": { 1011 "type": "ETSTypeReferencePart", 1012 "name": { 1013 "type": "Identifier", 1014 "name": "Tup", 1015 "decorators": [], 1016 "loc": { 1017 "start": { 1018 "line": 22, 1019 "column": 76, 1020 "program": "generics_7.ets" 1021 }, 1022 "end": { 1023 "line": 22, 1024 "column": 79, 1025 "program": "generics_7.ets" 1026 } 1027 } 1028 }, 1029 "typeParams": { 1030 "type": "TSTypeParameterInstantiation", 1031 "params": [ 1032 { 1033 "type": "ETSTypeReference", 1034 "part": { 1035 "type": "ETSTypeReferencePart", 1036 "name": { 1037 "type": "Identifier", 1038 "name": "number", 1039 "decorators": [], 1040 "loc": { 1041 "start": { 1042 "line": 22, 1043 "column": 80, 1044 "program": "generics_7.ets" 1045 }, 1046 "end": { 1047 "line": 22, 1048 "column": 86, 1049 "program": "generics_7.ets" 1050 } 1051 } 1052 }, 1053 "loc": { 1054 "start": { 1055 "line": 22, 1056 "column": 80, 1057 "program": "generics_7.ets" 1058 }, 1059 "end": { 1060 "line": 22, 1061 "column": 87, 1062 "program": "generics_7.ets" 1063 } 1064 } 1065 }, 1066 "loc": { 1067 "start": { 1068 "line": 22, 1069 "column": 80, 1070 "program": "generics_7.ets" 1071 }, 1072 "end": { 1073 "line": 22, 1074 "column": 87, 1075 "program": "generics_7.ets" 1076 } 1077 } 1078 }, 1079 { 1080 "type": "ETSTypeReference", 1081 "part": { 1082 "type": "ETSTypeReferencePart", 1083 "name": { 1084 "type": "Identifier", 1085 "name": "Tup", 1086 "decorators": [], 1087 "loc": { 1088 "start": { 1089 "line": 22, 1090 "column": 88, 1091 "program": "generics_7.ets" 1092 }, 1093 "end": { 1094 "line": 22, 1095 "column": 91, 1096 "program": "generics_7.ets" 1097 } 1098 } 1099 }, 1100 "typeParams": { 1101 "type": "TSTypeParameterInstantiation", 1102 "params": [ 1103 { 1104 "type": "ETSTypeReference", 1105 "part": { 1106 "type": "ETSTypeReferencePart", 1107 "name": { 1108 "type": "Identifier", 1109 "name": "number", 1110 "decorators": [], 1111 "loc": { 1112 "start": { 1113 "line": 22, 1114 "column": 92, 1115 "program": "generics_7.ets" 1116 }, 1117 "end": { 1118 "line": 22, 1119 "column": 98, 1120 "program": "generics_7.ets" 1121 } 1122 } 1123 }, 1124 "loc": { 1125 "start": { 1126 "line": 22, 1127 "column": 92, 1128 "program": "generics_7.ets" 1129 }, 1130 "end": { 1131 "line": 22, 1132 "column": 99, 1133 "program": "generics_7.ets" 1134 } 1135 } 1136 }, 1137 "loc": { 1138 "start": { 1139 "line": 22, 1140 "column": 92, 1141 "program": "generics_7.ets" 1142 }, 1143 "end": { 1144 "line": 22, 1145 "column": 99, 1146 "program": "generics_7.ets" 1147 } 1148 } 1149 }, 1150 { 1151 "type": "ETSTypeReference", 1152 "part": { 1153 "type": "ETSTypeReferencePart", 1154 "name": { 1155 "type": "Identifier", 1156 "name": "Tup2", 1157 "decorators": [], 1158 "loc": { 1159 "start": { 1160 "line": 22, 1161 "column": 100, 1162 "program": "generics_7.ets" 1163 }, 1164 "end": { 1165 "line": 22, 1166 "column": 104, 1167 "program": "generics_7.ets" 1168 } 1169 } 1170 }, 1171 "typeParams": { 1172 "type": "TSTypeParameterInstantiation", 1173 "params": [ 1174 { 1175 "type": "ETSTypeReference", 1176 "part": { 1177 "type": "ETSTypeReferencePart", 1178 "name": { 1179 "type": "Identifier", 1180 "name": "String", 1181 "decorators": [], 1182 "loc": { 1183 "start": { 1184 "line": 22, 1185 "column": 105, 1186 "program": "generics_7.ets" 1187 }, 1188 "end": { 1189 "line": 22, 1190 "column": 111, 1191 "program": "generics_7.ets" 1192 } 1193 } 1194 }, 1195 "loc": { 1196 "start": { 1197 "line": 22, 1198 "column": 105, 1199 "program": "generics_7.ets" 1200 }, 1201 "end": { 1202 "line": 22, 1203 "column": 114, 1204 "program": "generics_7.ets" 1205 } 1206 } 1207 }, 1208 "loc": { 1209 "start": { 1210 "line": 22, 1211 "column": 105, 1212 "program": "generics_7.ets" 1213 }, 1214 "end": { 1215 "line": 22, 1216 "column": 114, 1217 "program": "generics_7.ets" 1218 } 1219 } 1220 } 1221 ], 1222 "loc": { 1223 "start": { 1224 "line": 22, 1225 "column": 104, 1226 "program": "generics_7.ets" 1227 }, 1228 "end": { 1229 "line": 22, 1230 "column": 114, 1231 "program": "generics_7.ets" 1232 } 1233 } 1234 }, 1235 "loc": { 1236 "start": { 1237 "line": 22, 1238 "column": 100, 1239 "program": "generics_7.ets" 1240 }, 1241 "end": { 1242 "line": 22, 1243 "column": 115, 1244 "program": "generics_7.ets" 1245 } 1246 } 1247 }, 1248 "loc": { 1249 "start": { 1250 "line": 22, 1251 "column": 100, 1252 "program": "generics_7.ets" 1253 }, 1254 "end": { 1255 "line": 22, 1256 "column": 115, 1257 "program": "generics_7.ets" 1258 } 1259 } 1260 } 1261 ], 1262 "loc": { 1263 "start": { 1264 "line": 22, 1265 "column": 91, 1266 "program": "generics_7.ets" 1267 }, 1268 "end": { 1269 "line": 22, 1270 "column": 115, 1271 "program": "generics_7.ets" 1272 } 1273 } 1274 }, 1275 "loc": { 1276 "start": { 1277 "line": 22, 1278 "column": 88, 1279 "program": "generics_7.ets" 1280 }, 1281 "end": { 1282 "line": 22, 1283 "column": 115, 1284 "program": "generics_7.ets" 1285 } 1286 } 1287 }, 1288 "loc": { 1289 "start": { 1290 "line": 22, 1291 "column": 88, 1292 "program": "generics_7.ets" 1293 }, 1294 "end": { 1295 "line": 22, 1296 "column": 115, 1297 "program": "generics_7.ets" 1298 } 1299 } 1300 } 1301 ], 1302 "loc": { 1303 "start": { 1304 "line": 22, 1305 "column": 79, 1306 "program": "generics_7.ets" 1307 }, 1308 "end": { 1309 "line": 22, 1310 "column": 115, 1311 "program": "generics_7.ets" 1312 } 1313 } 1314 }, 1315 "loc": { 1316 "start": { 1317 "line": 22, 1318 "column": 76, 1319 "program": "generics_7.ets" 1320 }, 1321 "end": { 1322 "line": 22, 1323 "column": 115, 1324 "program": "generics_7.ets" 1325 } 1326 } 1327 }, 1328 "loc": { 1329 "start": { 1330 "line": 22, 1331 "column": 76, 1332 "program": "generics_7.ets" 1333 }, 1334 "end": { 1335 "line": 22, 1336 "column": 115, 1337 "program": "generics_7.ets" 1338 } 1339 } 1340 } 1341 ], 1342 "loc": { 1343 "start": { 1344 "line": 22, 1345 "column": 67, 1346 "program": "generics_7.ets" 1347 }, 1348 "end": { 1349 "line": 22, 1350 "column": 115, 1351 "program": "generics_7.ets" 1352 } 1353 } 1354 }, 1355 "loc": { 1356 "start": { 1357 "line": 22, 1358 "column": 64, 1359 "program": "generics_7.ets" 1360 }, 1361 "end": { 1362 "line": 22, 1363 "column": 118, 1364 "program": "generics_7.ets" 1365 } 1366 } 1367 }, 1368 "loc": { 1369 "start": { 1370 "line": 22, 1371 "column": 64, 1372 "program": "generics_7.ets" 1373 }, 1374 "end": { 1375 "line": 22, 1376 "column": 118, 1377 "program": "generics_7.ets" 1378 } 1379 } 1380 }, 1381 "body": { 1382 "type": "BlockStatement", 1383 "statements": [ 1384 { 1385 "type": "ThrowStatement", 1386 "argument": { 1387 "type": "ETSNewClassInstanceExpression", 1388 "typeReference": { 1389 "type": "ETSTypeReference", 1390 "part": { 1391 "type": "ETSTypeReferencePart", 1392 "name": { 1393 "type": "Identifier", 1394 "name": "Error", 1395 "decorators": [], 1396 "loc": { 1397 "start": { 1398 "line": 22, 1399 "column": 131, 1400 "program": "generics_7.ets" 1401 }, 1402 "end": { 1403 "line": 22, 1404 "column": 136, 1405 "program": "generics_7.ets" 1406 } 1407 } 1408 }, 1409 "loc": { 1410 "start": { 1411 "line": 22, 1412 "column": 131, 1413 "program": "generics_7.ets" 1414 }, 1415 "end": { 1416 "line": 22, 1417 "column": 137, 1418 "program": "generics_7.ets" 1419 } 1420 } 1421 }, 1422 "loc": { 1423 "start": { 1424 "line": 22, 1425 "column": 131, 1426 "program": "generics_7.ets" 1427 }, 1428 "end": { 1429 "line": 22, 1430 "column": 137, 1431 "program": "generics_7.ets" 1432 } 1433 } 1434 }, 1435 "arguments": [], 1436 "loc": { 1437 "start": { 1438 "line": 22, 1439 "column": 127, 1440 "program": "generics_7.ets" 1441 }, 1442 "end": { 1443 "line": 22, 1444 "column": 140, 1445 "program": "generics_7.ets" 1446 } 1447 } 1448 }, 1449 "loc": { 1450 "start": { 1451 "line": 22, 1452 "column": 121, 1453 "program": "generics_7.ets" 1454 }, 1455 "end": { 1456 "line": 22, 1457 "column": 140, 1458 "program": "generics_7.ets" 1459 } 1460 } 1461 } 1462 ], 1463 "loc": { 1464 "start": { 1465 "line": 22, 1466 "column": 119, 1467 "program": "generics_7.ets" 1468 }, 1469 "end": { 1470 "line": 22, 1471 "column": 140, 1472 "program": "generics_7.ets" 1473 } 1474 } 1475 }, 1476 "loc": { 1477 "start": { 1478 "line": 22, 1479 "column": 60, 1480 "program": "generics_7.ets" 1481 }, 1482 "end": { 1483 "line": 22, 1484 "column": 140, 1485 "program": "generics_7.ets" 1486 } 1487 } 1488 }, 1489 "loc": { 1490 "start": { 1491 "line": 22, 1492 "column": 60, 1493 "program": "generics_7.ets" 1494 }, 1495 "end": { 1496 "line": 22, 1497 "column": 140, 1498 "program": "generics_7.ets" 1499 } 1500 } 1501 } 1502 ], 1503 "optional": false, 1504 "typeParameters": { 1505 "type": "TSTypeParameterInstantiation", 1506 "params": [ 1507 { 1508 "type": "ETSTypeReference", 1509 "part": { 1510 "type": "ETSTypeReferencePart", 1511 "name": { 1512 "type": "Identifier", 1513 "name": "Tup", 1514 "decorators": [], 1515 "loc": { 1516 "start": { 1517 "line": 22, 1518 "column": 7, 1519 "program": "generics_7.ets" 1520 }, 1521 "end": { 1522 "line": 22, 1523 "column": 10, 1524 "program": "generics_7.ets" 1525 } 1526 } 1527 }, 1528 "typeParams": { 1529 "type": "TSTypeParameterInstantiation", 1530 "params": [ 1531 { 1532 "type": "ETSTypeReference", 1533 "part": { 1534 "type": "ETSTypeReferencePart", 1535 "name": { 1536 "type": "Identifier", 1537 "name": "number", 1538 "decorators": [], 1539 "loc": { 1540 "start": { 1541 "line": 22, 1542 "column": 11, 1543 "program": "generics_7.ets" 1544 }, 1545 "end": { 1546 "line": 22, 1547 "column": 17, 1548 "program": "generics_7.ets" 1549 } 1550 } 1551 }, 1552 "loc": { 1553 "start": { 1554 "line": 22, 1555 "column": 11, 1556 "program": "generics_7.ets" 1557 }, 1558 "end": { 1559 "line": 22, 1560 "column": 18, 1561 "program": "generics_7.ets" 1562 } 1563 } 1564 }, 1565 "loc": { 1566 "start": { 1567 "line": 22, 1568 "column": 11, 1569 "program": "generics_7.ets" 1570 }, 1571 "end": { 1572 "line": 22, 1573 "column": 18, 1574 "program": "generics_7.ets" 1575 } 1576 } 1577 }, 1578 { 1579 "type": "ETSTypeReference", 1580 "part": { 1581 "type": "ETSTypeReferencePart", 1582 "name": { 1583 "type": "Identifier", 1584 "name": "Tup", 1585 "decorators": [], 1586 "loc": { 1587 "start": { 1588 "line": 22, 1589 "column": 19, 1590 "program": "generics_7.ets" 1591 }, 1592 "end": { 1593 "line": 22, 1594 "column": 22, 1595 "program": "generics_7.ets" 1596 } 1597 } 1598 }, 1599 "typeParams": { 1600 "type": "TSTypeParameterInstantiation", 1601 "params": [ 1602 { 1603 "type": "ETSTypeReference", 1604 "part": { 1605 "type": "ETSTypeReferencePart", 1606 "name": { 1607 "type": "Identifier", 1608 "name": "number", 1609 "decorators": [], 1610 "loc": { 1611 "start": { 1612 "line": 22, 1613 "column": 23, 1614 "program": "generics_7.ets" 1615 }, 1616 "end": { 1617 "line": 22, 1618 "column": 29, 1619 "program": "generics_7.ets" 1620 } 1621 } 1622 }, 1623 "loc": { 1624 "start": { 1625 "line": 22, 1626 "column": 23, 1627 "program": "generics_7.ets" 1628 }, 1629 "end": { 1630 "line": 22, 1631 "column": 30, 1632 "program": "generics_7.ets" 1633 } 1634 } 1635 }, 1636 "loc": { 1637 "start": { 1638 "line": 22, 1639 "column": 23, 1640 "program": "generics_7.ets" 1641 }, 1642 "end": { 1643 "line": 22, 1644 "column": 30, 1645 "program": "generics_7.ets" 1646 } 1647 } 1648 }, 1649 { 1650 "type": "ETSTypeReference", 1651 "part": { 1652 "type": "ETSTypeReferencePart", 1653 "name": { 1654 "type": "Identifier", 1655 "name": "Tup", 1656 "decorators": [], 1657 "loc": { 1658 "start": { 1659 "line": 22, 1660 "column": 31, 1661 "program": "generics_7.ets" 1662 }, 1663 "end": { 1664 "line": 22, 1665 "column": 34, 1666 "program": "generics_7.ets" 1667 } 1668 } 1669 }, 1670 "typeParams": { 1671 "type": "TSTypeParameterInstantiation", 1672 "params": [ 1673 { 1674 "type": "ETSTypeReference", 1675 "part": { 1676 "type": "ETSTypeReferencePart", 1677 "name": { 1678 "type": "Identifier", 1679 "name": "number", 1680 "decorators": [], 1681 "loc": { 1682 "start": { 1683 "line": 22, 1684 "column": 35, 1685 "program": "generics_7.ets" 1686 }, 1687 "end": { 1688 "line": 22, 1689 "column": 41, 1690 "program": "generics_7.ets" 1691 } 1692 } 1693 }, 1694 "loc": { 1695 "start": { 1696 "line": 22, 1697 "column": 35, 1698 "program": "generics_7.ets" 1699 }, 1700 "end": { 1701 "line": 22, 1702 "column": 42, 1703 "program": "generics_7.ets" 1704 } 1705 } 1706 }, 1707 "loc": { 1708 "start": { 1709 "line": 22, 1710 "column": 35, 1711 "program": "generics_7.ets" 1712 }, 1713 "end": { 1714 "line": 22, 1715 "column": 42, 1716 "program": "generics_7.ets" 1717 } 1718 } 1719 }, 1720 { 1721 "type": "ETSTypeReference", 1722 "part": { 1723 "type": "ETSTypeReferencePart", 1724 "name": { 1725 "type": "Identifier", 1726 "name": "Tup2", 1727 "decorators": [], 1728 "loc": { 1729 "start": { 1730 "line": 22, 1731 "column": 43, 1732 "program": "generics_7.ets" 1733 }, 1734 "end": { 1735 "line": 22, 1736 "column": 47, 1737 "program": "generics_7.ets" 1738 } 1739 } 1740 }, 1741 "typeParams": { 1742 "type": "TSTypeParameterInstantiation", 1743 "params": [ 1744 { 1745 "type": "ETSTypeReference", 1746 "part": { 1747 "type": "ETSTypeReferencePart", 1748 "name": { 1749 "type": "Identifier", 1750 "name": "String", 1751 "decorators": [], 1752 "loc": { 1753 "start": { 1754 "line": 22, 1755 "column": 48, 1756 "program": "generics_7.ets" 1757 }, 1758 "end": { 1759 "line": 22, 1760 "column": 54, 1761 "program": "generics_7.ets" 1762 } 1763 } 1764 }, 1765 "loc": { 1766 "start": { 1767 "line": 22, 1768 "column": 48, 1769 "program": "generics_7.ets" 1770 }, 1771 "end": { 1772 "line": 22, 1773 "column": 57, 1774 "program": "generics_7.ets" 1775 } 1776 } 1777 }, 1778 "loc": { 1779 "start": { 1780 "line": 22, 1781 "column": 48, 1782 "program": "generics_7.ets" 1783 }, 1784 "end": { 1785 "line": 22, 1786 "column": 57, 1787 "program": "generics_7.ets" 1788 } 1789 } 1790 } 1791 ], 1792 "loc": { 1793 "start": { 1794 "line": 22, 1795 "column": 47, 1796 "program": "generics_7.ets" 1797 }, 1798 "end": { 1799 "line": 22, 1800 "column": 57, 1801 "program": "generics_7.ets" 1802 } 1803 } 1804 }, 1805 "loc": { 1806 "start": { 1807 "line": 22, 1808 "column": 43, 1809 "program": "generics_7.ets" 1810 }, 1811 "end": { 1812 "line": 22, 1813 "column": 58, 1814 "program": "generics_7.ets" 1815 } 1816 } 1817 }, 1818 "loc": { 1819 "start": { 1820 "line": 22, 1821 "column": 43, 1822 "program": "generics_7.ets" 1823 }, 1824 "end": { 1825 "line": 22, 1826 "column": 58, 1827 "program": "generics_7.ets" 1828 } 1829 } 1830 } 1831 ], 1832 "loc": { 1833 "start": { 1834 "line": 22, 1835 "column": 34, 1836 "program": "generics_7.ets" 1837 }, 1838 "end": { 1839 "line": 22, 1840 "column": 58, 1841 "program": "generics_7.ets" 1842 } 1843 } 1844 }, 1845 "loc": { 1846 "start": { 1847 "line": 22, 1848 "column": 31, 1849 "program": "generics_7.ets" 1850 }, 1851 "end": { 1852 "line": 22, 1853 "column": 59, 1854 "program": "generics_7.ets" 1855 } 1856 } 1857 }, 1858 "loc": { 1859 "start": { 1860 "line": 22, 1861 "column": 31, 1862 "program": "generics_7.ets" 1863 }, 1864 "end": { 1865 "line": 22, 1866 "column": 59, 1867 "program": "generics_7.ets" 1868 } 1869 } 1870 } 1871 ], 1872 "loc": { 1873 "start": { 1874 "line": 22, 1875 "column": 22, 1876 "program": "generics_7.ets" 1877 }, 1878 "end": { 1879 "line": 22, 1880 "column": 59, 1881 "program": "generics_7.ets" 1882 } 1883 } 1884 }, 1885 "loc": { 1886 "start": { 1887 "line": 22, 1888 "column": 19, 1889 "program": "generics_7.ets" 1890 }, 1891 "end": { 1892 "line": 22, 1893 "column": 59, 1894 "program": "generics_7.ets" 1895 } 1896 } 1897 }, 1898 "loc": { 1899 "start": { 1900 "line": 22, 1901 "column": 19, 1902 "program": "generics_7.ets" 1903 }, 1904 "end": { 1905 "line": 22, 1906 "column": 59, 1907 "program": "generics_7.ets" 1908 } 1909 } 1910 } 1911 ], 1912 "loc": { 1913 "start": { 1914 "line": 22, 1915 "column": 10, 1916 "program": "generics_7.ets" 1917 }, 1918 "end": { 1919 "line": 22, 1920 "column": 59, 1921 "program": "generics_7.ets" 1922 } 1923 } 1924 }, 1925 "loc": { 1926 "start": { 1927 "line": 22, 1928 "column": 7, 1929 "program": "generics_7.ets" 1930 }, 1931 "end": { 1932 "line": 22, 1933 "column": 59, 1934 "program": "generics_7.ets" 1935 } 1936 } 1937 }, 1938 "loc": { 1939 "start": { 1940 "line": 22, 1941 "column": 7, 1942 "program": "generics_7.ets" 1943 }, 1944 "end": { 1945 "line": 22, 1946 "column": 59, 1947 "program": "generics_7.ets" 1948 } 1949 } 1950 } 1951 ], 1952 "loc": { 1953 "start": { 1954 "line": 22, 1955 "column": 6, 1956 "program": "generics_7.ets" 1957 }, 1958 "end": { 1959 "line": 22, 1960 "column": 59, 1961 "program": "generics_7.ets" 1962 } 1963 } 1964 }, 1965 "loc": { 1966 "start": { 1967 "line": 22, 1968 "column": 3, 1969 "program": "generics_7.ets" 1970 }, 1971 "end": { 1972 "line": 22, 1973 "column": 141, 1974 "program": "generics_7.ets" 1975 } 1976 } 1977 }, 1978 "loc": { 1979 "start": { 1980 "line": 22, 1981 "column": 3, 1982 "program": "generics_7.ets" 1983 }, 1984 "end": { 1985 "line": 22, 1986 "column": 142, 1987 "program": "generics_7.ets" 1988 } 1989 } 1990 } 1991 ], 1992 "loc": { 1993 "start": { 1994 "line": 21, 1995 "column": 23, 1996 "program": "generics_7.ets" 1997 }, 1998 "end": { 1999 "line": 23, 2000 "column": 2, 2001 "program": "generics_7.ets" 2002 } 2003 } 2004 }, 2005 "loc": { 2006 "start": { 2007 "line": 21, 2008 "column": 10, 2009 "program": "generics_7.ets" 2010 }, 2011 "end": { 2012 "line": 23, 2013 "column": 2, 2014 "program": "generics_7.ets" 2015 } 2016 } 2017 }, 2018 "loc": { 2019 "start": { 2020 "line": 21, 2021 "column": 10, 2022 "program": "generics_7.ets" 2023 }, 2024 "end": { 2025 "line": 23, 2026 "column": 2, 2027 "program": "generics_7.ets" 2028 } 2029 } 2030 }, 2031 "overloads": [], 2032 "decorators": [], 2033 "loc": { 2034 "start": { 2035 "line": 21, 2036 "column": 1, 2037 "program": "generics_7.ets" 2038 }, 2039 "end": { 2040 "line": 23, 2041 "column": 2, 2042 "program": "generics_7.ets" 2043 } 2044 } 2045 } 2046 ], 2047 "loc": { 2048 "start": { 2049 "line": 1, 2050 "column": 1, 2051 "program": "generics_7.ets" 2052 }, 2053 "end": { 2054 "line": 1, 2055 "column": 1, 2056 "program": "generics_7.ets" 2057 } 2058 } 2059 }, 2060 "loc": { 2061 "start": { 2062 "line": 1, 2063 "column": 1, 2064 "program": "generics_7.ets" 2065 }, 2066 "end": { 2067 "line": 1, 2068 "column": 1, 2069 "program": "generics_7.ets" 2070 } 2071 } 2072 } 2073 ], 2074 "loc": { 2075 "start": { 2076 "line": 1, 2077 "column": 1, 2078 "program": "generics_7.ets" 2079 }, 2080 "end": { 2081 "line": 25, 2082 "column": 1, 2083 "program": "generics_7.ets" 2084 } 2085 } 2086} 2087