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 "rest parameter": { 167 "type": "RestElement", 168 "argument": { 169 "type": "Identifier", 170 "name": "a", 171 "decorators": [], 172 "loc": { 173 "start": { 174 "line": 16, 175 "column": 17 176 }, 177 "end": { 178 "line": 16, 179 "column": 18 180 } 181 } 182 }, 183 "typeAnnotation": { 184 "type": "TSArrayType", 185 "elementType": { 186 "type": "ETSTypeReference", 187 "part": { 188 "type": "ETSTypeReferencePart", 189 "name": { 190 "type": "Identifier", 191 "name": "Int", 192 "decorators": [], 193 "loc": { 194 "start": { 195 "line": 16, 196 "column": 21 197 }, 198 "end": { 199 "line": 16, 200 "column": 24 201 } 202 } 203 }, 204 "loc": { 205 "start": { 206 "line": 16, 207 "column": 21 208 }, 209 "end": { 210 "line": 16, 211 "column": 25 212 } 213 } 214 }, 215 "loc": { 216 "start": { 217 "line": 16, 218 "column": 21 219 }, 220 "end": { 221 "line": 16, 222 "column": 25 223 } 224 } 225 }, 226 "loc": { 227 "start": { 228 "line": 16, 229 "column": 26 230 }, 231 "end": { 232 "line": 16, 233 "column": 27 234 } 235 } 236 }, 237 "loc": { 238 "start": { 239 "line": 16, 240 "column": 14 241 }, 242 "end": { 243 "line": 16, 244 "column": 27 245 } 246 } 247 }, 248 "loc": { 249 "start": { 250 "line": 16, 251 "column": 14 252 }, 253 "end": { 254 "line": 16, 255 "column": 27 256 } 257 } 258 } 259 ], 260 "returnType": { 261 "type": "ETSTypeReference", 262 "part": { 263 "type": "ETSTypeReferencePart", 264 "name": { 265 "type": "Identifier", 266 "name": "Int", 267 "decorators": [], 268 "loc": { 269 "start": { 270 "line": 16, 271 "column": 30 272 }, 273 "end": { 274 "line": 16, 275 "column": 33 276 } 277 } 278 }, 279 "loc": { 280 "start": { 281 "line": 16, 282 "column": 30 283 }, 284 "end": { 285 "line": 17, 286 "column": 2 287 } 288 } 289 }, 290 "loc": { 291 "start": { 292 "line": 16, 293 "column": 30 294 }, 295 "end": { 296 "line": 17, 297 "column": 2 298 } 299 } 300 }, 301 "body": { 302 "type": "BlockStatement", 303 "statements": [ 304 { 305 "type": "ReturnStatement", 306 "argument": { 307 "type": "NumberLiteral", 308 "value": 1, 309 "loc": { 310 "start": { 311 "line": 18, 312 "column": 12 313 }, 314 "end": { 315 "line": 18, 316 "column": 13 317 } 318 } 319 }, 320 "loc": { 321 "start": { 322 "line": 18, 323 "column": 5 324 }, 325 "end": { 326 "line": 18, 327 "column": 14 328 } 329 } 330 } 331 ], 332 "loc": { 333 "start": { 334 "line": 17, 335 "column": 1 336 }, 337 "end": { 338 "line": 19, 339 "column": 2 340 } 341 } 342 }, 343 "loc": { 344 "start": { 345 "line": 16, 346 "column": 13 347 }, 348 "end": { 349 "line": 19, 350 "column": 2 351 } 352 } 353 }, 354 "loc": { 355 "start": { 356 "line": 16, 357 "column": 13 358 }, 359 "end": { 360 "line": 19, 361 "column": 2 362 } 363 } 364 }, 365 "overloads": [ 366 { 367 "type": "MethodDefinition", 368 "key": { 369 "type": "Identifier", 370 "name": "foo", 371 "decorators": [], 372 "loc": { 373 "start": { 374 "line": 21, 375 "column": 10 376 }, 377 "end": { 378 "line": 21, 379 "column": 13 380 } 381 } 382 }, 383 "kind": "method", 384 "accessibility": "public", 385 "static": true, 386 "optional": false, 387 "computed": false, 388 "value": { 389 "type": "FunctionExpression", 390 "function": { 391 "type": "ScriptFunction", 392 "id": { 393 "type": "Identifier", 394 "name": "foo", 395 "decorators": [], 396 "loc": { 397 "start": { 398 "line": 21, 399 "column": 10 400 }, 401 "end": { 402 "line": 21, 403 "column": 13 404 } 405 } 406 }, 407 "generator": false, 408 "async": false, 409 "expression": false, 410 "params": [ 411 { 412 "type": "ETSParameterExpression", 413 "name": { 414 "type": "Identifier", 415 "name": "a", 416 "typeAnnotation": { 417 "type": "ETSTypeReference", 418 "part": { 419 "type": "ETSTypeReferencePart", 420 "name": { 421 "type": "Identifier", 422 "name": "Int", 423 "decorators": [], 424 "loc": { 425 "start": { 426 "line": 21, 427 "column": 18 428 }, 429 "end": { 430 "line": 21, 431 "column": 21 432 } 433 } 434 }, 435 "loc": { 436 "start": { 437 "line": 21, 438 "column": 18 439 }, 440 "end": { 441 "line": 21, 442 "column": 22 443 } 444 } 445 }, 446 "loc": { 447 "start": { 448 "line": 21, 449 "column": 18 450 }, 451 "end": { 452 "line": 21, 453 "column": 22 454 } 455 } 456 }, 457 "decorators": [], 458 "loc": { 459 "start": { 460 "line": 21, 461 "column": 14 462 }, 463 "end": { 464 "line": 21, 465 "column": 22 466 } 467 } 468 }, 469 "loc": { 470 "start": { 471 "line": 21, 472 "column": 14 473 }, 474 "end": { 475 "line": 21, 476 "column": 22 477 } 478 } 479 }, 480 { 481 "type": "ETSParameterExpression", 482 "name": { 483 "type": "Identifier", 484 "name": "b", 485 "typeAnnotation": { 486 "type": "ETSUnionType", 487 "types": [ 488 { 489 "type": "ETSTypeReference", 490 "part": { 491 "type": "ETSTypeReferencePart", 492 "name": { 493 "type": "Identifier", 494 "name": "String", 495 "decorators": [], 496 "loc": { 497 "start": { 498 "line": 21, 499 "column": 28 500 }, 501 "end": { 502 "line": 21, 503 "column": 34 504 } 505 } 506 }, 507 "loc": { 508 "start": { 509 "line": 21, 510 "column": 28 511 }, 512 "end": { 513 "line": 21, 514 "column": 35 515 } 516 } 517 }, 518 "loc": { 519 "start": { 520 "line": 21, 521 "column": 28 522 }, 523 "end": { 524 "line": 21, 525 "column": 35 526 } 527 } 528 }, 529 { 530 "type": "ETSUndefinedType", 531 "loc": { 532 "start": { 533 "line": 21, 534 "column": 24 535 }, 536 "end": { 537 "line": 21, 538 "column": 25 539 } 540 } 541 } 542 ], 543 "loc": { 544 "start": { 545 "line": 21, 546 "column": 28 547 }, 548 "end": { 549 "line": 21, 550 "column": 35 551 } 552 } 553 }, 554 "decorators": [], 555 "loc": { 556 "start": { 557 "line": 21, 558 "column": 23 559 }, 560 "end": { 561 "line": 21, 562 "column": 35 563 } 564 } 565 }, 566 "loc": { 567 "start": { 568 "line": 21, 569 "column": 23 570 }, 571 "end": { 572 "line": 21, 573 "column": 35 574 } 575 } 576 }, 577 { 578 "type": "ETSParameterExpression", 579 "name": { 580 "type": "Identifier", 581 "name": "c", 582 "typeAnnotation": { 583 "type": "ETSTypeReference", 584 "part": { 585 "type": "ETSTypeReferencePart", 586 "name": { 587 "type": "Identifier", 588 "name": "Int", 589 "decorators": [], 590 "loc": { 591 "start": { 592 "line": 21, 593 "column": 40 594 }, 595 "end": { 596 "line": 21, 597 "column": 43 598 } 599 } 600 }, 601 "loc": { 602 "start": { 603 "line": 21, 604 "column": 40 605 }, 606 "end": { 607 "line": 21, 608 "column": 45 609 } 610 } 611 }, 612 "loc": { 613 "start": { 614 "line": 21, 615 "column": 40 616 }, 617 "end": { 618 "line": 21, 619 "column": 45 620 } 621 } 622 }, 623 "decorators": [], 624 "loc": { 625 "start": { 626 "line": 21, 627 "column": 36 628 }, 629 "end": { 630 "line": 21, 631 "column": 45 632 } 633 } 634 }, 635 "loc": { 636 "start": { 637 "line": 21, 638 "column": 36 639 }, 640 "end": { 641 "line": 21, 642 "column": 48 643 } 644 } 645 } 646 ], 647 "returnType": { 648 "type": "ETSTypeReference", 649 "part": { 650 "type": "ETSTypeReferencePart", 651 "name": { 652 "type": "Identifier", 653 "name": "Int", 654 "decorators": [], 655 "loc": { 656 "start": { 657 "line": 21, 658 "column": 52 659 }, 660 "end": { 661 "line": 21, 662 "column": 55 663 } 664 } 665 }, 666 "loc": { 667 "start": { 668 "line": 21, 669 "column": 52 670 }, 671 "end": { 672 "line": 22, 673 "column": 2 674 } 675 } 676 }, 677 "loc": { 678 "start": { 679 "line": 21, 680 "column": 52 681 }, 682 "end": { 683 "line": 22, 684 "column": 2 685 } 686 } 687 }, 688 "body": { 689 "type": "BlockStatement", 690 "statements": [ 691 { 692 "type": "ReturnStatement", 693 "argument": { 694 "type": "NumberLiteral", 695 "value": 2, 696 "loc": { 697 "start": { 698 "line": 23, 699 "column": 12 700 }, 701 "end": { 702 "line": 23, 703 "column": 13 704 } 705 } 706 }, 707 "loc": { 708 "start": { 709 "line": 23, 710 "column": 5 711 }, 712 "end": { 713 "line": 23, 714 "column": 14 715 } 716 } 717 } 718 ], 719 "loc": { 720 "start": { 721 "line": 22, 722 "column": 1 723 }, 724 "end": { 725 "line": 24, 726 "column": 2 727 } 728 } 729 }, 730 "loc": { 731 "start": { 732 "line": 21, 733 "column": 13 734 }, 735 "end": { 736 "line": 24, 737 "column": 2 738 } 739 } 740 }, 741 "loc": { 742 "start": { 743 "line": 21, 744 "column": 13 745 }, 746 "end": { 747 "line": 24, 748 "column": 2 749 } 750 } 751 }, 752 "overloads": [], 753 "decorators": [], 754 "loc": { 755 "start": { 756 "line": 21, 757 "column": 1 758 }, 759 "end": { 760 "line": 24, 761 "column": 2 762 } 763 } 764 }, 765 { 766 "type": "MethodDefinition", 767 "key": { 768 "type": "Identifier", 769 "name": "foo", 770 "decorators": [], 771 "loc": { 772 "start": { 773 "line": 21, 774 "column": 10 775 }, 776 "end": { 777 "line": 21, 778 "column": 13 779 } 780 } 781 }, 782 "kind": "method", 783 "accessibility": "public", 784 "static": true, 785 "optional": false, 786 "computed": false, 787 "value": { 788 "type": "FunctionExpression", 789 "function": { 790 "type": "ScriptFunction", 791 "id": { 792 "type": "Identifier", 793 "name": "foo", 794 "decorators": [], 795 "loc": { 796 "start": { 797 "line": 21, 798 "column": 10 799 }, 800 "end": { 801 "line": 21, 802 "column": 13 803 } 804 } 805 }, 806 "generator": false, 807 "async": false, 808 "expression": false, 809 "params": [ 810 { 811 "type": "ETSParameterExpression", 812 "name": { 813 "type": "Identifier", 814 "name": "a", 815 "typeAnnotation": { 816 "type": "ETSTypeReference", 817 "part": { 818 "type": "ETSTypeReferencePart", 819 "name": { 820 "type": "Identifier", 821 "name": "Int", 822 "decorators": [], 823 "loc": { 824 "start": { 825 "line": 21, 826 "column": 18 827 }, 828 "end": { 829 "line": 21, 830 "column": 21 831 } 832 } 833 }, 834 "loc": { 835 "start": { 836 "line": 21, 837 "column": 18 838 }, 839 "end": { 840 "line": 21, 841 "column": 22 842 } 843 } 844 }, 845 "loc": { 846 "start": { 847 "line": 21, 848 "column": 18 849 }, 850 "end": { 851 "line": 21, 852 "column": 22 853 } 854 } 855 }, 856 "decorators": [], 857 "loc": { 858 "start": { 859 "line": 21, 860 "column": 14 861 }, 862 "end": { 863 "line": 21, 864 "column": 22 865 } 866 } 867 }, 868 "loc": { 869 "start": { 870 "line": 1, 871 "column": 1 872 }, 873 "end": { 874 "line": 1, 875 "column": 1 876 } 877 } 878 }, 879 { 880 "type": "ETSParameterExpression", 881 "name": { 882 "type": "Identifier", 883 "name": "b", 884 "typeAnnotation": { 885 "type": "ETSUnionType", 886 "types": [ 887 { 888 "type": "ETSTypeReference", 889 "part": { 890 "type": "ETSTypeReferencePart", 891 "name": { 892 "type": "Identifier", 893 "name": "String", 894 "decorators": [], 895 "loc": { 896 "start": { 897 "line": 21, 898 "column": 28 899 }, 900 "end": { 901 "line": 21, 902 "column": 34 903 } 904 } 905 }, 906 "loc": { 907 "start": { 908 "line": 21, 909 "column": 28 910 }, 911 "end": { 912 "line": 21, 913 "column": 35 914 } 915 } 916 }, 917 "loc": { 918 "start": { 919 "line": 21, 920 "column": 28 921 }, 922 "end": { 923 "line": 21, 924 "column": 35 925 } 926 } 927 }, 928 { 929 "type": "ETSUndefinedType", 930 "loc": { 931 "start": { 932 "line": 1, 933 "column": 1 934 }, 935 "end": { 936 "line": 1, 937 "column": 1 938 } 939 } 940 } 941 ], 942 "loc": { 943 "start": { 944 "line": 1, 945 "column": 1 946 }, 947 "end": { 948 "line": 1, 949 "column": 1 950 } 951 } 952 }, 953 "decorators": [], 954 "loc": { 955 "start": { 956 "line": 21, 957 "column": 23 958 }, 959 "end": { 960 "line": 21, 961 "column": 35 962 } 963 } 964 }, 965 "loc": { 966 "start": { 967 "line": 1, 968 "column": 1 969 }, 970 "end": { 971 "line": 1, 972 "column": 1 973 } 974 } 975 } 976 ], 977 "returnType": { 978 "type": "ETSTypeReference", 979 "part": { 980 "type": "ETSTypeReferencePart", 981 "name": { 982 "type": "Identifier", 983 "name": "Int", 984 "decorators": [], 985 "loc": { 986 "start": { 987 "line": 21, 988 "column": 52 989 }, 990 "end": { 991 "line": 21, 992 "column": 55 993 } 994 } 995 }, 996 "loc": { 997 "start": { 998 "line": 21, 999 "column": 52 1000 }, 1001 "end": { 1002 "line": 22, 1003 "column": 2 1004 } 1005 } 1006 }, 1007 "loc": { 1008 "start": { 1009 "line": 21, 1010 "column": 52 1011 }, 1012 "end": { 1013 "line": 22, 1014 "column": 2 1015 } 1016 } 1017 }, 1018 "body": { 1019 "type": "BlockStatement", 1020 "statements": [ 1021 { 1022 "type": "ReturnStatement", 1023 "argument": { 1024 "type": "CallExpression", 1025 "callee": { 1026 "type": "Identifier", 1027 "name": "foo", 1028 "decorators": [], 1029 "loc": { 1030 "start": { 1031 "line": 1, 1032 "column": 1 1033 }, 1034 "end": { 1035 "line": 1, 1036 "column": 1 1037 } 1038 } 1039 }, 1040 "arguments": [ 1041 { 1042 "type": "Identifier", 1043 "name": "a", 1044 "typeAnnotation": { 1045 "type": "ETSTypeReference", 1046 "part": { 1047 "type": "ETSTypeReferencePart", 1048 "name": { 1049 "type": "Identifier", 1050 "name": "Int", 1051 "decorators": [], 1052 "loc": { 1053 "start": { 1054 "line": 21, 1055 "column": 18 1056 }, 1057 "end": { 1058 "line": 21, 1059 "column": 21 1060 } 1061 } 1062 }, 1063 "loc": { 1064 "start": { 1065 "line": 21, 1066 "column": 18 1067 }, 1068 "end": { 1069 "line": 21, 1070 "column": 22 1071 } 1072 } 1073 }, 1074 "loc": { 1075 "start": { 1076 "line": 21, 1077 "column": 18 1078 }, 1079 "end": { 1080 "line": 21, 1081 "column": 22 1082 } 1083 } 1084 }, 1085 "decorators": [], 1086 "loc": { 1087 "start": { 1088 "line": 21, 1089 "column": 14 1090 }, 1091 "end": { 1092 "line": 21, 1093 "column": 22 1094 } 1095 } 1096 }, 1097 { 1098 "type": "Identifier", 1099 "name": "b", 1100 "typeAnnotation": { 1101 "type": "ETSUnionType", 1102 "types": [ 1103 { 1104 "type": "ETSTypeReference", 1105 "part": { 1106 "type": "ETSTypeReferencePart", 1107 "name": { 1108 "type": "Identifier", 1109 "name": "String", 1110 "decorators": [], 1111 "loc": { 1112 "start": { 1113 "line": 21, 1114 "column": 28 1115 }, 1116 "end": { 1117 "line": 21, 1118 "column": 34 1119 } 1120 } 1121 }, 1122 "loc": { 1123 "start": { 1124 "line": 21, 1125 "column": 28 1126 }, 1127 "end": { 1128 "line": 21, 1129 "column": 35 1130 } 1131 } 1132 }, 1133 "loc": { 1134 "start": { 1135 "line": 21, 1136 "column": 28 1137 }, 1138 "end": { 1139 "line": 21, 1140 "column": 35 1141 } 1142 } 1143 }, 1144 { 1145 "type": "ETSUndefinedType", 1146 "loc": { 1147 "start": { 1148 "line": 1, 1149 "column": 1 1150 }, 1151 "end": { 1152 "line": 1, 1153 "column": 1 1154 } 1155 } 1156 } 1157 ], 1158 "loc": { 1159 "start": { 1160 "line": 1, 1161 "column": 1 1162 }, 1163 "end": { 1164 "line": 1, 1165 "column": 1 1166 } 1167 } 1168 }, 1169 "decorators": [], 1170 "loc": { 1171 "start": { 1172 "line": 21, 1173 "column": 23 1174 }, 1175 "end": { 1176 "line": 21, 1177 "column": 35 1178 } 1179 } 1180 }, 1181 { 1182 "type": "NumberLiteral", 1183 "value": 30, 1184 "loc": { 1185 "start": { 1186 "line": 21, 1187 "column": 46 1188 }, 1189 "end": { 1190 "line": 21, 1191 "column": 48 1192 } 1193 } 1194 } 1195 ], 1196 "optional": false, 1197 "loc": { 1198 "start": { 1199 "line": 21, 1200 "column": 1 1201 }, 1202 "end": { 1203 "line": 24, 1204 "column": 2 1205 } 1206 } 1207 }, 1208 "loc": { 1209 "start": { 1210 "line": 1, 1211 "column": 1 1212 }, 1213 "end": { 1214 "line": 1, 1215 "column": 1 1216 } 1217 } 1218 } 1219 ], 1220 "loc": { 1221 "start": { 1222 "line": 1, 1223 "column": 1 1224 }, 1225 "end": { 1226 "line": 1, 1227 "column": 1 1228 } 1229 } 1230 }, 1231 "loc": { 1232 "start": { 1233 "line": 658, 1234 "column": 1 1235 }, 1236 "end": { 1237 "line": 658, 1238 "column": 1 1239 } 1240 } 1241 }, 1242 "loc": { 1243 "start": { 1244 "line": 1, 1245 "column": 1 1246 }, 1247 "end": { 1248 "line": 1, 1249 "column": 1 1250 } 1251 } 1252 }, 1253 "overloads": [], 1254 "decorators": [], 1255 "loc": { 1256 "start": { 1257 "line": 21, 1258 "column": 1 1259 }, 1260 "end": { 1261 "line": 1, 1262 "column": 1 1263 } 1264 } 1265 }, 1266 { 1267 "type": "MethodDefinition", 1268 "key": { 1269 "type": "Identifier", 1270 "name": "foo", 1271 "decorators": [], 1272 "loc": { 1273 "start": { 1274 "line": 21, 1275 "column": 10 1276 }, 1277 "end": { 1278 "line": 21, 1279 "column": 13 1280 } 1281 } 1282 }, 1283 "kind": "method", 1284 "accessibility": "public", 1285 "static": true, 1286 "optional": false, 1287 "computed": false, 1288 "value": { 1289 "type": "FunctionExpression", 1290 "function": { 1291 "type": "ScriptFunction", 1292 "id": { 1293 "type": "Identifier", 1294 "name": "foo", 1295 "decorators": [], 1296 "loc": { 1297 "start": { 1298 "line": 21, 1299 "column": 10 1300 }, 1301 "end": { 1302 "line": 21, 1303 "column": 13 1304 } 1305 } 1306 }, 1307 "generator": false, 1308 "async": false, 1309 "expression": false, 1310 "params": [ 1311 { 1312 "type": "ETSParameterExpression", 1313 "name": { 1314 "type": "Identifier", 1315 "name": "a", 1316 "typeAnnotation": { 1317 "type": "ETSTypeReference", 1318 "part": { 1319 "type": "ETSTypeReferencePart", 1320 "name": { 1321 "type": "Identifier", 1322 "name": "Int", 1323 "decorators": [], 1324 "loc": { 1325 "start": { 1326 "line": 21, 1327 "column": 18 1328 }, 1329 "end": { 1330 "line": 21, 1331 "column": 21 1332 } 1333 } 1334 }, 1335 "loc": { 1336 "start": { 1337 "line": 21, 1338 "column": 18 1339 }, 1340 "end": { 1341 "line": 21, 1342 "column": 22 1343 } 1344 } 1345 }, 1346 "loc": { 1347 "start": { 1348 "line": 21, 1349 "column": 18 1350 }, 1351 "end": { 1352 "line": 21, 1353 "column": 22 1354 } 1355 } 1356 }, 1357 "decorators": [], 1358 "loc": { 1359 "start": { 1360 "line": 21, 1361 "column": 14 1362 }, 1363 "end": { 1364 "line": 21, 1365 "column": 22 1366 } 1367 } 1368 }, 1369 "loc": { 1370 "start": { 1371 "line": 1, 1372 "column": 1 1373 }, 1374 "end": { 1375 "line": 1, 1376 "column": 1 1377 } 1378 } 1379 } 1380 ], 1381 "returnType": { 1382 "type": "ETSTypeReference", 1383 "part": { 1384 "type": "ETSTypeReferencePart", 1385 "name": { 1386 "type": "Identifier", 1387 "name": "Int", 1388 "decorators": [], 1389 "loc": { 1390 "start": { 1391 "line": 21, 1392 "column": 52 1393 }, 1394 "end": { 1395 "line": 21, 1396 "column": 55 1397 } 1398 } 1399 }, 1400 "loc": { 1401 "start": { 1402 "line": 21, 1403 "column": 52 1404 }, 1405 "end": { 1406 "line": 22, 1407 "column": 2 1408 } 1409 } 1410 }, 1411 "loc": { 1412 "start": { 1413 "line": 21, 1414 "column": 52 1415 }, 1416 "end": { 1417 "line": 22, 1418 "column": 2 1419 } 1420 } 1421 }, 1422 "body": { 1423 "type": "BlockStatement", 1424 "statements": [ 1425 { 1426 "type": "ReturnStatement", 1427 "argument": { 1428 "type": "CallExpression", 1429 "callee": { 1430 "type": "Identifier", 1431 "name": "foo", 1432 "decorators": [], 1433 "loc": { 1434 "start": { 1435 "line": 1, 1436 "column": 1 1437 }, 1438 "end": { 1439 "line": 1, 1440 "column": 1 1441 } 1442 } 1443 }, 1444 "arguments": [ 1445 { 1446 "type": "Identifier", 1447 "name": "a", 1448 "typeAnnotation": { 1449 "type": "ETSTypeReference", 1450 "part": { 1451 "type": "ETSTypeReferencePart", 1452 "name": { 1453 "type": "Identifier", 1454 "name": "Int", 1455 "decorators": [], 1456 "loc": { 1457 "start": { 1458 "line": 21, 1459 "column": 18 1460 }, 1461 "end": { 1462 "line": 21, 1463 "column": 21 1464 } 1465 } 1466 }, 1467 "loc": { 1468 "start": { 1469 "line": 21, 1470 "column": 18 1471 }, 1472 "end": { 1473 "line": 21, 1474 "column": 22 1475 } 1476 } 1477 }, 1478 "loc": { 1479 "start": { 1480 "line": 21, 1481 "column": 18 1482 }, 1483 "end": { 1484 "line": 21, 1485 "column": 22 1486 } 1487 } 1488 }, 1489 "decorators": [], 1490 "loc": { 1491 "start": { 1492 "line": 21, 1493 "column": 14 1494 }, 1495 "end": { 1496 "line": 21, 1497 "column": 22 1498 } 1499 } 1500 }, 1501 { 1502 "type": "UndefinedLiteral", 1503 "value": undefined, 1504 "loc": { 1505 "start": { 1506 "line": 1, 1507 "column": 1 1508 }, 1509 "end": { 1510 "line": 1, 1511 "column": 1 1512 } 1513 } 1514 }, 1515 { 1516 "type": "NumberLiteral", 1517 "value": 30, 1518 "loc": { 1519 "start": { 1520 "line": 21, 1521 "column": 46 1522 }, 1523 "end": { 1524 "line": 21, 1525 "column": 48 1526 } 1527 } 1528 } 1529 ], 1530 "optional": false, 1531 "loc": { 1532 "start": { 1533 "line": 21, 1534 "column": 1 1535 }, 1536 "end": { 1537 "line": 24, 1538 "column": 2 1539 } 1540 } 1541 }, 1542 "loc": { 1543 "start": { 1544 "line": 1, 1545 "column": 1 1546 }, 1547 "end": { 1548 "line": 1, 1549 "column": 1 1550 } 1551 } 1552 } 1553 ], 1554 "loc": { 1555 "start": { 1556 "line": 1, 1557 "column": 1 1558 }, 1559 "end": { 1560 "line": 1, 1561 "column": 1 1562 } 1563 } 1564 }, 1565 "loc": { 1566 "start": { 1567 "line": 658, 1568 "column": 1 1569 }, 1570 "end": { 1571 "line": 658, 1572 "column": 1 1573 } 1574 } 1575 }, 1576 "loc": { 1577 "start": { 1578 "line": 1, 1579 "column": 1 1580 }, 1581 "end": { 1582 "line": 1, 1583 "column": 1 1584 } 1585 } 1586 }, 1587 "overloads": [], 1588 "decorators": [], 1589 "loc": { 1590 "start": { 1591 "line": 21, 1592 "column": 1 1593 }, 1594 "end": { 1595 "line": 1, 1596 "column": 1 1597 } 1598 } 1599 } 1600 ], 1601 "decorators": [], 1602 "loc": { 1603 "start": { 1604 "line": 16, 1605 "column": 1 1606 }, 1607 "end": { 1608 "line": 19, 1609 "column": 2 1610 } 1611 } 1612 } 1613 ], 1614 "loc": { 1615 "start": { 1616 "line": 1, 1617 "column": 1 1618 }, 1619 "end": { 1620 "line": 1, 1621 "column": 1 1622 } 1623 } 1624 }, 1625 "loc": { 1626 "start": { 1627 "line": 1, 1628 "column": 1 1629 }, 1630 "end": { 1631 "line": 1, 1632 "column": 1 1633 } 1634 } 1635 } 1636 ], 1637 "loc": { 1638 "start": { 1639 "line": 1, 1640 "column": 1 1641 }, 1642 "end": { 1643 "line": 25, 1644 "column": 1 1645 } 1646 } 1647} 1648