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