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