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