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