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