1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "B", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 18, 14 "column": 7, 15 "program": "identifierReference4.ets" 16 }, 17 "end": { 18 "line": 18, 19 "column": 8, 20 "program": "identifierReference4.ets" 21 } 22 } 23 }, 24 "superClass": null, 25 "implements": [], 26 "body": [ 27 { 28 "type": "ClassProperty", 29 "key": { 30 "type": "Identifier", 31 "name": "a", 32 "decorators": [], 33 "loc": { 34 "start": { 35 "line": 19, 36 "column": 3, 37 "program": "identifierReference4.ets" 38 }, 39 "end": { 40 "line": 19, 41 "column": 4, 42 "program": "identifierReference4.ets" 43 } 44 } 45 }, 46 "value": { 47 "type": "StringLiteral", 48 "value": "", 49 "loc": { 50 "start": { 51 "line": 19, 52 "column": 15, 53 "program": "identifierReference4.ets" 54 }, 55 "end": { 56 "line": 19, 57 "column": 17, 58 "program": "identifierReference4.ets" 59 } 60 } 61 }, 62 "accessibility": "public", 63 "static": false, 64 "readonly": false, 65 "declare": false, 66 "optional": false, 67 "computed": false, 68 "typeAnnotation": { 69 "type": "ETSTypeReference", 70 "part": { 71 "type": "ETSTypeReferencePart", 72 "name": { 73 "type": "Identifier", 74 "name": "String", 75 "decorators": [], 76 "loc": { 77 "start": { 78 "line": 19, 79 "column": 6, 80 "program": "identifierReference4.ets" 81 }, 82 "end": { 83 "line": 19, 84 "column": 12, 85 "program": "identifierReference4.ets" 86 } 87 } 88 }, 89 "loc": { 90 "start": { 91 "line": 19, 92 "column": 6, 93 "program": "identifierReference4.ets" 94 }, 95 "end": { 96 "line": 19, 97 "column": 14, 98 "program": "identifierReference4.ets" 99 } 100 } 101 }, 102 "loc": { 103 "start": { 104 "line": 19, 105 "column": 6, 106 "program": "identifierReference4.ets" 107 }, 108 "end": { 109 "line": 19, 110 "column": 14, 111 "program": "identifierReference4.ets" 112 } 113 } 114 }, 115 "definite": false, 116 "decorators": [], 117 "loc": { 118 "start": { 119 "line": 19, 120 "column": 3, 121 "program": "identifierReference4.ets" 122 }, 123 "end": { 124 "line": 19, 125 "column": 17, 126 "program": "identifierReference4.ets" 127 } 128 } 129 }, 130 { 131 "type": "MethodDefinition", 132 "key": { 133 "type": "Identifier", 134 "name": "constructor", 135 "decorators": [], 136 "loc": { 137 "start": { 138 "line": 18, 139 "column": 10, 140 "program": "identifierReference4.ets" 141 }, 142 "end": { 143 "line": 18, 144 "column": 10, 145 "program": "identifierReference4.ets" 146 } 147 } 148 }, 149 "kind": "constructor", 150 "static": false, 151 "optional": false, 152 "computed": false, 153 "value": { 154 "type": "FunctionExpression", 155 "function": { 156 "type": "ScriptFunction", 157 "id": { 158 "type": "Identifier", 159 "name": "constructor", 160 "decorators": [], 161 "loc": { 162 "start": { 163 "line": 18, 164 "column": 10, 165 "program": "identifierReference4.ets" 166 }, 167 "end": { 168 "line": 18, 169 "column": 10, 170 "program": "identifierReference4.ets" 171 } 172 } 173 }, 174 "generator": false, 175 "async": false, 176 "expression": false, 177 "params": [], 178 "body": { 179 "type": "BlockStatement", 180 "statements": [], 181 "loc": { 182 "start": { 183 "line": 18, 184 "column": 10, 185 "program": "identifierReference4.ets" 186 }, 187 "end": { 188 "line": 18, 189 "column": 10, 190 "program": "identifierReference4.ets" 191 } 192 } 193 }, 194 "loc": { 195 "start": { 196 "line": 18, 197 "column": 10, 198 "program": "identifierReference4.ets" 199 }, 200 "end": { 201 "line": 18, 202 "column": 10, 203 "program": "identifierReference4.ets" 204 } 205 } 206 }, 207 "loc": { 208 "start": { 209 "line": 18, 210 "column": 10, 211 "program": "identifierReference4.ets" 212 }, 213 "end": { 214 "line": 18, 215 "column": 10, 216 "program": "identifierReference4.ets" 217 } 218 } 219 }, 220 "overloads": [], 221 "decorators": [], 222 "loc": { 223 "start": { 224 "line": 1, 225 "column": 1, 226 "program": null 227 }, 228 "end": { 229 "line": 1, 230 "column": 1, 231 "program": null 232 } 233 } 234 } 235 ], 236 "loc": { 237 "start": { 238 "line": 18, 239 "column": 9, 240 "program": "identifierReference4.ets" 241 }, 242 "end": { 243 "line": 22, 244 "column": 6, 245 "program": "identifierReference4.ets" 246 } 247 } 248 }, 249 "loc": { 250 "start": { 251 "line": 18, 252 "column": 1, 253 "program": "identifierReference4.ets" 254 }, 255 "end": { 256 "line": 22, 257 "column": 6, 258 "program": "identifierReference4.ets" 259 } 260 } 261 }, 262 { 263 "type": "ClassDeclaration", 264 "definition": { 265 "id": { 266 "type": "Identifier", 267 "name": "A", 268 "decorators": [], 269 "loc": { 270 "start": { 271 "line": 22, 272 "column": 7, 273 "program": "identifierReference4.ets" 274 }, 275 "end": { 276 "line": 22, 277 "column": 8, 278 "program": "identifierReference4.ets" 279 } 280 } 281 }, 282 "superClass": { 283 "type": "ETSTypeReference", 284 "part": { 285 "type": "ETSTypeReferencePart", 286 "name": { 287 "type": "Identifier", 288 "name": "B", 289 "decorators": [], 290 "loc": { 291 "start": { 292 "line": 22, 293 "column": 17, 294 "program": "identifierReference4.ets" 295 }, 296 "end": { 297 "line": 22, 298 "column": 18, 299 "program": "identifierReference4.ets" 300 } 301 } 302 }, 303 "loc": { 304 "start": { 305 "line": 22, 306 "column": 17, 307 "program": "identifierReference4.ets" 308 }, 309 "end": { 310 "line": 22, 311 "column": 20, 312 "program": "identifierReference4.ets" 313 } 314 } 315 }, 316 "loc": { 317 "start": { 318 "line": 22, 319 "column": 17, 320 "program": "identifierReference4.ets" 321 }, 322 "end": { 323 "line": 22, 324 "column": 20, 325 "program": "identifierReference4.ets" 326 } 327 } 328 }, 329 "implements": [], 330 "body": [ 331 { 332 "type": "MethodDefinition", 333 "key": { 334 "type": "Identifier", 335 "name": "foo", 336 "decorators": [], 337 "loc": { 338 "start": { 339 "line": 23, 340 "column": 3, 341 "program": "identifierReference4.ets" 342 }, 343 "end": { 344 "line": 23, 345 "column": 6, 346 "program": "identifierReference4.ets" 347 } 348 } 349 }, 350 "kind": "method", 351 "accessibility": "public", 352 "static": false, 353 "optional": false, 354 "computed": false, 355 "value": { 356 "type": "FunctionExpression", 357 "function": { 358 "type": "ScriptFunction", 359 "id": { 360 "type": "Identifier", 361 "name": "foo", 362 "decorators": [], 363 "loc": { 364 "start": { 365 "line": 23, 366 "column": 3, 367 "program": "identifierReference4.ets" 368 }, 369 "end": { 370 "line": 23, 371 "column": 6, 372 "program": "identifierReference4.ets" 373 } 374 } 375 }, 376 "generator": false, 377 "async": false, 378 "expression": false, 379 "params": [], 380 "returnType": { 381 "type": "ETSPrimitiveType", 382 "loc": { 383 "start": { 384 "line": 23, 385 "column": 10, 386 "program": "identifierReference4.ets" 387 }, 388 "end": { 389 "line": 23, 390 "column": 14, 391 "program": "identifierReference4.ets" 392 } 393 } 394 }, 395 "body": { 396 "type": "BlockStatement", 397 "statements": [ 398 { 399 "type": "ExpressionStatement", 400 "expression": { 401 "type": "AssignmentExpression", 402 "operator": "=", 403 "left": { 404 "type": "Identifier", 405 "name": "a", 406 "decorators": [], 407 "loc": { 408 "start": { 409 "line": 24, 410 "column": 5, 411 "program": "identifierReference4.ets" 412 }, 413 "end": { 414 "line": 24, 415 "column": 6, 416 "program": "identifierReference4.ets" 417 } 418 } 419 }, 420 "right": { 421 "type": "NumberLiteral", 422 "value": 12, 423 "loc": { 424 "start": { 425 "line": 24, 426 "column": 9, 427 "program": "identifierReference4.ets" 428 }, 429 "end": { 430 "line": 24, 431 "column": 11, 432 "program": "identifierReference4.ets" 433 } 434 } 435 }, 436 "loc": { 437 "start": { 438 "line": 24, 439 "column": 5, 440 "program": "identifierReference4.ets" 441 }, 442 "end": { 443 "line": 24, 444 "column": 11, 445 "program": "identifierReference4.ets" 446 } 447 } 448 }, 449 "loc": { 450 "start": { 451 "line": 24, 452 "column": 5, 453 "program": "identifierReference4.ets" 454 }, 455 "end": { 456 "line": 24, 457 "column": 12, 458 "program": "identifierReference4.ets" 459 } 460 } 461 } 462 ], 463 "loc": { 464 "start": { 465 "line": 23, 466 "column": 15, 467 "program": "identifierReference4.ets" 468 }, 469 "end": { 470 "line": 25, 471 "column": 4, 472 "program": "identifierReference4.ets" 473 } 474 } 475 }, 476 "loc": { 477 "start": { 478 "line": 23, 479 "column": 6, 480 "program": "identifierReference4.ets" 481 }, 482 "end": { 483 "line": 25, 484 "column": 4, 485 "program": "identifierReference4.ets" 486 } 487 } 488 }, 489 "loc": { 490 "start": { 491 "line": 23, 492 "column": 6, 493 "program": "identifierReference4.ets" 494 }, 495 "end": { 496 "line": 25, 497 "column": 4, 498 "program": "identifierReference4.ets" 499 } 500 } 501 }, 502 "overloads": [], 503 "decorators": [], 504 "loc": { 505 "start": { 506 "line": 23, 507 "column": 3, 508 "program": "identifierReference4.ets" 509 }, 510 "end": { 511 "line": 25, 512 "column": 4, 513 "program": "identifierReference4.ets" 514 } 515 } 516 }, 517 { 518 "type": "MethodDefinition", 519 "key": { 520 "type": "Identifier", 521 "name": "constructor", 522 "decorators": [], 523 "loc": { 524 "start": { 525 "line": 22, 526 "column": 20, 527 "program": "identifierReference4.ets" 528 }, 529 "end": { 530 "line": 22, 531 "column": 20, 532 "program": "identifierReference4.ets" 533 } 534 } 535 }, 536 "kind": "constructor", 537 "static": false, 538 "optional": false, 539 "computed": false, 540 "value": { 541 "type": "FunctionExpression", 542 "function": { 543 "type": "ScriptFunction", 544 "id": { 545 "type": "Identifier", 546 "name": "constructor", 547 "decorators": [], 548 "loc": { 549 "start": { 550 "line": 22, 551 "column": 20, 552 "program": "identifierReference4.ets" 553 }, 554 "end": { 555 "line": 22, 556 "column": 20, 557 "program": "identifierReference4.ets" 558 } 559 } 560 }, 561 "generator": false, 562 "async": false, 563 "expression": false, 564 "params": [], 565 "body": { 566 "type": "BlockStatement", 567 "statements": [], 568 "loc": { 569 "start": { 570 "line": 22, 571 "column": 20, 572 "program": "identifierReference4.ets" 573 }, 574 "end": { 575 "line": 22, 576 "column": 20, 577 "program": "identifierReference4.ets" 578 } 579 } 580 }, 581 "loc": { 582 "start": { 583 "line": 22, 584 "column": 20, 585 "program": "identifierReference4.ets" 586 }, 587 "end": { 588 "line": 22, 589 "column": 20, 590 "program": "identifierReference4.ets" 591 } 592 } 593 }, 594 "loc": { 595 "start": { 596 "line": 22, 597 "column": 20, 598 "program": "identifierReference4.ets" 599 }, 600 "end": { 601 "line": 22, 602 "column": 20, 603 "program": "identifierReference4.ets" 604 } 605 } 606 }, 607 "overloads": [], 608 "decorators": [], 609 "loc": { 610 "start": { 611 "line": 1, 612 "column": 1, 613 "program": null 614 }, 615 "end": { 616 "line": 1, 617 "column": 1, 618 "program": null 619 } 620 } 621 } 622 ], 623 "loc": { 624 "start": { 625 "line": 22, 626 "column": 19, 627 "program": "identifierReference4.ets" 628 }, 629 "end": { 630 "line": 27, 631 "column": 1, 632 "program": "identifierReference4.ets" 633 } 634 } 635 }, 636 "loc": { 637 "start": { 638 "line": 22, 639 "column": 1, 640 "program": "identifierReference4.ets" 641 }, 642 "end": { 643 "line": 27, 644 "column": 1, 645 "program": "identifierReference4.ets" 646 } 647 } 648 }, 649 { 650 "type": "ClassDeclaration", 651 "definition": { 652 "id": { 653 "type": "Identifier", 654 "name": "ETSGLOBAL", 655 "decorators": [], 656 "loc": { 657 "start": { 658 "line": 1, 659 "column": 1, 660 "program": "identifierReference4.ets" 661 }, 662 "end": { 663 "line": 1, 664 "column": 1, 665 "program": "identifierReference4.ets" 666 } 667 } 668 }, 669 "superClass": null, 670 "implements": [], 671 "body": [ 672 { 673 "type": "MethodDefinition", 674 "key": { 675 "type": "Identifier", 676 "name": "main", 677 "decorators": [], 678 "loc": { 679 "start": { 680 "line": 1, 681 "column": 1, 682 "program": null 683 }, 684 "end": { 685 "line": 1, 686 "column": 1, 687 "program": null 688 } 689 } 690 }, 691 "kind": "method", 692 "accessibility": "public", 693 "static": true, 694 "optional": false, 695 "computed": false, 696 "value": { 697 "type": "FunctionExpression", 698 "function": { 699 "type": "ScriptFunction", 700 "id": { 701 "type": "Identifier", 702 "name": "main", 703 "decorators": [], 704 "loc": { 705 "start": { 706 "line": 1, 707 "column": 1, 708 "program": null 709 }, 710 "end": { 711 "line": 1, 712 "column": 1, 713 "program": null 714 } 715 } 716 }, 717 "generator": false, 718 "async": false, 719 "expression": false, 720 "params": [], 721 "body": { 722 "type": "BlockStatement", 723 "statements": [], 724 "loc": { 725 "start": { 726 "line": 1, 727 "column": 1, 728 "program": null 729 }, 730 "end": { 731 "line": 1, 732 "column": 1, 733 "program": null 734 } 735 } 736 }, 737 "loc": { 738 "start": { 739 "line": 1, 740 "column": 1, 741 "program": null 742 }, 743 "end": { 744 "line": 1, 745 "column": 1, 746 "program": null 747 } 748 } 749 }, 750 "loc": { 751 "start": { 752 "line": 1, 753 "column": 1, 754 "program": null 755 }, 756 "end": { 757 "line": 1, 758 "column": 1, 759 "program": null 760 } 761 } 762 }, 763 "overloads": [], 764 "decorators": [], 765 "loc": { 766 "start": { 767 "line": 1, 768 "column": 1, 769 "program": "identifierReference4.ets" 770 }, 771 "end": { 772 "line": 1, 773 "column": 1, 774 "program": "identifierReference4.ets" 775 } 776 } 777 }, 778 { 779 "type": "MethodDefinition", 780 "key": { 781 "type": "Identifier", 782 "name": "_$init$_", 783 "decorators": [], 784 "loc": { 785 "start": { 786 "line": 1, 787 "column": 1, 788 "program": null 789 }, 790 "end": { 791 "line": 1, 792 "column": 1, 793 "program": null 794 } 795 } 796 }, 797 "kind": "method", 798 "accessibility": "public", 799 "static": true, 800 "optional": false, 801 "computed": false, 802 "value": { 803 "type": "FunctionExpression", 804 "function": { 805 "type": "ScriptFunction", 806 "id": { 807 "type": "Identifier", 808 "name": "_$init$_", 809 "decorators": [], 810 "loc": { 811 "start": { 812 "line": 1, 813 "column": 1, 814 "program": null 815 }, 816 "end": { 817 "line": 1, 818 "column": 1, 819 "program": null 820 } 821 } 822 }, 823 "generator": false, 824 "async": false, 825 "expression": false, 826 "params": [], 827 "body": { 828 "type": "BlockStatement", 829 "statements": [ 830 { 831 "type": "ExpressionStatement", 832 "expression": { 833 "type": "AssignmentExpression", 834 "operator": "=", 835 "left": { 836 "type": "Identifier", 837 "name": "a", 838 "decorators": [], 839 "loc": { 840 "start": { 841 "line": 16, 842 "column": 5, 843 "program": "identifierReference4.ets" 844 }, 845 "end": { 846 "line": 16, 847 "column": 6, 848 "program": "identifierReference4.ets" 849 } 850 } 851 }, 852 "right": { 853 "type": "NumberLiteral", 854 "value": 1, 855 "loc": { 856 "start": { 857 "line": 16, 858 "column": 15, 859 "program": "identifierReference4.ets" 860 }, 861 "end": { 862 "line": 16, 863 "column": 16, 864 "program": "identifierReference4.ets" 865 } 866 } 867 }, 868 "loc": { 869 "start": { 870 "line": 16, 871 "column": 5, 872 "program": "identifierReference4.ets" 873 }, 874 "end": { 875 "line": 16, 876 "column": 16, 877 "program": "identifierReference4.ets" 878 } 879 } 880 }, 881 "loc": { 882 "start": { 883 "line": 16, 884 "column": 5, 885 "program": "identifierReference4.ets" 886 }, 887 "end": { 888 "line": 16, 889 "column": 16, 890 "program": "identifierReference4.ets" 891 } 892 } 893 } 894 ], 895 "loc": { 896 "start": { 897 "line": 1, 898 "column": 1, 899 "program": null 900 }, 901 "end": { 902 "line": 1, 903 "column": 1, 904 "program": null 905 } 906 } 907 }, 908 "loc": { 909 "start": { 910 "line": 1, 911 "column": 1, 912 "program": null 913 }, 914 "end": { 915 "line": 1, 916 "column": 1, 917 "program": null 918 } 919 } 920 }, 921 "loc": { 922 "start": { 923 "line": 1, 924 "column": 1, 925 "program": null 926 }, 927 "end": { 928 "line": 1, 929 "column": 1, 930 "program": null 931 } 932 } 933 }, 934 "overloads": [], 935 "decorators": [], 936 "loc": { 937 "start": { 938 "line": 1, 939 "column": 1, 940 "program": "identifierReference4.ets" 941 }, 942 "end": { 943 "line": 1, 944 "column": 1, 945 "program": "identifierReference4.ets" 946 } 947 } 948 }, 949 { 950 "type": "ClassProperty", 951 "key": { 952 "type": "Identifier", 953 "name": "a", 954 "decorators": [], 955 "loc": { 956 "start": { 957 "line": 16, 958 "column": 5, 959 "program": "identifierReference4.ets" 960 }, 961 "end": { 962 "line": 16, 963 "column": 6, 964 "program": "identifierReference4.ets" 965 } 966 } 967 }, 968 "accessibility": "public", 969 "static": true, 970 "readonly": false, 971 "declare": false, 972 "optional": false, 973 "computed": false, 974 "typeAnnotation": { 975 "type": "ETSPrimitiveType", 976 "loc": { 977 "start": { 978 "line": 16, 979 "column": 8, 980 "program": "identifierReference4.ets" 981 }, 982 "end": { 983 "line": 16, 984 "column": 11, 985 "program": "identifierReference4.ets" 986 } 987 } 988 }, 989 "definite": false, 990 "decorators": [], 991 "loc": { 992 "start": { 993 "line": 16, 994 "column": 5, 995 "program": "identifierReference4.ets" 996 }, 997 "end": { 998 "line": 16, 999 "column": 16, 1000 "program": "identifierReference4.ets" 1001 } 1002 } 1003 } 1004 ], 1005 "loc": { 1006 "start": { 1007 "line": 1, 1008 "column": 1, 1009 "program": "identifierReference4.ets" 1010 }, 1011 "end": { 1012 "line": 1, 1013 "column": 1, 1014 "program": "identifierReference4.ets" 1015 } 1016 } 1017 }, 1018 "loc": { 1019 "start": { 1020 "line": 1, 1021 "column": 1, 1022 "program": "identifierReference4.ets" 1023 }, 1024 "end": { 1025 "line": 1, 1026 "column": 1, 1027 "program": "identifierReference4.ets" 1028 } 1029 } 1030 } 1031 ], 1032 "loc": { 1033 "start": { 1034 "line": 1, 1035 "column": 1, 1036 "program": "identifierReference4.ets" 1037 }, 1038 "end": { 1039 "line": 27, 1040 "column": 1, 1041 "program": "identifierReference4.ets" 1042 } 1043 } 1044} 1045