1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "X", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 21, 14 "column": 7, 15 "program": "generics_implicit_lambda1.ets" 16 }, 17 "end": { 18 "line": 21, 19 "column": 8, 20 "program": "generics_implicit_lambda1.ets" 21 } 22 } 23 }, 24 "superClass": null, 25 "implements": [], 26 "body": [ 27 { 28 "type": "MethodDefinition", 29 "key": { 30 "type": "Identifier", 31 "name": "foo", 32 "decorators": [], 33 "loc": { 34 "start": { 35 "line": 22, 36 "column": 12, 37 "program": "generics_implicit_lambda1.ets" 38 }, 39 "end": { 40 "line": 22, 41 "column": 15, 42 "program": "generics_implicit_lambda1.ets" 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": "foo", 58 "decorators": [], 59 "loc": { 60 "start": { 61 "line": 22, 62 "column": 12, 63 "program": "generics_implicit_lambda1.ets" 64 }, 65 "end": { 66 "line": 22, 67 "column": 15, 68 "program": "generics_implicit_lambda1.ets" 69 } 70 } 71 }, 72 "generator": false, 73 "async": false, 74 "expression": false, 75 "params": [ 76 { 77 "type": "ETSParameterExpression", 78 "name": { 79 "type": "Identifier", 80 "name": "first", 81 "typeAnnotation": { 82 "type": "ETSFunctionType", 83 "params": [], 84 "returnType": { 85 "type": "ETSTypeReference", 86 "part": { 87 "type": "ETSTypeReferencePart", 88 "name": { 89 "type": "Identifier", 90 "name": "T", 91 "decorators": [], 92 "loc": { 93 "start": { 94 "line": 22, 95 "column": 32, 96 "program": "generics_implicit_lambda1.ets" 97 }, 98 "end": { 99 "line": 22, 100 "column": 33, 101 "program": "generics_implicit_lambda1.ets" 102 } 103 } 104 }, 105 "loc": { 106 "start": { 107 "line": 22, 108 "column": 32, 109 "program": "generics_implicit_lambda1.ets" 110 }, 111 "end": { 112 "line": 22, 113 "column": 34, 114 "program": "generics_implicit_lambda1.ets" 115 } 116 } 117 }, 118 "loc": { 119 "start": { 120 "line": 22, 121 "column": 32, 122 "program": "generics_implicit_lambda1.ets" 123 }, 124 "end": { 125 "line": 22, 126 "column": 34, 127 "program": "generics_implicit_lambda1.ets" 128 } 129 } 130 }, 131 "loc": { 132 "start": { 133 "line": 22, 134 "column": 26, 135 "program": "generics_implicit_lambda1.ets" 136 }, 137 "end": { 138 "line": 22, 139 "column": 34, 140 "program": "generics_implicit_lambda1.ets" 141 } 142 } 143 }, 144 "decorators": [], 145 "loc": { 146 "start": { 147 "line": 22, 148 "column": 19, 149 "program": "generics_implicit_lambda1.ets" 150 }, 151 "end": { 152 "line": 22, 153 "column": 34, 154 "program": "generics_implicit_lambda1.ets" 155 } 156 } 157 }, 158 "loc": { 159 "start": { 160 "line": 22, 161 "column": 19, 162 "program": "generics_implicit_lambda1.ets" 163 }, 164 "end": { 165 "line": 22, 166 "column": 34, 167 "program": "generics_implicit_lambda1.ets" 168 } 169 } 170 }, 171 { 172 "type": "ETSParameterExpression", 173 "name": { 174 "type": "Identifier", 175 "name": "second", 176 "typeAnnotation": { 177 "type": "ETSFunctionType", 178 "params": [], 179 "returnType": { 180 "type": "ETSPrimitiveType", 181 "loc": { 182 "start": { 183 "line": 22, 184 "column": 49, 185 "program": "generics_implicit_lambda1.ets" 186 }, 187 "end": { 188 "line": 22, 189 "column": 53, 190 "program": "generics_implicit_lambda1.ets" 191 } 192 } 193 }, 194 "loc": { 195 "start": { 196 "line": 22, 197 "column": 43, 198 "program": "generics_implicit_lambda1.ets" 199 }, 200 "end": { 201 "line": 22, 202 "column": 53, 203 "program": "generics_implicit_lambda1.ets" 204 } 205 } 206 }, 207 "decorators": [], 208 "loc": { 209 "start": { 210 "line": 22, 211 "column": 35, 212 "program": "generics_implicit_lambda1.ets" 213 }, 214 "end": { 215 "line": 22, 216 "column": 53, 217 "program": "generics_implicit_lambda1.ets" 218 } 219 } 220 }, 221 "loc": { 222 "start": { 223 "line": 22, 224 "column": 35, 225 "program": "generics_implicit_lambda1.ets" 226 }, 227 "end": { 228 "line": 22, 229 "column": 53, 230 "program": "generics_implicit_lambda1.ets" 231 } 232 } 233 } 234 ], 235 "returnType": { 236 "type": "ETSTypeReference", 237 "part": { 238 "type": "ETSTypeReferencePart", 239 "name": { 240 "type": "Identifier", 241 "name": "T", 242 "decorators": [], 243 "loc": { 244 "start": { 245 "line": 22, 246 "column": 56, 247 "program": "generics_implicit_lambda1.ets" 248 }, 249 "end": { 250 "line": 22, 251 "column": 57, 252 "program": "generics_implicit_lambda1.ets" 253 } 254 } 255 }, 256 "loc": { 257 "start": { 258 "line": 22, 259 "column": 56, 260 "program": "generics_implicit_lambda1.ets" 261 }, 262 "end": { 263 "line": 22, 264 "column": 59, 265 "program": "generics_implicit_lambda1.ets" 266 } 267 } 268 }, 269 "loc": { 270 "start": { 271 "line": 22, 272 "column": 56, 273 "program": "generics_implicit_lambda1.ets" 274 }, 275 "end": { 276 "line": 22, 277 "column": 59, 278 "program": "generics_implicit_lambda1.ets" 279 } 280 } 281 }, 282 "typeParameters": { 283 "type": "TSTypeParameterDeclaration", 284 "params": [ 285 { 286 "type": "TSTypeParameter", 287 "name": { 288 "type": "Identifier", 289 "name": "T", 290 "decorators": [], 291 "loc": { 292 "start": { 293 "line": 22, 294 "column": 16, 295 "program": "generics_implicit_lambda1.ets" 296 }, 297 "end": { 298 "line": 22, 299 "column": 17, 300 "program": "generics_implicit_lambda1.ets" 301 } 302 } 303 }, 304 "loc": { 305 "start": { 306 "line": 22, 307 "column": 16, 308 "program": "generics_implicit_lambda1.ets" 309 }, 310 "end": { 311 "line": 22, 312 "column": 18, 313 "program": "generics_implicit_lambda1.ets" 314 } 315 } 316 } 317 ], 318 "loc": { 319 "start": { 320 "line": 22, 321 "column": 15, 322 "program": "generics_implicit_lambda1.ets" 323 }, 324 "end": { 325 "line": 22, 326 "column": 18, 327 "program": "generics_implicit_lambda1.ets" 328 } 329 } 330 }, 331 "body": { 332 "type": "BlockStatement", 333 "statements": [ 334 { 335 "type": "VariableDeclaration", 336 "declarations": [ 337 { 338 "type": "VariableDeclarator", 339 "id": { 340 "type": "Identifier", 341 "name": "instance", 342 "decorators": [], 343 "loc": { 344 "start": { 345 "line": 23, 346 "column": 15, 347 "program": "generics_implicit_lambda1.ets" 348 }, 349 "end": { 350 "line": 23, 351 "column": 23, 352 "program": "generics_implicit_lambda1.ets" 353 } 354 } 355 }, 356 "init": { 357 "type": "CallExpression", 358 "callee": { 359 "type": "Identifier", 360 "name": "first", 361 "decorators": [], 362 "loc": { 363 "start": { 364 "line": 23, 365 "column": 26, 366 "program": "generics_implicit_lambda1.ets" 367 }, 368 "end": { 369 "line": 23, 370 "column": 31, 371 "program": "generics_implicit_lambda1.ets" 372 } 373 } 374 }, 375 "arguments": [], 376 "optional": false, 377 "loc": { 378 "start": { 379 "line": 23, 380 "column": 26, 381 "program": "generics_implicit_lambda1.ets" 382 }, 383 "end": { 384 "line": 23, 385 "column": 33, 386 "program": "generics_implicit_lambda1.ets" 387 } 388 } 389 }, 390 "loc": { 391 "start": { 392 "line": 23, 393 "column": 15, 394 "program": "generics_implicit_lambda1.ets" 395 }, 396 "end": { 397 "line": 23, 398 "column": 33, 399 "program": "generics_implicit_lambda1.ets" 400 } 401 } 402 } 403 ], 404 "kind": "const", 405 "loc": { 406 "start": { 407 "line": 23, 408 "column": 9, 409 "program": "generics_implicit_lambda1.ets" 410 }, 411 "end": { 412 "line": 23, 413 "column": 33, 414 "program": "generics_implicit_lambda1.ets" 415 } 416 } 417 }, 418 { 419 "type": "ExpressionStatement", 420 "expression": { 421 "type": "CallExpression", 422 "callee": { 423 "type": "Identifier", 424 "name": "second", 425 "decorators": [], 426 "loc": { 427 "start": { 428 "line": 24, 429 "column": 9, 430 "program": "generics_implicit_lambda1.ets" 431 }, 432 "end": { 433 "line": 24, 434 "column": 15, 435 "program": "generics_implicit_lambda1.ets" 436 } 437 } 438 }, 439 "arguments": [], 440 "optional": false, 441 "loc": { 442 "start": { 443 "line": 24, 444 "column": 9, 445 "program": "generics_implicit_lambda1.ets" 446 }, 447 "end": { 448 "line": 24, 449 "column": 17, 450 "program": "generics_implicit_lambda1.ets" 451 } 452 } 453 }, 454 "loc": { 455 "start": { 456 "line": 24, 457 "column": 9, 458 "program": "generics_implicit_lambda1.ets" 459 }, 460 "end": { 461 "line": 24, 462 "column": 17, 463 "program": "generics_implicit_lambda1.ets" 464 } 465 } 466 }, 467 { 468 "type": "ReturnStatement", 469 "argument": { 470 "type": "Identifier", 471 "name": "instance", 472 "decorators": [], 473 "loc": { 474 "start": { 475 "line": 25, 476 "column": 16, 477 "program": "generics_implicit_lambda1.ets" 478 }, 479 "end": { 480 "line": 25, 481 "column": 24, 482 "program": "generics_implicit_lambda1.ets" 483 } 484 } 485 }, 486 "loc": { 487 "start": { 488 "line": 25, 489 "column": 9, 490 "program": "generics_implicit_lambda1.ets" 491 }, 492 "end": { 493 "line": 25, 494 "column": 24, 495 "program": "generics_implicit_lambda1.ets" 496 } 497 } 498 } 499 ], 500 "loc": { 501 "start": { 502 "line": 22, 503 "column": 58, 504 "program": "generics_implicit_lambda1.ets" 505 }, 506 "end": { 507 "line": 26, 508 "column": 6, 509 "program": "generics_implicit_lambda1.ets" 510 } 511 } 512 }, 513 "loc": { 514 "start": { 515 "line": 22, 516 "column": 15, 517 "program": "generics_implicit_lambda1.ets" 518 }, 519 "end": { 520 "line": 26, 521 "column": 6, 522 "program": "generics_implicit_lambda1.ets" 523 } 524 } 525 }, 526 "loc": { 527 "start": { 528 "line": 22, 529 "column": 15, 530 "program": "generics_implicit_lambda1.ets" 531 }, 532 "end": { 533 "line": 26, 534 "column": 6, 535 "program": "generics_implicit_lambda1.ets" 536 } 537 } 538 }, 539 "overloads": [], 540 "decorators": [], 541 "loc": { 542 "start": { 543 "line": 22, 544 "column": 5, 545 "program": "generics_implicit_lambda1.ets" 546 }, 547 "end": { 548 "line": 26, 549 "column": 6, 550 "program": "generics_implicit_lambda1.ets" 551 } 552 } 553 }, 554 { 555 "type": "MethodDefinition", 556 "key": { 557 "type": "Identifier", 558 "name": "$_invoke", 559 "decorators": [], 560 "loc": { 561 "start": { 562 "line": 28, 563 "column": 12, 564 "program": "generics_implicit_lambda1.ets" 565 }, 566 "end": { 567 "line": 28, 568 "column": 20, 569 "program": "generics_implicit_lambda1.ets" 570 } 571 } 572 }, 573 "kind": "method", 574 "accessibility": "public", 575 "static": true, 576 "optional": false, 577 "computed": false, 578 "value": { 579 "type": "FunctionExpression", 580 "function": { 581 "type": "ScriptFunction", 582 "id": { 583 "type": "Identifier", 584 "name": "$_invoke", 585 "decorators": [], 586 "loc": { 587 "start": { 588 "line": 28, 589 "column": 12, 590 "program": "generics_implicit_lambda1.ets" 591 }, 592 "end": { 593 "line": 28, 594 "column": 20, 595 "program": "generics_implicit_lambda1.ets" 596 } 597 } 598 }, 599 "generator": false, 600 "async": false, 601 "expression": false, 602 "params": [ 603 { 604 "type": "ETSParameterExpression", 605 "name": { 606 "type": "Identifier", 607 "name": "first", 608 "typeAnnotation": { 609 "type": "ETSFunctionType", 610 "params": [], 611 "returnType": { 612 "type": "ETSTypeReference", 613 "part": { 614 "type": "ETSTypeReferencePart", 615 "name": { 616 "type": "Identifier", 617 "name": "T", 618 "decorators": [], 619 "loc": { 620 "start": { 621 "line": 28, 622 "column": 37, 623 "program": "generics_implicit_lambda1.ets" 624 }, 625 "end": { 626 "line": 28, 627 "column": 38, 628 "program": "generics_implicit_lambda1.ets" 629 } 630 } 631 }, 632 "loc": { 633 "start": { 634 "line": 28, 635 "column": 37, 636 "program": "generics_implicit_lambda1.ets" 637 }, 638 "end": { 639 "line": 28, 640 "column": 39, 641 "program": "generics_implicit_lambda1.ets" 642 } 643 } 644 }, 645 "loc": { 646 "start": { 647 "line": 28, 648 "column": 37, 649 "program": "generics_implicit_lambda1.ets" 650 }, 651 "end": { 652 "line": 28, 653 "column": 39, 654 "program": "generics_implicit_lambda1.ets" 655 } 656 } 657 }, 658 "loc": { 659 "start": { 660 "line": 28, 661 "column": 31, 662 "program": "generics_implicit_lambda1.ets" 663 }, 664 "end": { 665 "line": 28, 666 "column": 39, 667 "program": "generics_implicit_lambda1.ets" 668 } 669 } 670 }, 671 "decorators": [], 672 "loc": { 673 "start": { 674 "line": 28, 675 "column": 24, 676 "program": "generics_implicit_lambda1.ets" 677 }, 678 "end": { 679 "line": 28, 680 "column": 39, 681 "program": "generics_implicit_lambda1.ets" 682 } 683 } 684 }, 685 "loc": { 686 "start": { 687 "line": 28, 688 "column": 24, 689 "program": "generics_implicit_lambda1.ets" 690 }, 691 "end": { 692 "line": 28, 693 "column": 39, 694 "program": "generics_implicit_lambda1.ets" 695 } 696 } 697 }, 698 { 699 "type": "ETSParameterExpression", 700 "name": { 701 "type": "Identifier", 702 "name": "second", 703 "typeAnnotation": { 704 "type": "ETSFunctionType", 705 "params": [], 706 "returnType": { 707 "type": "ETSPrimitiveType", 708 "loc": { 709 "start": { 710 "line": 28, 711 "column": 54, 712 "program": "generics_implicit_lambda1.ets" 713 }, 714 "end": { 715 "line": 28, 716 "column": 58, 717 "program": "generics_implicit_lambda1.ets" 718 } 719 } 720 }, 721 "loc": { 722 "start": { 723 "line": 28, 724 "column": 48, 725 "program": "generics_implicit_lambda1.ets" 726 }, 727 "end": { 728 "line": 28, 729 "column": 58, 730 "program": "generics_implicit_lambda1.ets" 731 } 732 } 733 }, 734 "decorators": [], 735 "loc": { 736 "start": { 737 "line": 28, 738 "column": 40, 739 "program": "generics_implicit_lambda1.ets" 740 }, 741 "end": { 742 "line": 28, 743 "column": 58, 744 "program": "generics_implicit_lambda1.ets" 745 } 746 } 747 }, 748 "loc": { 749 "start": { 750 "line": 28, 751 "column": 40, 752 "program": "generics_implicit_lambda1.ets" 753 }, 754 "end": { 755 "line": 28, 756 "column": 58, 757 "program": "generics_implicit_lambda1.ets" 758 } 759 } 760 } 761 ], 762 "returnType": { 763 "type": "ETSTypeReference", 764 "part": { 765 "type": "ETSTypeReferencePart", 766 "name": { 767 "type": "Identifier", 768 "name": "T", 769 "decorators": [], 770 "loc": { 771 "start": { 772 "line": 28, 773 "column": 61, 774 "program": "generics_implicit_lambda1.ets" 775 }, 776 "end": { 777 "line": 28, 778 "column": 62, 779 "program": "generics_implicit_lambda1.ets" 780 } 781 } 782 }, 783 "loc": { 784 "start": { 785 "line": 28, 786 "column": 61, 787 "program": "generics_implicit_lambda1.ets" 788 }, 789 "end": { 790 "line": 28, 791 "column": 64, 792 "program": "generics_implicit_lambda1.ets" 793 } 794 } 795 }, 796 "loc": { 797 "start": { 798 "line": 28, 799 "column": 61, 800 "program": "generics_implicit_lambda1.ets" 801 }, 802 "end": { 803 "line": 28, 804 "column": 64, 805 "program": "generics_implicit_lambda1.ets" 806 } 807 } 808 }, 809 "typeParameters": { 810 "type": "TSTypeParameterDeclaration", 811 "params": [ 812 { 813 "type": "TSTypeParameter", 814 "name": { 815 "type": "Identifier", 816 "name": "T", 817 "decorators": [], 818 "loc": { 819 "start": { 820 "line": 28, 821 "column": 21, 822 "program": "generics_implicit_lambda1.ets" 823 }, 824 "end": { 825 "line": 28, 826 "column": 22, 827 "program": "generics_implicit_lambda1.ets" 828 } 829 } 830 }, 831 "loc": { 832 "start": { 833 "line": 28, 834 "column": 21, 835 "program": "generics_implicit_lambda1.ets" 836 }, 837 "end": { 838 "line": 28, 839 "column": 23, 840 "program": "generics_implicit_lambda1.ets" 841 } 842 } 843 } 844 ], 845 "loc": { 846 "start": { 847 "line": 28, 848 "column": 20, 849 "program": "generics_implicit_lambda1.ets" 850 }, 851 "end": { 852 "line": 28, 853 "column": 23, 854 "program": "generics_implicit_lambda1.ets" 855 } 856 } 857 }, 858 "body": { 859 "type": "BlockStatement", 860 "statements": [ 861 { 862 "type": "VariableDeclaration", 863 "declarations": [ 864 { 865 "type": "VariableDeclarator", 866 "id": { 867 "type": "Identifier", 868 "name": "instance", 869 "decorators": [], 870 "loc": { 871 "start": { 872 "line": 29, 873 "column": 15, 874 "program": "generics_implicit_lambda1.ets" 875 }, 876 "end": { 877 "line": 29, 878 "column": 23, 879 "program": "generics_implicit_lambda1.ets" 880 } 881 } 882 }, 883 "init": { 884 "type": "CallExpression", 885 "callee": { 886 "type": "Identifier", 887 "name": "first", 888 "decorators": [], 889 "loc": { 890 "start": { 891 "line": 29, 892 "column": 26, 893 "program": "generics_implicit_lambda1.ets" 894 }, 895 "end": { 896 "line": 29, 897 "column": 31, 898 "program": "generics_implicit_lambda1.ets" 899 } 900 } 901 }, 902 "arguments": [], 903 "optional": false, 904 "loc": { 905 "start": { 906 "line": 29, 907 "column": 26, 908 "program": "generics_implicit_lambda1.ets" 909 }, 910 "end": { 911 "line": 29, 912 "column": 33, 913 "program": "generics_implicit_lambda1.ets" 914 } 915 } 916 }, 917 "loc": { 918 "start": { 919 "line": 29, 920 "column": 15, 921 "program": "generics_implicit_lambda1.ets" 922 }, 923 "end": { 924 "line": 29, 925 "column": 33, 926 "program": "generics_implicit_lambda1.ets" 927 } 928 } 929 } 930 ], 931 "kind": "const", 932 "loc": { 933 "start": { 934 "line": 29, 935 "column": 9, 936 "program": "generics_implicit_lambda1.ets" 937 }, 938 "end": { 939 "line": 29, 940 "column": 33, 941 "program": "generics_implicit_lambda1.ets" 942 } 943 } 944 }, 945 { 946 "type": "ExpressionStatement", 947 "expression": { 948 "type": "CallExpression", 949 "callee": { 950 "type": "Identifier", 951 "name": "second", 952 "decorators": [], 953 "loc": { 954 "start": { 955 "line": 30, 956 "column": 9, 957 "program": "generics_implicit_lambda1.ets" 958 }, 959 "end": { 960 "line": 30, 961 "column": 15, 962 "program": "generics_implicit_lambda1.ets" 963 } 964 } 965 }, 966 "arguments": [], 967 "optional": false, 968 "loc": { 969 "start": { 970 "line": 30, 971 "column": 9, 972 "program": "generics_implicit_lambda1.ets" 973 }, 974 "end": { 975 "line": 30, 976 "column": 17, 977 "program": "generics_implicit_lambda1.ets" 978 } 979 } 980 }, 981 "loc": { 982 "start": { 983 "line": 30, 984 "column": 9, 985 "program": "generics_implicit_lambda1.ets" 986 }, 987 "end": { 988 "line": 30, 989 "column": 17, 990 "program": "generics_implicit_lambda1.ets" 991 } 992 } 993 }, 994 { 995 "type": "ReturnStatement", 996 "argument": { 997 "type": "Identifier", 998 "name": "instance", 999 "decorators": [], 1000 "loc": { 1001 "start": { 1002 "line": 31, 1003 "column": 16, 1004 "program": "generics_implicit_lambda1.ets" 1005 }, 1006 "end": { 1007 "line": 31, 1008 "column": 24, 1009 "program": "generics_implicit_lambda1.ets" 1010 } 1011 } 1012 }, 1013 "loc": { 1014 "start": { 1015 "line": 31, 1016 "column": 9, 1017 "program": "generics_implicit_lambda1.ets" 1018 }, 1019 "end": { 1020 "line": 31, 1021 "column": 24, 1022 "program": "generics_implicit_lambda1.ets" 1023 } 1024 } 1025 } 1026 ], 1027 "loc": { 1028 "start": { 1029 "line": 28, 1030 "column": 63, 1031 "program": "generics_implicit_lambda1.ets" 1032 }, 1033 "end": { 1034 "line": 32, 1035 "column": 6, 1036 "program": "generics_implicit_lambda1.ets" 1037 } 1038 } 1039 }, 1040 "loc": { 1041 "start": { 1042 "line": 28, 1043 "column": 20, 1044 "program": "generics_implicit_lambda1.ets" 1045 }, 1046 "end": { 1047 "line": 32, 1048 "column": 6, 1049 "program": "generics_implicit_lambda1.ets" 1050 } 1051 } 1052 }, 1053 "loc": { 1054 "start": { 1055 "line": 28, 1056 "column": 20, 1057 "program": "generics_implicit_lambda1.ets" 1058 }, 1059 "end": { 1060 "line": 32, 1061 "column": 6, 1062 "program": "generics_implicit_lambda1.ets" 1063 } 1064 } 1065 }, 1066 "overloads": [], 1067 "decorators": [], 1068 "loc": { 1069 "start": { 1070 "line": 28, 1071 "column": 5, 1072 "program": "generics_implicit_lambda1.ets" 1073 }, 1074 "end": { 1075 "line": 32, 1076 "column": 6, 1077 "program": "generics_implicit_lambda1.ets" 1078 } 1079 } 1080 }, 1081 { 1082 "type": "MethodDefinition", 1083 "key": { 1084 "type": "Identifier", 1085 "name": "constructor", 1086 "decorators": [], 1087 "loc": { 1088 "start": { 1089 "line": 21, 1090 "column": 10, 1091 "program": "generics_implicit_lambda1.ets" 1092 }, 1093 "end": { 1094 "line": 21, 1095 "column": 10, 1096 "program": "generics_implicit_lambda1.ets" 1097 } 1098 } 1099 }, 1100 "kind": "constructor", 1101 "static": false, 1102 "optional": false, 1103 "computed": false, 1104 "value": { 1105 "type": "FunctionExpression", 1106 "function": { 1107 "type": "ScriptFunction", 1108 "id": { 1109 "type": "Identifier", 1110 "name": "constructor", 1111 "decorators": [], 1112 "loc": { 1113 "start": { 1114 "line": 21, 1115 "column": 10, 1116 "program": "generics_implicit_lambda1.ets" 1117 }, 1118 "end": { 1119 "line": 21, 1120 "column": 10, 1121 "program": "generics_implicit_lambda1.ets" 1122 } 1123 } 1124 }, 1125 "generator": false, 1126 "async": false, 1127 "expression": false, 1128 "params": [], 1129 "body": { 1130 "type": "BlockStatement", 1131 "statements": [], 1132 "loc": { 1133 "start": { 1134 "line": 21, 1135 "column": 10, 1136 "program": "generics_implicit_lambda1.ets" 1137 }, 1138 "end": { 1139 "line": 21, 1140 "column": 10, 1141 "program": "generics_implicit_lambda1.ets" 1142 } 1143 } 1144 }, 1145 "loc": { 1146 "start": { 1147 "line": 21, 1148 "column": 10, 1149 "program": "generics_implicit_lambda1.ets" 1150 }, 1151 "end": { 1152 "line": 21, 1153 "column": 10, 1154 "program": "generics_implicit_lambda1.ets" 1155 } 1156 } 1157 }, 1158 "loc": { 1159 "start": { 1160 "line": 21, 1161 "column": 10, 1162 "program": "generics_implicit_lambda1.ets" 1163 }, 1164 "end": { 1165 "line": 21, 1166 "column": 10, 1167 "program": "generics_implicit_lambda1.ets" 1168 } 1169 } 1170 }, 1171 "overloads": [], 1172 "decorators": [], 1173 "loc": { 1174 "start": { 1175 "line": 1, 1176 "column": 1, 1177 "program": null 1178 }, 1179 "end": { 1180 "line": 1, 1181 "column": 1, 1182 "program": null 1183 } 1184 } 1185 } 1186 ], 1187 "loc": { 1188 "start": { 1189 "line": 21, 1190 "column": 9, 1191 "program": "generics_implicit_lambda1.ets" 1192 }, 1193 "end": { 1194 "line": 35, 1195 "column": 9, 1196 "program": "generics_implicit_lambda1.ets" 1197 } 1198 } 1199 }, 1200 "loc": { 1201 "start": { 1202 "line": 21, 1203 "column": 1, 1204 "program": "generics_implicit_lambda1.ets" 1205 }, 1206 "end": { 1207 "line": 35, 1208 "column": 9, 1209 "program": "generics_implicit_lambda1.ets" 1210 } 1211 } 1212 }, 1213 { 1214 "type": "ClassDeclaration", 1215 "definition": { 1216 "id": { 1217 "type": "Identifier", 1218 "name": "ETSGLOBAL", 1219 "decorators": [], 1220 "loc": { 1221 "start": { 1222 "line": 1, 1223 "column": 1, 1224 "program": "generics_implicit_lambda1.ets" 1225 }, 1226 "end": { 1227 "line": 1, 1228 "column": 1, 1229 "program": "generics_implicit_lambda1.ets" 1230 } 1231 } 1232 }, 1233 "superClass": null, 1234 "implements": [], 1235 "body": [ 1236 { 1237 "type": "MethodDefinition", 1238 "key": { 1239 "type": "Identifier", 1240 "name": "_$init$_", 1241 "decorators": [], 1242 "loc": { 1243 "start": { 1244 "line": 1, 1245 "column": 1, 1246 "program": null 1247 }, 1248 "end": { 1249 "line": 1, 1250 "column": 1, 1251 "program": null 1252 } 1253 } 1254 }, 1255 "kind": "method", 1256 "accessibility": "public", 1257 "static": true, 1258 "optional": false, 1259 "computed": false, 1260 "value": { 1261 "type": "FunctionExpression", 1262 "function": { 1263 "type": "ScriptFunction", 1264 "id": { 1265 "type": "Identifier", 1266 "name": "_$init$_", 1267 "decorators": [], 1268 "loc": { 1269 "start": { 1270 "line": 1, 1271 "column": 1, 1272 "program": null 1273 }, 1274 "end": { 1275 "line": 1, 1276 "column": 1, 1277 "program": null 1278 } 1279 } 1280 }, 1281 "generator": false, 1282 "async": false, 1283 "expression": false, 1284 "params": [], 1285 "body": { 1286 "type": "BlockStatement", 1287 "statements": [], 1288 "loc": { 1289 "start": { 1290 "line": 1, 1291 "column": 1, 1292 "program": null 1293 }, 1294 "end": { 1295 "line": 1, 1296 "column": 1, 1297 "program": null 1298 } 1299 } 1300 }, 1301 "loc": { 1302 "start": { 1303 "line": 1, 1304 "column": 1, 1305 "program": null 1306 }, 1307 "end": { 1308 "line": 1, 1309 "column": 1, 1310 "program": null 1311 } 1312 } 1313 }, 1314 "loc": { 1315 "start": { 1316 "line": 1, 1317 "column": 1, 1318 "program": null 1319 }, 1320 "end": { 1321 "line": 1, 1322 "column": 1, 1323 "program": null 1324 } 1325 } 1326 }, 1327 "overloads": [], 1328 "decorators": [], 1329 "loc": { 1330 "start": { 1331 "line": 1, 1332 "column": 1, 1333 "program": "generics_implicit_lambda1.ets" 1334 }, 1335 "end": { 1336 "line": 1, 1337 "column": 1, 1338 "program": "generics_implicit_lambda1.ets" 1339 } 1340 } 1341 }, 1342 { 1343 "type": "MethodDefinition", 1344 "key": { 1345 "type": "Identifier", 1346 "name": "foo", 1347 "decorators": [], 1348 "loc": { 1349 "start": { 1350 "line": 16, 1351 "column": 10, 1352 "program": "generics_implicit_lambda1.ets" 1353 }, 1354 "end": { 1355 "line": 16, 1356 "column": 13, 1357 "program": "generics_implicit_lambda1.ets" 1358 } 1359 } 1360 }, 1361 "kind": "method", 1362 "accessibility": "public", 1363 "static": true, 1364 "optional": false, 1365 "computed": false, 1366 "value": { 1367 "type": "FunctionExpression", 1368 "function": { 1369 "type": "ScriptFunction", 1370 "id": { 1371 "type": "Identifier", 1372 "name": "foo", 1373 "decorators": [], 1374 "loc": { 1375 "start": { 1376 "line": 16, 1377 "column": 10, 1378 "program": "generics_implicit_lambda1.ets" 1379 }, 1380 "end": { 1381 "line": 16, 1382 "column": 13, 1383 "program": "generics_implicit_lambda1.ets" 1384 } 1385 } 1386 }, 1387 "generator": false, 1388 "async": false, 1389 "expression": false, 1390 "params": [ 1391 { 1392 "type": "ETSParameterExpression", 1393 "name": { 1394 "type": "Identifier", 1395 "name": "first", 1396 "typeAnnotation": { 1397 "type": "ETSFunctionType", 1398 "params": [], 1399 "returnType": { 1400 "type": "ETSTypeReference", 1401 "part": { 1402 "type": "ETSTypeReferencePart", 1403 "name": { 1404 "type": "Identifier", 1405 "name": "T", 1406 "decorators": [], 1407 "loc": { 1408 "start": { 1409 "line": 16, 1410 "column": 30, 1411 "program": "generics_implicit_lambda1.ets" 1412 }, 1413 "end": { 1414 "line": 16, 1415 "column": 31, 1416 "program": "generics_implicit_lambda1.ets" 1417 } 1418 } 1419 }, 1420 "loc": { 1421 "start": { 1422 "line": 16, 1423 "column": 30, 1424 "program": "generics_implicit_lambda1.ets" 1425 }, 1426 "end": { 1427 "line": 16, 1428 "column": 32, 1429 "program": "generics_implicit_lambda1.ets" 1430 } 1431 } 1432 }, 1433 "loc": { 1434 "start": { 1435 "line": 16, 1436 "column": 30, 1437 "program": "generics_implicit_lambda1.ets" 1438 }, 1439 "end": { 1440 "line": 16, 1441 "column": 32, 1442 "program": "generics_implicit_lambda1.ets" 1443 } 1444 } 1445 }, 1446 "loc": { 1447 "start": { 1448 "line": 16, 1449 "column": 24, 1450 "program": "generics_implicit_lambda1.ets" 1451 }, 1452 "end": { 1453 "line": 16, 1454 "column": 32, 1455 "program": "generics_implicit_lambda1.ets" 1456 } 1457 } 1458 }, 1459 "decorators": [], 1460 "loc": { 1461 "start": { 1462 "line": 16, 1463 "column": 17, 1464 "program": "generics_implicit_lambda1.ets" 1465 }, 1466 "end": { 1467 "line": 16, 1468 "column": 32, 1469 "program": "generics_implicit_lambda1.ets" 1470 } 1471 } 1472 }, 1473 "loc": { 1474 "start": { 1475 "line": 16, 1476 "column": 17, 1477 "program": "generics_implicit_lambda1.ets" 1478 }, 1479 "end": { 1480 "line": 16, 1481 "column": 32, 1482 "program": "generics_implicit_lambda1.ets" 1483 } 1484 } 1485 } 1486 ], 1487 "returnType": { 1488 "type": "ETSTypeReference", 1489 "part": { 1490 "type": "ETSTypeReferencePart", 1491 "name": { 1492 "type": "Identifier", 1493 "name": "T", 1494 "decorators": [], 1495 "loc": { 1496 "start": { 1497 "line": 16, 1498 "column": 34, 1499 "program": "generics_implicit_lambda1.ets" 1500 }, 1501 "end": { 1502 "line": 16, 1503 "column": 35, 1504 "program": "generics_implicit_lambda1.ets" 1505 } 1506 } 1507 }, 1508 "loc": { 1509 "start": { 1510 "line": 16, 1511 "column": 34, 1512 "program": "generics_implicit_lambda1.ets" 1513 }, 1514 "end": { 1515 "line": 16, 1516 "column": 37, 1517 "program": "generics_implicit_lambda1.ets" 1518 } 1519 } 1520 }, 1521 "loc": { 1522 "start": { 1523 "line": 16, 1524 "column": 34, 1525 "program": "generics_implicit_lambda1.ets" 1526 }, 1527 "end": { 1528 "line": 16, 1529 "column": 37, 1530 "program": "generics_implicit_lambda1.ets" 1531 } 1532 } 1533 }, 1534 "typeParameters": { 1535 "type": "TSTypeParameterDeclaration", 1536 "params": [ 1537 { 1538 "type": "TSTypeParameter", 1539 "name": { 1540 "type": "Identifier", 1541 "name": "T", 1542 "decorators": [], 1543 "loc": { 1544 "start": { 1545 "line": 16, 1546 "column": 14, 1547 "program": "generics_implicit_lambda1.ets" 1548 }, 1549 "end": { 1550 "line": 16, 1551 "column": 15, 1552 "program": "generics_implicit_lambda1.ets" 1553 } 1554 } 1555 }, 1556 "loc": { 1557 "start": { 1558 "line": 16, 1559 "column": 14, 1560 "program": "generics_implicit_lambda1.ets" 1561 }, 1562 "end": { 1563 "line": 16, 1564 "column": 16, 1565 "program": "generics_implicit_lambda1.ets" 1566 } 1567 } 1568 } 1569 ], 1570 "loc": { 1571 "start": { 1572 "line": 16, 1573 "column": 13, 1574 "program": "generics_implicit_lambda1.ets" 1575 }, 1576 "end": { 1577 "line": 16, 1578 "column": 16, 1579 "program": "generics_implicit_lambda1.ets" 1580 } 1581 } 1582 }, 1583 "body": { 1584 "type": "BlockStatement", 1585 "statements": [ 1586 { 1587 "type": "VariableDeclaration", 1588 "declarations": [ 1589 { 1590 "type": "VariableDeclarator", 1591 "id": { 1592 "type": "Identifier", 1593 "name": "instance", 1594 "decorators": [], 1595 "loc": { 1596 "start": { 1597 "line": 17, 1598 "column": 11, 1599 "program": "generics_implicit_lambda1.ets" 1600 }, 1601 "end": { 1602 "line": 17, 1603 "column": 19, 1604 "program": "generics_implicit_lambda1.ets" 1605 } 1606 } 1607 }, 1608 "init": { 1609 "type": "CallExpression", 1610 "callee": { 1611 "type": "Identifier", 1612 "name": "first", 1613 "decorators": [], 1614 "loc": { 1615 "start": { 1616 "line": 17, 1617 "column": 22, 1618 "program": "generics_implicit_lambda1.ets" 1619 }, 1620 "end": { 1621 "line": 17, 1622 "column": 27, 1623 "program": "generics_implicit_lambda1.ets" 1624 } 1625 } 1626 }, 1627 "arguments": [], 1628 "optional": false, 1629 "loc": { 1630 "start": { 1631 "line": 17, 1632 "column": 22, 1633 "program": "generics_implicit_lambda1.ets" 1634 }, 1635 "end": { 1636 "line": 17, 1637 "column": 29, 1638 "program": "generics_implicit_lambda1.ets" 1639 } 1640 } 1641 }, 1642 "loc": { 1643 "start": { 1644 "line": 17, 1645 "column": 11, 1646 "program": "generics_implicit_lambda1.ets" 1647 }, 1648 "end": { 1649 "line": 17, 1650 "column": 29, 1651 "program": "generics_implicit_lambda1.ets" 1652 } 1653 } 1654 } 1655 ], 1656 "kind": "const", 1657 "loc": { 1658 "start": { 1659 "line": 17, 1660 "column": 5, 1661 "program": "generics_implicit_lambda1.ets" 1662 }, 1663 "end": { 1664 "line": 17, 1665 "column": 29, 1666 "program": "generics_implicit_lambda1.ets" 1667 } 1668 } 1669 }, 1670 { 1671 "type": "ReturnStatement", 1672 "argument": { 1673 "type": "Identifier", 1674 "name": "instance", 1675 "decorators": [], 1676 "loc": { 1677 "start": { 1678 "line": 18, 1679 "column": 12, 1680 "program": "generics_implicit_lambda1.ets" 1681 }, 1682 "end": { 1683 "line": 18, 1684 "column": 20, 1685 "program": "generics_implicit_lambda1.ets" 1686 } 1687 } 1688 }, 1689 "loc": { 1690 "start": { 1691 "line": 18, 1692 "column": 5, 1693 "program": "generics_implicit_lambda1.ets" 1694 }, 1695 "end": { 1696 "line": 18, 1697 "column": 20, 1698 "program": "generics_implicit_lambda1.ets" 1699 } 1700 } 1701 } 1702 ], 1703 "loc": { 1704 "start": { 1705 "line": 16, 1706 "column": 36, 1707 "program": "generics_implicit_lambda1.ets" 1708 }, 1709 "end": { 1710 "line": 19, 1711 "column": 2, 1712 "program": "generics_implicit_lambda1.ets" 1713 } 1714 } 1715 }, 1716 "loc": { 1717 "start": { 1718 "line": 16, 1719 "column": 10, 1720 "program": "generics_implicit_lambda1.ets" 1721 }, 1722 "end": { 1723 "line": 19, 1724 "column": 2, 1725 "program": "generics_implicit_lambda1.ets" 1726 } 1727 } 1728 }, 1729 "loc": { 1730 "start": { 1731 "line": 16, 1732 "column": 10, 1733 "program": "generics_implicit_lambda1.ets" 1734 }, 1735 "end": { 1736 "line": 19, 1737 "column": 2, 1738 "program": "generics_implicit_lambda1.ets" 1739 } 1740 } 1741 }, 1742 "overloads": [], 1743 "decorators": [], 1744 "loc": { 1745 "start": { 1746 "line": 16, 1747 "column": 1, 1748 "program": "generics_implicit_lambda1.ets" 1749 }, 1750 "end": { 1751 "line": 19, 1752 "column": 2, 1753 "program": "generics_implicit_lambda1.ets" 1754 } 1755 } 1756 }, 1757 { 1758 "type": "MethodDefinition", 1759 "key": { 1760 "type": "Identifier", 1761 "name": "main", 1762 "decorators": [], 1763 "loc": { 1764 "start": { 1765 "line": 35, 1766 "column": 10, 1767 "program": "generics_implicit_lambda1.ets" 1768 }, 1769 "end": { 1770 "line": 35, 1771 "column": 14, 1772 "program": "generics_implicit_lambda1.ets" 1773 } 1774 } 1775 }, 1776 "kind": "method", 1777 "accessibility": "public", 1778 "static": true, 1779 "optional": false, 1780 "computed": false, 1781 "value": { 1782 "type": "FunctionExpression", 1783 "function": { 1784 "type": "ScriptFunction", 1785 "id": { 1786 "type": "Identifier", 1787 "name": "main", 1788 "decorators": [], 1789 "loc": { 1790 "start": { 1791 "line": 35, 1792 "column": 10, 1793 "program": "generics_implicit_lambda1.ets" 1794 }, 1795 "end": { 1796 "line": 35, 1797 "column": 14, 1798 "program": "generics_implicit_lambda1.ets" 1799 } 1800 } 1801 }, 1802 "generator": false, 1803 "async": false, 1804 "expression": false, 1805 "params": [], 1806 "body": { 1807 "type": "BlockStatement", 1808 "statements": [ 1809 { 1810 "type": "ExpressionStatement", 1811 "expression": { 1812 "type": "CallExpression", 1813 "callee": { 1814 "type": "Identifier", 1815 "name": "foo", 1816 "decorators": [], 1817 "loc": { 1818 "start": { 1819 "line": 36, 1820 "column": 5, 1821 "program": "generics_implicit_lambda1.ets" 1822 }, 1823 "end": { 1824 "line": 36, 1825 "column": 8, 1826 "program": "generics_implicit_lambda1.ets" 1827 } 1828 } 1829 }, 1830 "arguments": [ 1831 { 1832 "type": "ArrowFunctionExpression", 1833 "function": { 1834 "type": "ScriptFunction", 1835 "id": null, 1836 "generator": false, 1837 "async": false, 1838 "expression": false, 1839 "params": [], 1840 "returnType": { 1841 "type": "ETSTypeReference", 1842 "part": { 1843 "type": "ETSTypeReferencePart", 1844 "name": { 1845 "type": "Identifier", 1846 "name": "String", 1847 "decorators": [], 1848 "loc": { 1849 "start": { 1850 "line": 36, 1851 "column": 13, 1852 "program": "generics_implicit_lambda1.ets" 1853 }, 1854 "end": { 1855 "line": 36, 1856 "column": 19, 1857 "program": "generics_implicit_lambda1.ets" 1858 } 1859 } 1860 }, 1861 "loc": { 1862 "start": { 1863 "line": 36, 1864 "column": 13, 1865 "program": "generics_implicit_lambda1.ets" 1866 }, 1867 "end": { 1868 "line": 36, 1869 "column": 22, 1870 "program": "generics_implicit_lambda1.ets" 1871 } 1872 } 1873 }, 1874 "loc": { 1875 "start": { 1876 "line": 36, 1877 "column": 13, 1878 "program": "generics_implicit_lambda1.ets" 1879 }, 1880 "end": { 1881 "line": 36, 1882 "column": 22, 1883 "program": "generics_implicit_lambda1.ets" 1884 } 1885 } 1886 }, 1887 "body": { 1888 "type": "BlockStatement", 1889 "statements": [ 1890 { 1891 "type": "ReturnStatement", 1892 "argument": { 1893 "type": "StringLiteral", 1894 "value": "XXX", 1895 "loc": { 1896 "start": { 1897 "line": 36, 1898 "column": 32, 1899 "program": "generics_implicit_lambda1.ets" 1900 }, 1901 "end": { 1902 "line": 36, 1903 "column": 37, 1904 "program": "generics_implicit_lambda1.ets" 1905 } 1906 } 1907 }, 1908 "loc": { 1909 "start": { 1910 "line": 36, 1911 "column": 25, 1912 "program": "generics_implicit_lambda1.ets" 1913 }, 1914 "end": { 1915 "line": 36, 1916 "column": 37, 1917 "program": "generics_implicit_lambda1.ets" 1918 } 1919 } 1920 } 1921 ], 1922 "loc": { 1923 "start": { 1924 "line": 36, 1925 "column": 23, 1926 "program": "generics_implicit_lambda1.ets" 1927 }, 1928 "end": { 1929 "line": 36, 1930 "column": 39, 1931 "program": "generics_implicit_lambda1.ets" 1932 } 1933 } 1934 }, 1935 "loc": { 1936 "start": { 1937 "line": 36, 1938 "column": 9, 1939 "program": "generics_implicit_lambda1.ets" 1940 }, 1941 "end": { 1942 "line": 36, 1943 "column": 39, 1944 "program": "generics_implicit_lambda1.ets" 1945 } 1946 } 1947 }, 1948 "loc": { 1949 "start": { 1950 "line": 36, 1951 "column": 9, 1952 "program": "generics_implicit_lambda1.ets" 1953 }, 1954 "end": { 1955 "line": 36, 1956 "column": 39, 1957 "program": "generics_implicit_lambda1.ets" 1958 } 1959 } 1960 } 1961 ], 1962 "optional": false, 1963 "loc": { 1964 "start": { 1965 "line": 36, 1966 "column": 5, 1967 "program": "generics_implicit_lambda1.ets" 1968 }, 1969 "end": { 1970 "line": 36, 1971 "column": 40, 1972 "program": "generics_implicit_lambda1.ets" 1973 } 1974 } 1975 }, 1976 "loc": { 1977 "start": { 1978 "line": 36, 1979 "column": 5, 1980 "program": "generics_implicit_lambda1.ets" 1981 }, 1982 "end": { 1983 "line": 36, 1984 "column": 41, 1985 "program": "generics_implicit_lambda1.ets" 1986 } 1987 } 1988 }, 1989 { 1990 "type": "ExpressionStatement", 1991 "expression": { 1992 "type": "CallExpression", 1993 "callee": { 1994 "type": "Identifier", 1995 "name": "foo", 1996 "decorators": [], 1997 "loc": { 1998 "start": { 1999 "line": 38, 2000 "column": 5, 2001 "program": "generics_implicit_lambda1.ets" 2002 }, 2003 "end": { 2004 "line": 38, 2005 "column": 8, 2006 "program": "generics_implicit_lambda1.ets" 2007 } 2008 } 2009 }, 2010 "arguments": [ 2011 { 2012 "type": "ArrowFunctionExpression", 2013 "function": { 2014 "type": "ScriptFunction", 2015 "id": null, 2016 "generator": false, 2017 "async": false, 2018 "expression": false, 2019 "params": [], 2020 "returnType": { 2021 "type": "ETSTypeReference", 2022 "part": { 2023 "type": "ETSTypeReferencePart", 2024 "name": { 2025 "type": "Identifier", 2026 "name": "Int", 2027 "decorators": [], 2028 "loc": { 2029 "start": { 2030 "line": 38, 2031 "column": 13, 2032 "program": "generics_implicit_lambda1.ets" 2033 }, 2034 "end": { 2035 "line": 38, 2036 "column": 16, 2037 "program": "generics_implicit_lambda1.ets" 2038 } 2039 } 2040 }, 2041 "loc": { 2042 "start": { 2043 "line": 38, 2044 "column": 13, 2045 "program": "generics_implicit_lambda1.ets" 2046 }, 2047 "end": { 2048 "line": 38, 2049 "column": 19, 2050 "program": "generics_implicit_lambda1.ets" 2051 } 2052 } 2053 }, 2054 "loc": { 2055 "start": { 2056 "line": 38, 2057 "column": 13, 2058 "program": "generics_implicit_lambda1.ets" 2059 }, 2060 "end": { 2061 "line": 38, 2062 "column": 19, 2063 "program": "generics_implicit_lambda1.ets" 2064 } 2065 } 2066 }, 2067 "body": { 2068 "type": "BlockStatement", 2069 "statements": [ 2070 { 2071 "type": "ReturnStatement", 2072 "argument": { 2073 "type": "ETSNewClassInstanceExpression", 2074 "typeReference": { 2075 "type": "ETSTypeReference", 2076 "part": { 2077 "type": "ETSTypeReferencePart", 2078 "name": { 2079 "type": "Identifier", 2080 "name": "Int", 2081 "decorators": [], 2082 "loc": { 2083 "start": { 2084 "line": 38, 2085 "column": 33, 2086 "program": "generics_implicit_lambda1.ets" 2087 }, 2088 "end": { 2089 "line": 38, 2090 "column": 36, 2091 "program": "generics_implicit_lambda1.ets" 2092 } 2093 } 2094 }, 2095 "loc": { 2096 "start": { 2097 "line": 38, 2098 "column": 33, 2099 "program": "generics_implicit_lambda1.ets" 2100 }, 2101 "end": { 2102 "line": 38, 2103 "column": 37, 2104 "program": "generics_implicit_lambda1.ets" 2105 } 2106 } 2107 }, 2108 "loc": { 2109 "start": { 2110 "line": 38, 2111 "column": 33, 2112 "program": "generics_implicit_lambda1.ets" 2113 }, 2114 "end": { 2115 "line": 38, 2116 "column": 37, 2117 "program": "generics_implicit_lambda1.ets" 2118 } 2119 } 2120 }, 2121 "arguments": [ 2122 { 2123 "type": "NumberLiteral", 2124 "value": 42, 2125 "loc": { 2126 "start": { 2127 "line": 38, 2128 "column": 37, 2129 "program": "generics_implicit_lambda1.ets" 2130 }, 2131 "end": { 2132 "line": 38, 2133 "column": 39, 2134 "program": "generics_implicit_lambda1.ets" 2135 } 2136 } 2137 } 2138 ], 2139 "loc": { 2140 "start": { 2141 "line": 38, 2142 "column": 29, 2143 "program": "generics_implicit_lambda1.ets" 2144 }, 2145 "end": { 2146 "line": 38, 2147 "column": 42, 2148 "program": "generics_implicit_lambda1.ets" 2149 } 2150 } 2151 }, 2152 "loc": { 2153 "start": { 2154 "line": 38, 2155 "column": 22, 2156 "program": "generics_implicit_lambda1.ets" 2157 }, 2158 "end": { 2159 "line": 38, 2160 "column": 42, 2161 "program": "generics_implicit_lambda1.ets" 2162 } 2163 } 2164 } 2165 ], 2166 "loc": { 2167 "start": { 2168 "line": 38, 2169 "column": 20, 2170 "program": "generics_implicit_lambda1.ets" 2171 }, 2172 "end": { 2173 "line": 38, 2174 "column": 42, 2175 "program": "generics_implicit_lambda1.ets" 2176 } 2177 } 2178 }, 2179 "loc": { 2180 "start": { 2181 "line": 38, 2182 "column": 9, 2183 "program": "generics_implicit_lambda1.ets" 2184 }, 2185 "end": { 2186 "line": 38, 2187 "column": 42, 2188 "program": "generics_implicit_lambda1.ets" 2189 } 2190 } 2191 }, 2192 "loc": { 2193 "start": { 2194 "line": 38, 2195 "column": 9, 2196 "program": "generics_implicit_lambda1.ets" 2197 }, 2198 "end": { 2199 "line": 38, 2200 "column": 42, 2201 "program": "generics_implicit_lambda1.ets" 2202 } 2203 } 2204 } 2205 ], 2206 "optional": false, 2207 "loc": { 2208 "start": { 2209 "line": 38, 2210 "column": 5, 2211 "program": "generics_implicit_lambda1.ets" 2212 }, 2213 "end": { 2214 "line": 38, 2215 "column": 43, 2216 "program": "generics_implicit_lambda1.ets" 2217 } 2218 } 2219 }, 2220 "loc": { 2221 "start": { 2222 "line": 38, 2223 "column": 5, 2224 "program": "generics_implicit_lambda1.ets" 2225 }, 2226 "end": { 2227 "line": 38, 2228 "column": 44, 2229 "program": "generics_implicit_lambda1.ets" 2230 } 2231 } 2232 }, 2233 { 2234 "type": "ExpressionStatement", 2235 "expression": { 2236 "type": "CallExpression", 2237 "callee": { 2238 "type": "Identifier", 2239 "name": "X", 2240 "decorators": [], 2241 "loc": { 2242 "start": { 2243 "line": 40, 2244 "column": 5, 2245 "program": "generics_implicit_lambda1.ets" 2246 }, 2247 "end": { 2248 "line": 40, 2249 "column": 6, 2250 "program": "generics_implicit_lambda1.ets" 2251 } 2252 } 2253 }, 2254 "arguments": [ 2255 { 2256 "type": "ArrowFunctionExpression", 2257 "function": { 2258 "type": "ScriptFunction", 2259 "id": null, 2260 "generator": false, 2261 "async": false, 2262 "expression": false, 2263 "params": [], 2264 "returnType": { 2265 "type": "ETSTypeReference", 2266 "part": { 2267 "type": "ETSTypeReferencePart", 2268 "name": { 2269 "type": "Identifier", 2270 "name": "String", 2271 "decorators": [], 2272 "loc": { 2273 "start": { 2274 "line": 41, 2275 "column": 9, 2276 "program": "generics_implicit_lambda1.ets" 2277 }, 2278 "end": { 2279 "line": 41, 2280 "column": 15, 2281 "program": "generics_implicit_lambda1.ets" 2282 } 2283 } 2284 }, 2285 "loc": { 2286 "start": { 2287 "line": 41, 2288 "column": 9, 2289 "program": "generics_implicit_lambda1.ets" 2290 }, 2291 "end": { 2292 "line": 41, 2293 "column": 18, 2294 "program": "generics_implicit_lambda1.ets" 2295 } 2296 } 2297 }, 2298 "loc": { 2299 "start": { 2300 "line": 41, 2301 "column": 9, 2302 "program": "generics_implicit_lambda1.ets" 2303 }, 2304 "end": { 2305 "line": 41, 2306 "column": 18, 2307 "program": "generics_implicit_lambda1.ets" 2308 } 2309 } 2310 }, 2311 "body": { 2312 "type": "BlockStatement", 2313 "statements": [ 2314 { 2315 "type": "ReturnStatement", 2316 "argument": { 2317 "type": "StringLiteral", 2318 "value": "XXX", 2319 "loc": { 2320 "start": { 2321 "line": 41, 2322 "column": 28, 2323 "program": "generics_implicit_lambda1.ets" 2324 }, 2325 "end": { 2326 "line": 41, 2327 "column": 33, 2328 "program": "generics_implicit_lambda1.ets" 2329 } 2330 } 2331 }, 2332 "loc": { 2333 "start": { 2334 "line": 41, 2335 "column": 21, 2336 "program": "generics_implicit_lambda1.ets" 2337 }, 2338 "end": { 2339 "line": 41, 2340 "column": 33, 2341 "program": "generics_implicit_lambda1.ets" 2342 } 2343 } 2344 } 2345 ], 2346 "loc": { 2347 "start": { 2348 "line": 41, 2349 "column": 19, 2350 "program": "generics_implicit_lambda1.ets" 2351 }, 2352 "end": { 2353 "line": 41, 2354 "column": 35, 2355 "program": "generics_implicit_lambda1.ets" 2356 } 2357 } 2358 }, 2359 "loc": { 2360 "start": { 2361 "line": 41, 2362 "column": 5, 2363 "program": "generics_implicit_lambda1.ets" 2364 }, 2365 "end": { 2366 "line": 41, 2367 "column": 35, 2368 "program": "generics_implicit_lambda1.ets" 2369 } 2370 } 2371 }, 2372 "loc": { 2373 "start": { 2374 "line": 41, 2375 "column": 5, 2376 "program": "generics_implicit_lambda1.ets" 2377 }, 2378 "end": { 2379 "line": 41, 2380 "column": 35, 2381 "program": "generics_implicit_lambda1.ets" 2382 } 2383 } 2384 } 2385 ], 2386 "optional": false, 2387 "loc": { 2388 "start": { 2389 "line": 40, 2390 "column": 5, 2391 "program": "generics_implicit_lambda1.ets" 2392 }, 2393 "end": { 2394 "line": 42, 2395 "column": 6, 2396 "program": "generics_implicit_lambda1.ets" 2397 } 2398 } 2399 }, 2400 "loc": { 2401 "start": { 2402 "line": 40, 2403 "column": 5, 2404 "program": "generics_implicit_lambda1.ets" 2405 }, 2406 "end": { 2407 "line": 42, 2408 "column": 6, 2409 "program": "generics_implicit_lambda1.ets" 2410 } 2411 } 2412 } 2413 ], 2414 "loc": { 2415 "start": { 2416 "line": 35, 2417 "column": 17, 2418 "program": "generics_implicit_lambda1.ets" 2419 }, 2420 "end": { 2421 "line": 44, 2422 "column": 2, 2423 "program": "generics_implicit_lambda1.ets" 2424 } 2425 } 2426 }, 2427 "loc": { 2428 "start": { 2429 "line": 35, 2430 "column": 10, 2431 "program": "generics_implicit_lambda1.ets" 2432 }, 2433 "end": { 2434 "line": 44, 2435 "column": 2, 2436 "program": "generics_implicit_lambda1.ets" 2437 } 2438 } 2439 }, 2440 "loc": { 2441 "start": { 2442 "line": 35, 2443 "column": 10, 2444 "program": "generics_implicit_lambda1.ets" 2445 }, 2446 "end": { 2447 "line": 44, 2448 "column": 2, 2449 "program": "generics_implicit_lambda1.ets" 2450 } 2451 } 2452 }, 2453 "overloads": [], 2454 "decorators": [], 2455 "loc": { 2456 "start": { 2457 "line": 35, 2458 "column": 1, 2459 "program": "generics_implicit_lambda1.ets" 2460 }, 2461 "end": { 2462 "line": 44, 2463 "column": 2, 2464 "program": "generics_implicit_lambda1.ets" 2465 } 2466 } 2467 } 2468 ], 2469 "loc": { 2470 "start": { 2471 "line": 1, 2472 "column": 1, 2473 "program": "generics_implicit_lambda1.ets" 2474 }, 2475 "end": { 2476 "line": 1, 2477 "column": 1, 2478 "program": "generics_implicit_lambda1.ets" 2479 } 2480 } 2481 }, 2482 "loc": { 2483 "start": { 2484 "line": 1, 2485 "column": 1, 2486 "program": "generics_implicit_lambda1.ets" 2487 }, 2488 "end": { 2489 "line": 1, 2490 "column": 1, 2491 "program": "generics_implicit_lambda1.ets" 2492 } 2493 } 2494 } 2495 ], 2496 "loc": { 2497 "start": { 2498 "line": 1, 2499 "column": 1, 2500 "program": "generics_implicit_lambda1.ets" 2501 }, 2502 "end": { 2503 "line": 44, 2504 "column": 2, 2505 "program": "generics_implicit_lambda1.ets" 2506 } 2507 } 2508} 2509