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