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