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