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