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