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": "x", 325 "typeAnnotation": { 326 "type": "ETSTypeReference", 327 "part": { 328 "type": "ETSTypeReferencePart", 329 "name": { 330 "type": "Identifier", 331 "name": "Object", 332 "decorators": [], 333 "loc": { 334 "start": { 335 "line": 19, 336 "column": 13 337 }, 338 "end": { 339 "line": 19, 340 "column": 19 341 } 342 } 343 }, 344 "loc": { 345 "start": { 346 "line": 19, 347 "column": 13 348 }, 349 "end": { 350 "line": 19, 351 "column": 20 352 } 353 } 354 }, 355 "loc": { 356 "start": { 357 "line": 19, 358 "column": 13 359 }, 360 "end": { 361 "line": 19, 362 "column": 20 363 } 364 } 365 }, 366 "decorators": [], 367 "loc": { 368 "start": { 369 "line": 19, 370 "column": 9 371 }, 372 "end": { 373 "line": 19, 374 "column": 10 375 } 376 } 377 }, 378 "init": null, 379 "loc": { 380 "start": { 381 "line": 19, 382 "column": 9 383 }, 384 "end": { 385 "line": 19, 386 "column": 10 387 } 388 } 389 } 390 ], 391 "kind": "let", 392 "loc": { 393 "start": { 394 "line": 19, 395 "column": 5 396 }, 397 "end": { 398 "line": 19, 399 "column": 20 400 } 401 } 402 }, 403 { 404 "type": "VariableDeclaration", 405 "declarations": [ 406 { 407 "type": "VariableDeclarator", 408 "id": { 409 "type": "Identifier", 410 "name": "an", 411 "typeAnnotation": { 412 "type": "ETSUnionType", 413 "types": [ 414 { 415 "type": "ETSTypeReference", 416 "part": { 417 "type": "ETSTypeReferencePart", 418 "name": { 419 "type": "Identifier", 420 "name": "A", 421 "decorators": [], 422 "loc": { 423 "start": { 424 "line": 20, 425 "column": 14 426 }, 427 "end": { 428 "line": 20, 429 "column": 15 430 } 431 } 432 }, 433 "loc": { 434 "start": { 435 "line": 20, 436 "column": 14 437 }, 438 "end": { 439 "line": 20, 440 "column": 17 441 } 442 } 443 }, 444 "loc": { 445 "start": { 446 "line": 20, 447 "column": 14 448 }, 449 "end": { 450 "line": 20, 451 "column": 17 452 } 453 } 454 }, 455 { 456 "type": "ETSNullType", 457 "loc": { 458 "start": { 459 "line": 20, 460 "column": 18 461 }, 462 "end": { 463 "line": 20, 464 "column": 22 465 } 466 } 467 } 468 ], 469 "loc": { 470 "start": { 471 "line": 20, 472 "column": 14 473 }, 474 "end": { 475 "line": 20, 476 "column": 22 477 } 478 } 479 }, 480 "decorators": [], 481 "loc": { 482 "start": { 483 "line": 20, 484 "column": 9 485 }, 486 "end": { 487 "line": 20, 488 "column": 11 489 } 490 } 491 }, 492 "init": { 493 "type": "ETSNewClassInstanceExpression", 494 "typeReference": { 495 "type": "ETSTypeReference", 496 "part": { 497 "type": "ETSTypeReferencePart", 498 "name": { 499 "type": "Identifier", 500 "name": "A", 501 "decorators": [], 502 "loc": { 503 "start": { 504 "line": 20, 505 "column": 29 506 }, 507 "end": { 508 "line": 20, 509 "column": 30 510 } 511 } 512 }, 513 "loc": { 514 "start": { 515 "line": 20, 516 "column": 29 517 }, 518 "end": { 519 "line": 20, 520 "column": 31 521 } 522 } 523 }, 524 "loc": { 525 "start": { 526 "line": 20, 527 "column": 29 528 }, 529 "end": { 530 "line": 20, 531 "column": 31 532 } 533 } 534 }, 535 "arguments": [], 536 "loc": { 537 "start": { 538 "line": 20, 539 "column": 25 540 }, 541 "end": { 542 "line": 20, 543 "column": 33 544 } 545 } 546 }, 547 "loc": { 548 "start": { 549 "line": 20, 550 "column": 9 551 }, 552 "end": { 553 "line": 20, 554 "column": 33 555 } 556 } 557 } 558 ], 559 "kind": "let", 560 "loc": { 561 "start": { 562 "line": 20, 563 "column": 5 564 }, 565 "end": { 566 "line": 20, 567 "column": 33 568 } 569 } 570 }, 571 { 572 "type": "ExpressionStatement", 573 "expression": { 574 "type": "AssignmentExpression", 575 "operator": "=", 576 "left": { 577 "type": "Identifier", 578 "name": "x", 579 "decorators": [], 580 "loc": { 581 "start": { 582 "line": 22, 583 "column": 5 584 }, 585 "end": { 586 "line": 22, 587 "column": 6 588 } 589 } 590 }, 591 "right": { 592 "type": "Identifier", 593 "name": "an", 594 "decorators": [], 595 "loc": { 596 "start": { 597 "line": 22, 598 "column": 9 599 }, 600 "end": { 601 "line": 22, 602 "column": 11 603 } 604 } 605 }, 606 "loc": { 607 "start": { 608 "line": 22, 609 "column": 5 610 }, 611 "end": { 612 "line": 22, 613 "column": 11 614 } 615 } 616 }, 617 "loc": { 618 "start": { 619 "line": 22, 620 "column": 5 621 }, 622 "end": { 623 "line": 22, 624 "column": 12 625 } 626 } 627 } 628 ], 629 "loc": { 630 "start": { 631 "line": 18, 632 "column": 23 633 }, 634 "end": { 635 "line": 23, 636 "column": 2 637 } 638 } 639 }, 640 "loc": { 641 "start": { 642 "line": 18, 643 "column": 14 644 }, 645 "end": { 646 "line": 23, 647 "column": 2 648 } 649 } 650 }, 651 "loc": { 652 "start": { 653 "line": 18, 654 "column": 14 655 }, 656 "end": { 657 "line": 23, 658 "column": 2 659 } 660 } 661 }, 662 "overloads": [], 663 "decorators": [], 664 "loc": { 665 "start": { 666 "line": 18, 667 "column": 1 668 }, 669 "end": { 670 "line": 23, 671 "column": 2 672 } 673 } 674 } 675 ], 676 "loc": { 677 "start": { 678 "line": 1, 679 "column": 1 680 }, 681 "end": { 682 "line": 1, 683 "column": 1 684 } 685 } 686 }, 687 "loc": { 688 "start": { 689 "line": 1, 690 "column": 1 691 }, 692 "end": { 693 "line": 1, 694 "column": 1 695 } 696 } 697 } 698 ], 699 "loc": { 700 "start": { 701 "line": 1, 702 "column": 1 703 }, 704 "end": { 705 "line": 24, 706 "column": 1 707 } 708 } 709} 710