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