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