1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "FunctionDeclaration", 6 "function": { 7 "type": "ScriptFunction", 8 "id": { 9 "type": "Identifier", 10 "name": "func1", 11 "decorators": [], 12 "loc": { 13 "start": { 14 "line": 17, 15 "column": 10, 16 "program": "functionCall.ts" 17 }, 18 "end": { 19 "line": 17, 20 "column": 15, 21 "program": "functionCall.ts" 22 } 23 } 24 }, 25 "generator": false, 26 "async": false, 27 "expression": false, 28 "params": [ 29 { 30 "type": "Identifier", 31 "name": "a", 32 "typeAnnotation": { 33 "type": "TSNumberKeyword", 34 "loc": { 35 "start": { 36 "line": 17, 37 "column": 19, 38 "program": "functionCall.ts" 39 }, 40 "end": { 41 "line": 17, 42 "column": 25, 43 "program": "functionCall.ts" 44 } 45 } 46 }, 47 "decorators": [], 48 "loc": { 49 "start": { 50 "line": 17, 51 "column": 16, 52 "program": "functionCall.ts" 53 }, 54 "end": { 55 "line": 17, 56 "column": 17, 57 "program": "functionCall.ts" 58 } 59 } 60 } 61 ], 62 "returnType": { 63 "type": "TSVoidKeyword", 64 "loc": { 65 "start": { 66 "line": 17, 67 "column": 28, 68 "program": "functionCall.ts" 69 }, 70 "end": { 71 "line": 17, 72 "column": 32, 73 "program": "functionCall.ts" 74 } 75 } 76 }, 77 "body": { 78 "type": "BlockStatement", 79 "statements": [], 80 "loc": { 81 "start": { 82 "line": 17, 83 "column": 33, 84 "program": "functionCall.ts" 85 }, 86 "end": { 87 "line": 19, 88 "column": 2, 89 "program": "functionCall.ts" 90 } 91 } 92 }, 93 "loc": { 94 "start": { 95 "line": 17, 96 "column": 1, 97 "program": "functionCall.ts" 98 }, 99 "end": { 100 "line": 19, 101 "column": 2, 102 "program": "functionCall.ts" 103 } 104 } 105 }, 106 "loc": { 107 "start": { 108 "line": 17, 109 "column": 1, 110 "program": "functionCall.ts" 111 }, 112 "end": { 113 "line": 19, 114 "column": 2, 115 "program": "functionCall.ts" 116 } 117 } 118 }, 119 { 120 "type": "ExpressionStatement", 121 "expression": { 122 "type": "CallExpression", 123 "callee": { 124 "type": "Identifier", 125 "name": "func1", 126 "decorators": [], 127 "loc": { 128 "start": { 129 "line": 20, 130 "column": 1, 131 "program": "functionCall.ts" 132 }, 133 "end": { 134 "line": 20, 135 "column": 6, 136 "program": "functionCall.ts" 137 } 138 } 139 }, 140 "arguments": [ 141 { 142 "type": "NumberLiteral", 143 "value": 5, 144 "loc": { 145 "start": { 146 "line": 20, 147 "column": 7, 148 "program": "functionCall.ts" 149 }, 150 "end": { 151 "line": 20, 152 "column": 8, 153 "program": "functionCall.ts" 154 } 155 } 156 } 157 ], 158 "optional": false, 159 "loc": { 160 "start": { 161 "line": 20, 162 "column": 1, 163 "program": "functionCall.ts" 164 }, 165 "end": { 166 "line": 20, 167 "column": 9, 168 "program": "functionCall.ts" 169 } 170 } 171 }, 172 "loc": { 173 "start": { 174 "line": 20, 175 "column": 1, 176 "program": "functionCall.ts" 177 }, 178 "end": { 179 "line": 20, 180 "column": 10, 181 "program": "functionCall.ts" 182 } 183 } 184 }, 185 { 186 "type": "FunctionDeclaration", 187 "function": { 188 "type": "ScriptFunction", 189 "id": { 190 "type": "Identifier", 191 "name": "func2", 192 "decorators": [], 193 "loc": { 194 "start": { 195 "line": 22, 196 "column": 10, 197 "program": "functionCall.ts" 198 }, 199 "end": { 200 "line": 22, 201 "column": 15, 202 "program": "functionCall.ts" 203 } 204 } 205 }, 206 "generator": false, 207 "async": false, 208 "expression": false, 209 "params": [ 210 { 211 "type": "Identifier", 212 "name": "a", 213 "typeAnnotation": { 214 "type": "TSNumberKeyword", 215 "loc": { 216 "start": { 217 "line": 22, 218 "column": 19, 219 "program": "functionCall.ts" 220 }, 221 "end": { 222 "line": 22, 223 "column": 25, 224 "program": "functionCall.ts" 225 } 226 } 227 }, 228 "decorators": [], 229 "loc": { 230 "start": { 231 "line": 22, 232 "column": 16, 233 "program": "functionCall.ts" 234 }, 235 "end": { 236 "line": 22, 237 "column": 17, 238 "program": "functionCall.ts" 239 } 240 } 241 } 242 ], 243 "returnType": { 244 "type": "TSNumberKeyword", 245 "loc": { 246 "start": { 247 "line": 22, 248 "column": 28, 249 "program": "functionCall.ts" 250 }, 251 "end": { 252 "line": 22, 253 "column": 34, 254 "program": "functionCall.ts" 255 } 256 } 257 }, 258 "body": { 259 "type": "BlockStatement", 260 "statements": [ 261 { 262 "type": "ReturnStatement", 263 "argument": { 264 "type": "Identifier", 265 "name": "a", 266 "decorators": [], 267 "loc": { 268 "start": { 269 "line": 23, 270 "column": 12, 271 "program": "functionCall.ts" 272 }, 273 "end": { 274 "line": 23, 275 "column": 13, 276 "program": "functionCall.ts" 277 } 278 } 279 }, 280 "loc": { 281 "start": { 282 "line": 23, 283 "column": 5, 284 "program": "functionCall.ts" 285 }, 286 "end": { 287 "line": 23, 288 "column": 14, 289 "program": "functionCall.ts" 290 } 291 } 292 } 293 ], 294 "loc": { 295 "start": { 296 "line": 22, 297 "column": 35, 298 "program": "functionCall.ts" 299 }, 300 "end": { 301 "line": 24, 302 "column": 2, 303 "program": "functionCall.ts" 304 } 305 } 306 }, 307 "loc": { 308 "start": { 309 "line": 22, 310 "column": 1, 311 "program": "functionCall.ts" 312 }, 313 "end": { 314 "line": 24, 315 "column": 2, 316 "program": "functionCall.ts" 317 } 318 } 319 }, 320 "loc": { 321 "start": { 322 "line": 22, 323 "column": 1, 324 "program": "functionCall.ts" 325 }, 326 "end": { 327 "line": 24, 328 "column": 2, 329 "program": "functionCall.ts" 330 } 331 } 332 }, 333 { 334 "type": "TSTypeAliasDeclaration", 335 "id": { 336 "type": "Identifier", 337 "name": "callAbleObj1", 338 "decorators": [], 339 "loc": { 340 "start": { 341 "line": 26, 342 "column": 6, 343 "program": "functionCall.ts" 344 }, 345 "end": { 346 "line": 26, 347 "column": 18, 348 "program": "functionCall.ts" 349 } 350 } 351 }, 352 "typeAnnotation": { 353 "type": "TSTypeLiteral", 354 "members": [ 355 { 356 "type": "TSCallSignatureDeclaration", 357 "params": [ 358 { 359 "type": "Identifier", 360 "name": "a", 361 "typeAnnotation": { 362 "type": "TSNumberKeyword", 363 "loc": { 364 "start": { 365 "line": 27, 366 "column": 9, 367 "program": "functionCall.ts" 368 }, 369 "end": { 370 "line": 27, 371 "column": 15, 372 "program": "functionCall.ts" 373 } 374 } 375 }, 376 "decorators": [], 377 "loc": { 378 "start": { 379 "line": 27, 380 "column": 6, 381 "program": "functionCall.ts" 382 }, 383 "end": { 384 "line": 27, 385 "column": 7, 386 "program": "functionCall.ts" 387 } 388 } 389 } 390 ], 391 "returnType": { 392 "type": "TSNumberKeyword", 393 "loc": { 394 "start": { 395 "line": 27, 396 "column": 18, 397 "program": "functionCall.ts" 398 }, 399 "end": { 400 "line": 27, 401 "column": 24, 402 "program": "functionCall.ts" 403 } 404 } 405 }, 406 "loc": { 407 "start": { 408 "line": 27, 409 "column": 5, 410 "program": "functionCall.ts" 411 }, 412 "end": { 413 "line": 28, 414 "column": 2, 415 "program": "functionCall.ts" 416 } 417 } 418 } 419 ], 420 "loc": { 421 "start": { 422 "line": 26, 423 "column": 21, 424 "program": "functionCall.ts" 425 }, 426 "end": { 427 "line": 28, 428 "column": 2, 429 "program": "functionCall.ts" 430 } 431 } 432 }, 433 "loc": { 434 "start": { 435 "line": 26, 436 "column": 1, 437 "program": "functionCall.ts" 438 }, 439 "end": { 440 "line": 30, 441 "column": 9, 442 "program": "functionCall.ts" 443 } 444 } 445 }, 446 { 447 "type": "FunctionDeclaration", 448 "function": { 449 "type": "ScriptFunction", 450 "id": { 451 "type": "Identifier", 452 "name": "func3", 453 "decorators": [], 454 "loc": { 455 "start": { 456 "line": 30, 457 "column": 10, 458 "program": "functionCall.ts" 459 }, 460 "end": { 461 "line": 30, 462 "column": 15, 463 "program": "functionCall.ts" 464 } 465 } 466 }, 467 "generator": false, 468 "async": false, 469 "expression": false, 470 "params": [ 471 { 472 "type": "Identifier", 473 "name": "fn", 474 "typeAnnotation": { 475 "type": "TSTypeReference", 476 "typeName": { 477 "type": "Identifier", 478 "name": "callAbleObj1", 479 "decorators": [], 480 "loc": { 481 "start": { 482 "line": 30, 483 "column": 20, 484 "program": "functionCall.ts" 485 }, 486 "end": { 487 "line": 30, 488 "column": 32, 489 "program": "functionCall.ts" 490 } 491 } 492 }, 493 "loc": { 494 "start": { 495 "line": 30, 496 "column": 20, 497 "program": "functionCall.ts" 498 }, 499 "end": { 500 "line": 30, 501 "column": 32, 502 "program": "functionCall.ts" 503 } 504 } 505 }, 506 "decorators": [], 507 "loc": { 508 "start": { 509 "line": 30, 510 "column": 16, 511 "program": "functionCall.ts" 512 }, 513 "end": { 514 "line": 30, 515 "column": 18, 516 "program": "functionCall.ts" 517 } 518 } 519 } 520 ], 521 "returnType": { 522 "type": "TSNumberKeyword", 523 "loc": { 524 "start": { 525 "line": 30, 526 "column": 35, 527 "program": "functionCall.ts" 528 }, 529 "end": { 530 "line": 30, 531 "column": 41, 532 "program": "functionCall.ts" 533 } 534 } 535 }, 536 "body": { 537 "type": "BlockStatement", 538 "statements": [ 539 { 540 "type": "ReturnStatement", 541 "argument": { 542 "type": "CallExpression", 543 "callee": { 544 "type": "Identifier", 545 "name": "fn", 546 "decorators": [], 547 "loc": { 548 "start": { 549 "line": 31, 550 "column": 12, 551 "program": "functionCall.ts" 552 }, 553 "end": { 554 "line": 31, 555 "column": 14, 556 "program": "functionCall.ts" 557 } 558 } 559 }, 560 "arguments": [ 561 { 562 "type": "NumberLiteral", 563 "value": 5, 564 "loc": { 565 "start": { 566 "line": 31, 567 "column": 15, 568 "program": "functionCall.ts" 569 }, 570 "end": { 571 "line": 31, 572 "column": 16, 573 "program": "functionCall.ts" 574 } 575 } 576 } 577 ], 578 "optional": false, 579 "loc": { 580 "start": { 581 "line": 31, 582 "column": 12, 583 "program": "functionCall.ts" 584 }, 585 "end": { 586 "line": 31, 587 "column": 17, 588 "program": "functionCall.ts" 589 } 590 } 591 }, 592 "loc": { 593 "start": { 594 "line": 31, 595 "column": 5, 596 "program": "functionCall.ts" 597 }, 598 "end": { 599 "line": 31, 600 "column": 18, 601 "program": "functionCall.ts" 602 } 603 } 604 } 605 ], 606 "loc": { 607 "start": { 608 "line": 30, 609 "column": 42, 610 "program": "functionCall.ts" 611 }, 612 "end": { 613 "line": 32, 614 "column": 2, 615 "program": "functionCall.ts" 616 } 617 } 618 }, 619 "loc": { 620 "start": { 621 "line": 30, 622 "column": 1, 623 "program": "functionCall.ts" 624 }, 625 "end": { 626 "line": 32, 627 "column": 2, 628 "program": "functionCall.ts" 629 } 630 } 631 }, 632 "loc": { 633 "start": { 634 "line": 30, 635 "column": 1, 636 "program": "functionCall.ts" 637 }, 638 "end": { 639 "line": 32, 640 "column": 2, 641 "program": "functionCall.ts" 642 } 643 } 644 }, 645 { 646 "type": "VariableDeclaration", 647 "declarations": [ 648 { 649 "type": "VariableDeclarator", 650 "id": { 651 "type": "Identifier", 652 "name": "obj1", 653 "typeAnnotation": { 654 "type": "TSTypeReference", 655 "typeName": { 656 "type": "Identifier", 657 "name": "callAbleObj1", 658 "decorators": [], 659 "loc": { 660 "start": { 661 "line": 34, 662 "column": 11, 663 "program": "functionCall.ts" 664 }, 665 "end": { 666 "line": 34, 667 "column": 23, 668 "program": "functionCall.ts" 669 } 670 } 671 }, 672 "loc": { 673 "start": { 674 "line": 34, 675 "column": 11, 676 "program": "functionCall.ts" 677 }, 678 "end": { 679 "line": 34, 680 "column": 23, 681 "program": "functionCall.ts" 682 } 683 } 684 }, 685 "decorators": [], 686 "loc": { 687 "start": { 688 "line": 34, 689 "column": 5, 690 "program": "functionCall.ts" 691 }, 692 "end": { 693 "line": 34, 694 "column": 9, 695 "program": "functionCall.ts" 696 } 697 } 698 }, 699 "init": null, 700 "loc": { 701 "start": { 702 "line": 34, 703 "column": 5, 704 "program": "functionCall.ts" 705 }, 706 "end": { 707 "line": 34, 708 "column": 9, 709 "program": "functionCall.ts" 710 } 711 } 712 } 713 ], 714 "kind": "var", 715 "loc": { 716 "start": { 717 "line": 34, 718 "column": 1, 719 "program": "functionCall.ts" 720 }, 721 "end": { 722 "line": 34, 723 "column": 24, 724 "program": "functionCall.ts" 725 } 726 } 727 }, 728 { 729 "type": "ExpressionStatement", 730 "expression": { 731 "type": "CallExpression", 732 "callee": { 733 "type": "Identifier", 734 "name": "func1", 735 "decorators": [], 736 "loc": { 737 "start": { 738 "line": 35, 739 "column": 1, 740 "program": "functionCall.ts" 741 }, 742 "end": { 743 "line": 35, 744 "column": 6, 745 "program": "functionCall.ts" 746 } 747 } 748 }, 749 "arguments": [ 750 { 751 "type": "CallExpression", 752 "callee": { 753 "type": "Identifier", 754 "name": "func2", 755 "decorators": [], 756 "loc": { 757 "start": { 758 "line": 35, 759 "column": 7, 760 "program": "functionCall.ts" 761 }, 762 "end": { 763 "line": 35, 764 "column": 12, 765 "program": "functionCall.ts" 766 } 767 } 768 }, 769 "arguments": [ 770 { 771 "type": "CallExpression", 772 "callee": { 773 "type": "Identifier", 774 "name": "func3", 775 "decorators": [], 776 "loc": { 777 "start": { 778 "line": 35, 779 "column": 13, 780 "program": "functionCall.ts" 781 }, 782 "end": { 783 "line": 35, 784 "column": 18, 785 "program": "functionCall.ts" 786 } 787 } 788 }, 789 "arguments": [ 790 { 791 "type": "Identifier", 792 "name": "obj1", 793 "decorators": [], 794 "loc": { 795 "start": { 796 "line": 35, 797 "column": 19, 798 "program": "functionCall.ts" 799 }, 800 "end": { 801 "line": 35, 802 "column": 23, 803 "program": "functionCall.ts" 804 } 805 } 806 } 807 ], 808 "optional": false, 809 "loc": { 810 "start": { 811 "line": 35, 812 "column": 13, 813 "program": "functionCall.ts" 814 }, 815 "end": { 816 "line": 35, 817 "column": 24, 818 "program": "functionCall.ts" 819 } 820 } 821 } 822 ], 823 "optional": false, 824 "loc": { 825 "start": { 826 "line": 35, 827 "column": 7, 828 "program": "functionCall.ts" 829 }, 830 "end": { 831 "line": 35, 832 "column": 25, 833 "program": "functionCall.ts" 834 } 835 } 836 } 837 ], 838 "optional": false, 839 "loc": { 840 "start": { 841 "line": 35, 842 "column": 1, 843 "program": "functionCall.ts" 844 }, 845 "end": { 846 "line": 35, 847 "column": 26, 848 "program": "functionCall.ts" 849 } 850 } 851 }, 852 "loc": { 853 "start": { 854 "line": 35, 855 "column": 1, 856 "program": "functionCall.ts" 857 }, 858 "end": { 859 "line": 35, 860 "column": 27, 861 "program": "functionCall.ts" 862 } 863 } 864 }, 865 { 866 "type": "FunctionDeclaration", 867 "function": { 868 "type": "ScriptFunction", 869 "id": { 870 "type": "Identifier", 871 "name": "func4", 872 "decorators": [], 873 "loc": { 874 "start": { 875 "line": 37, 876 "column": 10, 877 "program": "functionCall.ts" 878 }, 879 "end": { 880 "line": 37, 881 "column": 15, 882 "program": "functionCall.ts" 883 } 884 } 885 }, 886 "generator": false, 887 "async": false, 888 "expression": false, 889 "params": [ 890 { 891 "type": "Identifier", 892 "name": "a", 893 "typeAnnotation": { 894 "type": "TSNumberKeyword", 895 "loc": { 896 "start": { 897 "line": 37, 898 "column": 19, 899 "program": "functionCall.ts" 900 }, 901 "end": { 902 "line": 37, 903 "column": 25, 904 "program": "functionCall.ts" 905 } 906 } 907 }, 908 "decorators": [], 909 "loc": { 910 "start": { 911 "line": 37, 912 "column": 16, 913 "program": "functionCall.ts" 914 }, 915 "end": { 916 "line": 37, 917 "column": 17, 918 "program": "functionCall.ts" 919 } 920 } 921 } 922 ], 923 "returnType": { 924 "type": "TSNumberKeyword", 925 "loc": { 926 "start": { 927 "line": 37, 928 "column": 28, 929 "program": "functionCall.ts" 930 }, 931 "end": { 932 "line": 37, 933 "column": 34, 934 "program": "functionCall.ts" 935 } 936 } 937 }, 938 "body": { 939 "type": "BlockStatement", 940 "statements": [ 941 { 942 "type": "ExpressionStatement", 943 "expression": { 944 "type": "UpdateExpression", 945 "operator": "++", 946 "prefix": false, 947 "argument": { 948 "type": "Identifier", 949 "name": "a", 950 "decorators": [], 951 "loc": { 952 "start": { 953 "line": 38, 954 "column": 5, 955 "program": "functionCall.ts" 956 }, 957 "end": { 958 "line": 38, 959 "column": 6, 960 "program": "functionCall.ts" 961 } 962 } 963 }, 964 "loc": { 965 "start": { 966 "line": 38, 967 "column": 5, 968 "program": "functionCall.ts" 969 }, 970 "end": { 971 "line": 38, 972 "column": 8, 973 "program": "functionCall.ts" 974 } 975 } 976 }, 977 "loc": { 978 "start": { 979 "line": 38, 980 "column": 5, 981 "program": "functionCall.ts" 982 }, 983 "end": { 984 "line": 38, 985 "column": 9, 986 "program": "functionCall.ts" 987 } 988 } 989 }, 990 { 991 "type": "ReturnStatement", 992 "argument": { 993 "type": "ConditionalExpression", 994 "test": { 995 "type": "BinaryExpression", 996 "operator": "<", 997 "left": { 998 "type": "Identifier", 999 "name": "a", 1000 "decorators": [], 1001 "loc": { 1002 "start": { 1003 "line": 39, 1004 "column": 12, 1005 "program": "functionCall.ts" 1006 }, 1007 "end": { 1008 "line": 39, 1009 "column": 13, 1010 "program": "functionCall.ts" 1011 } 1012 } 1013 }, 1014 "right": { 1015 "type": "NumberLiteral", 1016 "value": 0, 1017 "loc": { 1018 "start": { 1019 "line": 39, 1020 "column": 16, 1021 "program": "functionCall.ts" 1022 }, 1023 "end": { 1024 "line": 39, 1025 "column": 17, 1026 "program": "functionCall.ts" 1027 } 1028 } 1029 }, 1030 "loc": { 1031 "start": { 1032 "line": 39, 1033 "column": 12, 1034 "program": "functionCall.ts" 1035 }, 1036 "end": { 1037 "line": 39, 1038 "column": 17, 1039 "program": "functionCall.ts" 1040 } 1041 } 1042 }, 1043 "consequent": { 1044 "type": "CallExpression", 1045 "callee": { 1046 "type": "Identifier", 1047 "name": "func4", 1048 "decorators": [], 1049 "loc": { 1050 "start": { 1051 "line": 39, 1052 "column": 20, 1053 "program": "functionCall.ts" 1054 }, 1055 "end": { 1056 "line": 39, 1057 "column": 25, 1058 "program": "functionCall.ts" 1059 } 1060 } 1061 }, 1062 "arguments": [ 1063 { 1064 "type": "Identifier", 1065 "name": "a", 1066 "decorators": [], 1067 "loc": { 1068 "start": { 1069 "line": 39, 1070 "column": 26, 1071 "program": "functionCall.ts" 1072 }, 1073 "end": { 1074 "line": 39, 1075 "column": 27, 1076 "program": "functionCall.ts" 1077 } 1078 } 1079 } 1080 ], 1081 "optional": false, 1082 "loc": { 1083 "start": { 1084 "line": 39, 1085 "column": 20, 1086 "program": "functionCall.ts" 1087 }, 1088 "end": { 1089 "line": 39, 1090 "column": 28, 1091 "program": "functionCall.ts" 1092 } 1093 } 1094 }, 1095 "alternate": { 1096 "type": "Identifier", 1097 "name": "a", 1098 "decorators": [], 1099 "loc": { 1100 "start": { 1101 "line": 39, 1102 "column": 31, 1103 "program": "functionCall.ts" 1104 }, 1105 "end": { 1106 "line": 39, 1107 "column": 32, 1108 "program": "functionCall.ts" 1109 } 1110 } 1111 }, 1112 "loc": { 1113 "start": { 1114 "line": 39, 1115 "column": 12, 1116 "program": "functionCall.ts" 1117 }, 1118 "end": { 1119 "line": 39, 1120 "column": 32, 1121 "program": "functionCall.ts" 1122 } 1123 } 1124 }, 1125 "loc": { 1126 "start": { 1127 "line": 39, 1128 "column": 5, 1129 "program": "functionCall.ts" 1130 }, 1131 "end": { 1132 "line": 39, 1133 "column": 33, 1134 "program": "functionCall.ts" 1135 } 1136 } 1137 } 1138 ], 1139 "loc": { 1140 "start": { 1141 "line": 37, 1142 "column": 35, 1143 "program": "functionCall.ts" 1144 }, 1145 "end": { 1146 "line": 40, 1147 "column": 2, 1148 "program": "functionCall.ts" 1149 } 1150 } 1151 }, 1152 "loc": { 1153 "start": { 1154 "line": 37, 1155 "column": 1, 1156 "program": "functionCall.ts" 1157 }, 1158 "end": { 1159 "line": 40, 1160 "column": 2, 1161 "program": "functionCall.ts" 1162 } 1163 } 1164 }, 1165 "loc": { 1166 "start": { 1167 "line": 37, 1168 "column": 1, 1169 "program": "functionCall.ts" 1170 }, 1171 "end": { 1172 "line": 40, 1173 "column": 2, 1174 "program": "functionCall.ts" 1175 } 1176 } 1177 }, 1178 { 1179 "type": "ExpressionStatement", 1180 "expression": { 1181 "type": "CallExpression", 1182 "callee": { 1183 "type": "Identifier", 1184 "name": "func4", 1185 "decorators": [], 1186 "loc": { 1187 "start": { 1188 "line": 42, 1189 "column": 1, 1190 "program": "functionCall.ts" 1191 }, 1192 "end": { 1193 "line": 42, 1194 "column": 6, 1195 "program": "functionCall.ts" 1196 } 1197 } 1198 }, 1199 "arguments": [ 1200 { 1201 "type": "UnaryExpression", 1202 "operator": "-", 1203 "prefix": true, 1204 "argument": { 1205 "type": "NumberLiteral", 1206 "value": 5, 1207 "loc": { 1208 "start": { 1209 "line": 42, 1210 "column": 8, 1211 "program": "functionCall.ts" 1212 }, 1213 "end": { 1214 "line": 42, 1215 "column": 9, 1216 "program": "functionCall.ts" 1217 } 1218 } 1219 }, 1220 "loc": { 1221 "start": { 1222 "line": 42, 1223 "column": 7, 1224 "program": "functionCall.ts" 1225 }, 1226 "end": { 1227 "line": 42, 1228 "column": 9, 1229 "program": "functionCall.ts" 1230 } 1231 } 1232 } 1233 ], 1234 "optional": false, 1235 "loc": { 1236 "start": { 1237 "line": 42, 1238 "column": 1, 1239 "program": "functionCall.ts" 1240 }, 1241 "end": { 1242 "line": 42, 1243 "column": 10, 1244 "program": "functionCall.ts" 1245 } 1246 } 1247 }, 1248 "loc": { 1249 "start": { 1250 "line": 42, 1251 "column": 1, 1252 "program": "functionCall.ts" 1253 }, 1254 "end": { 1255 "line": 42, 1256 "column": 11, 1257 "program": "functionCall.ts" 1258 } 1259 } 1260 }, 1261 { 1262 "type": "ExpressionStatement", 1263 "expression": { 1264 "type": "CallExpression", 1265 "callee": { 1266 "type": "Identifier", 1267 "name": "func4", 1268 "decorators": [], 1269 "loc": { 1270 "start": { 1271 "line": 43, 1272 "column": 1, 1273 "program": "functionCall.ts" 1274 }, 1275 "end": { 1276 "line": 43, 1277 "column": 6, 1278 "program": "functionCall.ts" 1279 } 1280 } 1281 }, 1282 "arguments": [ 1283 { 1284 "type": "NumberLiteral", 1285 "value": 0, 1286 "loc": { 1287 "start": { 1288 "line": 43, 1289 "column": 7, 1290 "program": "functionCall.ts" 1291 }, 1292 "end": { 1293 "line": 43, 1294 "column": 8, 1295 "program": "functionCall.ts" 1296 } 1297 } 1298 } 1299 ], 1300 "optional": false, 1301 "loc": { 1302 "start": { 1303 "line": 43, 1304 "column": 1, 1305 "program": "functionCall.ts" 1306 }, 1307 "end": { 1308 "line": 43, 1309 "column": 9, 1310 "program": "functionCall.ts" 1311 } 1312 } 1313 }, 1314 "loc": { 1315 "start": { 1316 "line": 43, 1317 "column": 1, 1318 "program": "functionCall.ts" 1319 }, 1320 "end": { 1321 "line": 43, 1322 "column": 10, 1323 "program": "functionCall.ts" 1324 } 1325 } 1326 }, 1327 { 1328 "type": "FunctionDeclaration", 1329 "function": { 1330 "type": "ScriptFunction", 1331 "id": { 1332 "type": "Identifier", 1333 "name": "func5", 1334 "decorators": [], 1335 "loc": { 1336 "start": { 1337 "line": 45, 1338 "column": 10, 1339 "program": "functionCall.ts" 1340 }, 1341 "end": { 1342 "line": 45, 1343 "column": 15, 1344 "program": "functionCall.ts" 1345 } 1346 } 1347 }, 1348 "generator": false, 1349 "async": false, 1350 "expression": false, 1351 "params": [ 1352 { 1353 "type": "Identifier", 1354 "name": "a", 1355 "typeAnnotation": { 1356 "type": "TSNumberKeyword", 1357 "loc": { 1358 "start": { 1359 "line": 45, 1360 "column": 19, 1361 "program": "functionCall.ts" 1362 }, 1363 "end": { 1364 "line": 45, 1365 "column": 25, 1366 "program": "functionCall.ts" 1367 } 1368 } 1369 }, 1370 "decorators": [], 1371 "loc": { 1372 "start": { 1373 "line": 45, 1374 "column": 16, 1375 "program": "functionCall.ts" 1376 }, 1377 "end": { 1378 "line": 45, 1379 "column": 17, 1380 "program": "functionCall.ts" 1381 } 1382 } 1383 }, 1384 { 1385 "type": "Identifier", 1386 "name": "b", 1387 "typeAnnotation": { 1388 "type": "TSStringKeyword", 1389 "loc": { 1390 "start": { 1391 "line": 45, 1392 "column": 30, 1393 "program": "functionCall.ts" 1394 }, 1395 "end": { 1396 "line": 45, 1397 "column": 36, 1398 "program": "functionCall.ts" 1399 } 1400 } 1401 }, 1402 "decorators": [], 1403 "loc": { 1404 "start": { 1405 "line": 45, 1406 "column": 27, 1407 "program": "functionCall.ts" 1408 }, 1409 "end": { 1410 "line": 45, 1411 "column": 28, 1412 "program": "functionCall.ts" 1413 } 1414 } 1415 }, 1416 { 1417 "type": "RestElement", 1418 "argument": { 1419 "type": "Identifier", 1420 "name": "c", 1421 "decorators": [], 1422 "loc": { 1423 "start": { 1424 "line": 45, 1425 "column": 41, 1426 "program": "functionCall.ts" 1427 }, 1428 "end": { 1429 "line": 45, 1430 "column": 42, 1431 "program": "functionCall.ts" 1432 } 1433 } 1434 }, 1435 "loc": { 1436 "start": { 1437 "line": 45, 1438 "column": 38, 1439 "program": "functionCall.ts" 1440 }, 1441 "end": { 1442 "line": 45, 1443 "column": 42, 1444 "program": "functionCall.ts" 1445 } 1446 } 1447 } 1448 ], 1449 "body": { 1450 "type": "BlockStatement", 1451 "statements": [ 1452 { 1453 "type": "ReturnStatement", 1454 "argument": { 1455 "type": "NumberLiteral", 1456 "value": 5, 1457 "loc": { 1458 "start": { 1459 "line": 46, 1460 "column": 12, 1461 "program": "functionCall.ts" 1462 }, 1463 "end": { 1464 "line": 46, 1465 "column": 13, 1466 "program": "functionCall.ts" 1467 } 1468 } 1469 }, 1470 "loc": { 1471 "start": { 1472 "line": 46, 1473 "column": 5, 1474 "program": "functionCall.ts" 1475 }, 1476 "end": { 1477 "line": 46, 1478 "column": 14, 1479 "program": "functionCall.ts" 1480 } 1481 } 1482 } 1483 ], 1484 "loc": { 1485 "start": { 1486 "line": 45, 1487 "column": 44, 1488 "program": "functionCall.ts" 1489 }, 1490 "end": { 1491 "line": 47, 1492 "column": 2, 1493 "program": "functionCall.ts" 1494 } 1495 } 1496 }, 1497 "loc": { 1498 "start": { 1499 "line": 45, 1500 "column": 1, 1501 "program": "functionCall.ts" 1502 }, 1503 "end": { 1504 "line": 47, 1505 "column": 2, 1506 "program": "functionCall.ts" 1507 } 1508 } 1509 }, 1510 "loc": { 1511 "start": { 1512 "line": 45, 1513 "column": 1, 1514 "program": "functionCall.ts" 1515 }, 1516 "end": { 1517 "line": 47, 1518 "column": 2, 1519 "program": "functionCall.ts" 1520 } 1521 } 1522 }, 1523 { 1524 "type": "ExpressionStatement", 1525 "expression": { 1526 "type": "CallExpression", 1527 "callee": { 1528 "type": "Identifier", 1529 "name": "func5", 1530 "decorators": [], 1531 "loc": { 1532 "start": { 1533 "line": 49, 1534 "column": 1, 1535 "program": "functionCall.ts" 1536 }, 1537 "end": { 1538 "line": 49, 1539 "column": 6, 1540 "program": "functionCall.ts" 1541 } 1542 } 1543 }, 1544 "arguments": [ 1545 { 1546 "type": "NumberLiteral", 1547 "value": 1, 1548 "loc": { 1549 "start": { 1550 "line": 49, 1551 "column": 7, 1552 "program": "functionCall.ts" 1553 }, 1554 "end": { 1555 "line": 49, 1556 "column": 8, 1557 "program": "functionCall.ts" 1558 } 1559 } 1560 }, 1561 { 1562 "type": "StringLiteral", 1563 "value": "foo", 1564 "loc": { 1565 "start": { 1566 "line": 49, 1567 "column": 10, 1568 "program": "functionCall.ts" 1569 }, 1570 "end": { 1571 "line": 49, 1572 "column": 15, 1573 "program": "functionCall.ts" 1574 } 1575 } 1576 } 1577 ], 1578 "optional": false, 1579 "loc": { 1580 "start": { 1581 "line": 49, 1582 "column": 1, 1583 "program": "functionCall.ts" 1584 }, 1585 "end": { 1586 "line": 49, 1587 "column": 16, 1588 "program": "functionCall.ts" 1589 } 1590 } 1591 }, 1592 "loc": { 1593 "start": { 1594 "line": 49, 1595 "column": 1, 1596 "program": "functionCall.ts" 1597 }, 1598 "end": { 1599 "line": 49, 1600 "column": 17, 1601 "program": "functionCall.ts" 1602 } 1603 } 1604 }, 1605 { 1606 "type": "ExpressionStatement", 1607 "expression": { 1608 "type": "CallExpression", 1609 "callee": { 1610 "type": "Identifier", 1611 "name": "func5", 1612 "decorators": [], 1613 "loc": { 1614 "start": { 1615 "line": 50, 1616 "column": 1, 1617 "program": "functionCall.ts" 1618 }, 1619 "end": { 1620 "line": 50, 1621 "column": 6, 1622 "program": "functionCall.ts" 1623 } 1624 } 1625 }, 1626 "arguments": [ 1627 { 1628 "type": "NumberLiteral", 1629 "value": 1, 1630 "loc": { 1631 "start": { 1632 "line": 50, 1633 "column": 7, 1634 "program": "functionCall.ts" 1635 }, 1636 "end": { 1637 "line": 50, 1638 "column": 8, 1639 "program": "functionCall.ts" 1640 } 1641 } 1642 }, 1643 { 1644 "type": "StringLiteral", 1645 "value": "foo", 1646 "loc": { 1647 "start": { 1648 "line": 50, 1649 "column": 10, 1650 "program": "functionCall.ts" 1651 }, 1652 "end": { 1653 "line": 50, 1654 "column": 15, 1655 "program": "functionCall.ts" 1656 } 1657 } 1658 }, 1659 { 1660 "type": "NumberLiteral", 1661 "value": 2, 1662 "loc": { 1663 "start": { 1664 "line": 50, 1665 "column": 17, 1666 "program": "functionCall.ts" 1667 }, 1668 "end": { 1669 "line": 50, 1670 "column": 18, 1671 "program": "functionCall.ts" 1672 } 1673 } 1674 }, 1675 { 1676 "type": "BooleanLiteral", 1677 "value": true, 1678 "loc": { 1679 "start": { 1680 "line": 50, 1681 "column": 20, 1682 "program": "functionCall.ts" 1683 }, 1684 "end": { 1685 "line": 50, 1686 "column": 24, 1687 "program": "functionCall.ts" 1688 } 1689 } 1690 }, 1691 { 1692 "type": "ObjectExpression", 1693 "properties": [], 1694 "loc": { 1695 "start": { 1696 "line": 50, 1697 "column": 26, 1698 "program": "functionCall.ts" 1699 }, 1700 "end": { 1701 "line": 50, 1702 "column": 28, 1703 "program": "functionCall.ts" 1704 } 1705 } 1706 } 1707 ], 1708 "optional": false, 1709 "loc": { 1710 "start": { 1711 "line": 50, 1712 "column": 1, 1713 "program": "functionCall.ts" 1714 }, 1715 "end": { 1716 "line": 50, 1717 "column": 29, 1718 "program": "functionCall.ts" 1719 } 1720 } 1721 }, 1722 "loc": { 1723 "start": { 1724 "line": 50, 1725 "column": 1, 1726 "program": "functionCall.ts" 1727 }, 1728 "end": { 1729 "line": 50, 1730 "column": 30, 1731 "program": "functionCall.ts" 1732 } 1733 } 1734 }, 1735 { 1736 "type": "FunctionDeclaration", 1737 "function": { 1738 "type": "ScriptFunction", 1739 "id": { 1740 "type": "Identifier", 1741 "name": "func6", 1742 "decorators": [], 1743 "loc": { 1744 "start": { 1745 "line": 52, 1746 "column": 10, 1747 "program": "functionCall.ts" 1748 }, 1749 "end": { 1750 "line": 52, 1751 "column": 15, 1752 "program": "functionCall.ts" 1753 } 1754 } 1755 }, 1756 "generator": false, 1757 "async": false, 1758 "expression": false, 1759 "params": [ 1760 { 1761 "type": "Identifier", 1762 "name": "a", 1763 "typeAnnotation": { 1764 "type": "TSAnyKeyword", 1765 "loc": { 1766 "start": { 1767 "line": 52, 1768 "column": 19, 1769 "program": "functionCall.ts" 1770 }, 1771 "end": { 1772 "line": 52, 1773 "column": 22, 1774 "program": "functionCall.ts" 1775 } 1776 } 1777 }, 1778 "decorators": [], 1779 "loc": { 1780 "start": { 1781 "line": 52, 1782 "column": 16, 1783 "program": "functionCall.ts" 1784 }, 1785 "end": { 1786 "line": 52, 1787 "column": 17, 1788 "program": "functionCall.ts" 1789 } 1790 } 1791 }, 1792 { 1793 "type": "Identifier", 1794 "name": "b", 1795 "typeAnnotation": { 1796 "type": "TSArrayType", 1797 "elementType": { 1798 "type": "TSStringKeyword", 1799 "loc": { 1800 "start": { 1801 "line": 52, 1802 "column": 28, 1803 "program": "functionCall.ts" 1804 }, 1805 "end": { 1806 "line": 52, 1807 "column": 34, 1808 "program": "functionCall.ts" 1809 } 1810 } 1811 }, 1812 "annotations": [], 1813 "loc": { 1814 "start": { 1815 "line": 52, 1816 "column": 28, 1817 "program": "functionCall.ts" 1818 }, 1819 "end": { 1820 "line": 52, 1821 "column": 36, 1822 "program": "functionCall.ts" 1823 } 1824 } 1825 }, 1826 "optional": true, 1827 "decorators": [], 1828 "loc": { 1829 "start": { 1830 "line": 52, 1831 "column": 24, 1832 "program": "functionCall.ts" 1833 }, 1834 "end": { 1835 "line": 52, 1836 "column": 25, 1837 "program": "functionCall.ts" 1838 } 1839 } 1840 }, 1841 { 1842 "type": "RestElement", 1843 "argument": { 1844 "type": "Identifier", 1845 "name": "c", 1846 "typeAnnotation": { 1847 "type": "TSArrayType", 1848 "elementType": { 1849 "type": "TSNumberKeyword", 1850 "loc": { 1851 "start": { 1852 "line": 52, 1853 "column": 44, 1854 "program": "functionCall.ts" 1855 }, 1856 "end": { 1857 "line": 52, 1858 "column": 50, 1859 "program": "functionCall.ts" 1860 } 1861 } 1862 }, 1863 "annotations": [], 1864 "loc": { 1865 "start": { 1866 "line": 52, 1867 "column": 44, 1868 "program": "functionCall.ts" 1869 }, 1870 "end": { 1871 "line": 52, 1872 "column": 52, 1873 "program": "functionCall.ts" 1874 } 1875 } 1876 }, 1877 "decorators": [], 1878 "loc": { 1879 "start": { 1880 "line": 52, 1881 "column": 41, 1882 "program": "functionCall.ts" 1883 }, 1884 "end": { 1885 "line": 52, 1886 "column": 42, 1887 "program": "functionCall.ts" 1888 } 1889 } 1890 }, 1891 "loc": { 1892 "start": { 1893 "line": 52, 1894 "column": 38, 1895 "program": "functionCall.ts" 1896 }, 1897 "end": { 1898 "line": 52, 1899 "column": 42, 1900 "program": "functionCall.ts" 1901 } 1902 } 1903 } 1904 ], 1905 "body": { 1906 "type": "BlockStatement", 1907 "statements": [ 1908 { 1909 "type": "ReturnStatement", 1910 "argument": { 1911 "type": "BooleanLiteral", 1912 "value": true, 1913 "loc": { 1914 "start": { 1915 "line": 53, 1916 "column": 12, 1917 "program": "functionCall.ts" 1918 }, 1919 "end": { 1920 "line": 53, 1921 "column": 16, 1922 "program": "functionCall.ts" 1923 } 1924 } 1925 }, 1926 "loc": { 1927 "start": { 1928 "line": 53, 1929 "column": 5, 1930 "program": "functionCall.ts" 1931 }, 1932 "end": { 1933 "line": 53, 1934 "column": 17, 1935 "program": "functionCall.ts" 1936 } 1937 } 1938 } 1939 ], 1940 "loc": { 1941 "start": { 1942 "line": 52, 1943 "column": 54, 1944 "program": "functionCall.ts" 1945 }, 1946 "end": { 1947 "line": 54, 1948 "column": 2, 1949 "program": "functionCall.ts" 1950 } 1951 } 1952 }, 1953 "loc": { 1954 "start": { 1955 "line": 52, 1956 "column": 1, 1957 "program": "functionCall.ts" 1958 }, 1959 "end": { 1960 "line": 54, 1961 "column": 2, 1962 "program": "functionCall.ts" 1963 } 1964 } 1965 }, 1966 "loc": { 1967 "start": { 1968 "line": 52, 1969 "column": 1, 1970 "program": "functionCall.ts" 1971 }, 1972 "end": { 1973 "line": 54, 1974 "column": 2, 1975 "program": "functionCall.ts" 1976 } 1977 } 1978 }, 1979 { 1980 "type": "ExpressionStatement", 1981 "expression": { 1982 "type": "CallExpression", 1983 "callee": { 1984 "type": "Identifier", 1985 "name": "func6", 1986 "decorators": [], 1987 "loc": { 1988 "start": { 1989 "line": 56, 1990 "column": 1, 1991 "program": "functionCall.ts" 1992 }, 1993 "end": { 1994 "line": 56, 1995 "column": 6, 1996 "program": "functionCall.ts" 1997 } 1998 } 1999 }, 2000 "arguments": [ 2001 { 2002 "type": "NumberLiteral", 2003 "value": 2, 2004 "loc": { 2005 "start": { 2006 "line": 56, 2007 "column": 7, 2008 "program": "functionCall.ts" 2009 }, 2010 "end": { 2011 "line": 56, 2012 "column": 8, 2013 "program": "functionCall.ts" 2014 } 2015 } 2016 } 2017 ], 2018 "optional": false, 2019 "loc": { 2020 "start": { 2021 "line": 56, 2022 "column": 1, 2023 "program": "functionCall.ts" 2024 }, 2025 "end": { 2026 "line": 56, 2027 "column": 9, 2028 "program": "functionCall.ts" 2029 } 2030 } 2031 }, 2032 "loc": { 2033 "start": { 2034 "line": 56, 2035 "column": 1, 2036 "program": "functionCall.ts" 2037 }, 2038 "end": { 2039 "line": 56, 2040 "column": 10, 2041 "program": "functionCall.ts" 2042 } 2043 } 2044 }, 2045 { 2046 "type": "ExpressionStatement", 2047 "expression": { 2048 "type": "CallExpression", 2049 "callee": { 2050 "type": "Identifier", 2051 "name": "func6", 2052 "decorators": [], 2053 "loc": { 2054 "start": { 2055 "line": 57, 2056 "column": 1, 2057 "program": "functionCall.ts" 2058 }, 2059 "end": { 2060 "line": 57, 2061 "column": 6, 2062 "program": "functionCall.ts" 2063 } 2064 } 2065 }, 2066 "arguments": [ 2067 { 2068 "type": "BooleanLiteral", 2069 "value": false, 2070 "loc": { 2071 "start": { 2072 "line": 57, 2073 "column": 7, 2074 "program": "functionCall.ts" 2075 }, 2076 "end": { 2077 "line": 57, 2078 "column": 12, 2079 "program": "functionCall.ts" 2080 } 2081 } 2082 }, 2083 { 2084 "type": "ArrayExpression", 2085 "elements": [ 2086 { 2087 "type": "StringLiteral", 2088 "value": "foo", 2089 "loc": { 2090 "start": { 2091 "line": 57, 2092 "column": 15, 2093 "program": "functionCall.ts" 2094 }, 2095 "end": { 2096 "line": 57, 2097 "column": 20, 2098 "program": "functionCall.ts" 2099 } 2100 } 2101 } 2102 ], 2103 "loc": { 2104 "start": { 2105 "line": 57, 2106 "column": 14, 2107 "program": "functionCall.ts" 2108 }, 2109 "end": { 2110 "line": 57, 2111 "column": 21, 2112 "program": "functionCall.ts" 2113 } 2114 } 2115 } 2116 ], 2117 "optional": false, 2118 "loc": { 2119 "start": { 2120 "line": 57, 2121 "column": 1, 2122 "program": "functionCall.ts" 2123 }, 2124 "end": { 2125 "line": 57, 2126 "column": 22, 2127 "program": "functionCall.ts" 2128 } 2129 } 2130 }, 2131 "loc": { 2132 "start": { 2133 "line": 57, 2134 "column": 1, 2135 "program": "functionCall.ts" 2136 }, 2137 "end": { 2138 "line": 57, 2139 "column": 23, 2140 "program": "functionCall.ts" 2141 } 2142 } 2143 }, 2144 { 2145 "type": "ExpressionStatement", 2146 "expression": { 2147 "type": "CallExpression", 2148 "callee": { 2149 "type": "Identifier", 2150 "name": "func6", 2151 "decorators": [], 2152 "loc": { 2153 "start": { 2154 "line": 58, 2155 "column": 1, 2156 "program": "functionCall.ts" 2157 }, 2158 "end": { 2159 "line": 58, 2160 "column": 6, 2161 "program": "functionCall.ts" 2162 } 2163 } 2164 }, 2165 "arguments": [ 2166 { 2167 "type": "ObjectExpression", 2168 "properties": [], 2169 "loc": { 2170 "start": { 2171 "line": 58, 2172 "column": 7, 2173 "program": "functionCall.ts" 2174 }, 2175 "end": { 2176 "line": 58, 2177 "column": 9, 2178 "program": "functionCall.ts" 2179 } 2180 } 2181 }, 2182 { 2183 "type": "ArrayExpression", 2184 "elements": [ 2185 { 2186 "type": "StringLiteral", 2187 "value": "foo", 2188 "loc": { 2189 "start": { 2190 "line": 58, 2191 "column": 12, 2192 "program": "functionCall.ts" 2193 }, 2194 "end": { 2195 "line": 58, 2196 "column": 17, 2197 "program": "functionCall.ts" 2198 } 2199 } 2200 } 2201 ], 2202 "loc": { 2203 "start": { 2204 "line": 58, 2205 "column": 11, 2206 "program": "functionCall.ts" 2207 }, 2208 "end": { 2209 "line": 58, 2210 "column": 18, 2211 "program": "functionCall.ts" 2212 } 2213 } 2214 }, 2215 { 2216 "type": "NumberLiteral", 2217 "value": 2, 2218 "loc": { 2219 "start": { 2220 "line": 58, 2221 "column": 20, 2222 "program": "functionCall.ts" 2223 }, 2224 "end": { 2225 "line": 58, 2226 "column": 21, 2227 "program": "functionCall.ts" 2228 } 2229 } 2230 }, 2231 { 2232 "type": "NumberLiteral", 2233 "value": 3, 2234 "loc": { 2235 "start": { 2236 "line": 58, 2237 "column": 23, 2238 "program": "functionCall.ts" 2239 }, 2240 "end": { 2241 "line": 58, 2242 "column": 24, 2243 "program": "functionCall.ts" 2244 } 2245 } 2246 }, 2247 { 2248 "type": "NumberLiteral", 2249 "value": 4, 2250 "loc": { 2251 "start": { 2252 "line": 58, 2253 "column": 26, 2254 "program": "functionCall.ts" 2255 }, 2256 "end": { 2257 "line": 58, 2258 "column": 27, 2259 "program": "functionCall.ts" 2260 } 2261 } 2262 } 2263 ], 2264 "optional": false, 2265 "loc": { 2266 "start": { 2267 "line": 58, 2268 "column": 1, 2269 "program": "functionCall.ts" 2270 }, 2271 "end": { 2272 "line": 58, 2273 "column": 28, 2274 "program": "functionCall.ts" 2275 } 2276 } 2277 }, 2278 "loc": { 2279 "start": { 2280 "line": 58, 2281 "column": 1, 2282 "program": "functionCall.ts" 2283 }, 2284 "end": { 2285 "line": 58, 2286 "column": 29, 2287 "program": "functionCall.ts" 2288 } 2289 } 2290 }, 2291 { 2292 "type": "VariableDeclaration", 2293 "declarations": [ 2294 { 2295 "type": "VariableDeclarator", 2296 "id": { 2297 "type": "Identifier", 2298 "name": "func7", 2299 "typeAnnotation": { 2300 "type": "TSTypeLiteral", 2301 "members": [ 2302 { 2303 "type": "TSCallSignatureDeclaration", 2304 "params": [ 2305 { 2306 "type": "Identifier", 2307 "name": "a", 2308 "typeAnnotation": { 2309 "type": "TSNumberKeyword", 2310 "loc": { 2311 "start": { 2312 "line": 60, 2313 "column": 18, 2314 "program": "functionCall.ts" 2315 }, 2316 "end": { 2317 "line": 60, 2318 "column": 24, 2319 "program": "functionCall.ts" 2320 } 2321 } 2322 }, 2323 "decorators": [], 2324 "loc": { 2325 "start": { 2326 "line": 60, 2327 "column": 15, 2328 "program": "functionCall.ts" 2329 }, 2330 "end": { 2331 "line": 60, 2332 "column": 16, 2333 "program": "functionCall.ts" 2334 } 2335 } 2336 }, 2337 { 2338 "type": "Identifier", 2339 "name": "b", 2340 "typeAnnotation": { 2341 "type": "TSStringKeyword", 2342 "loc": { 2343 "start": { 2344 "line": 60, 2345 "column": 29, 2346 "program": "functionCall.ts" 2347 }, 2348 "end": { 2349 "line": 60, 2350 "column": 35, 2351 "program": "functionCall.ts" 2352 } 2353 } 2354 }, 2355 "decorators": [], 2356 "loc": { 2357 "start": { 2358 "line": 60, 2359 "column": 26, 2360 "program": "functionCall.ts" 2361 }, 2362 "end": { 2363 "line": 60, 2364 "column": 27, 2365 "program": "functionCall.ts" 2366 } 2367 } 2368 } 2369 ], 2370 "returnType": { 2371 "type": "TSNumberKeyword", 2372 "loc": { 2373 "start": { 2374 "line": 60, 2375 "column": 38, 2376 "program": "functionCall.ts" 2377 }, 2378 "end": { 2379 "line": 60, 2380 "column": 44, 2381 "program": "functionCall.ts" 2382 } 2383 } 2384 }, 2385 "loc": { 2386 "start": { 2387 "line": 60, 2388 "column": 14, 2389 "program": "functionCall.ts" 2390 }, 2391 "end": { 2392 "line": 60, 2393 "column": 45, 2394 "program": "functionCall.ts" 2395 } 2396 } 2397 }, 2398 { 2399 "type": "TSCallSignatureDeclaration", 2400 "params": [ 2401 { 2402 "type": "RestElement", 2403 "argument": { 2404 "type": "Identifier", 2405 "name": "a", 2406 "decorators": [], 2407 "loc": { 2408 "start": { 2409 "line": 60, 2410 "column": 50, 2411 "program": "functionCall.ts" 2412 }, 2413 "end": { 2414 "line": 60, 2415 "column": 51, 2416 "program": "functionCall.ts" 2417 } 2418 } 2419 }, 2420 "loc": { 2421 "start": { 2422 "line": 60, 2423 "column": 47, 2424 "program": "functionCall.ts" 2425 }, 2426 "end": { 2427 "line": 60, 2428 "column": 51, 2429 "program": "functionCall.ts" 2430 } 2431 } 2432 } 2433 ], 2434 "returnType": { 2435 "type": "TSStringKeyword", 2436 "loc": { 2437 "start": { 2438 "line": 60, 2439 "column": 54, 2440 "program": "functionCall.ts" 2441 }, 2442 "end": { 2443 "line": 60, 2444 "column": 60, 2445 "program": "functionCall.ts" 2446 } 2447 } 2448 }, 2449 "loc": { 2450 "start": { 2451 "line": 60, 2452 "column": 46, 2453 "program": "functionCall.ts" 2454 }, 2455 "end": { 2456 "line": 60, 2457 "column": 62, 2458 "program": "functionCall.ts" 2459 } 2460 } 2461 } 2462 ], 2463 "loc": { 2464 "start": { 2465 "line": 60, 2466 "column": 12, 2467 "program": "functionCall.ts" 2468 }, 2469 "end": { 2470 "line": 60, 2471 "column": 62, 2472 "program": "functionCall.ts" 2473 } 2474 } 2475 }, 2476 "decorators": [], 2477 "loc": { 2478 "start": { 2479 "line": 60, 2480 "column": 5, 2481 "program": "functionCall.ts" 2482 }, 2483 "end": { 2484 "line": 60, 2485 "column": 10, 2486 "program": "functionCall.ts" 2487 } 2488 } 2489 }, 2490 "init": null, 2491 "loc": { 2492 "start": { 2493 "line": 60, 2494 "column": 5, 2495 "program": "functionCall.ts" 2496 }, 2497 "end": { 2498 "line": 60, 2499 "column": 10, 2500 "program": "functionCall.ts" 2501 } 2502 } 2503 } 2504 ], 2505 "kind": "var", 2506 "loc": { 2507 "start": { 2508 "line": 60, 2509 "column": 1, 2510 "program": "functionCall.ts" 2511 }, 2512 "end": { 2513 "line": 60, 2514 "column": 63, 2515 "program": "functionCall.ts" 2516 } 2517 } 2518 }, 2519 { 2520 "type": "VariableDeclaration", 2521 "declarations": [ 2522 { 2523 "type": "VariableDeclarator", 2524 "id": { 2525 "type": "Identifier", 2526 "name": "b", 2527 "typeAnnotation": { 2528 "type": "TSStringKeyword", 2529 "loc": { 2530 "start": { 2531 "line": 61, 2532 "column": 8, 2533 "program": "functionCall.ts" 2534 }, 2535 "end": { 2536 "line": 61, 2537 "column": 14, 2538 "program": "functionCall.ts" 2539 } 2540 } 2541 }, 2542 "decorators": [], 2543 "loc": { 2544 "start": { 2545 "line": 61, 2546 "column": 5, 2547 "program": "functionCall.ts" 2548 }, 2549 "end": { 2550 "line": 61, 2551 "column": 6, 2552 "program": "functionCall.ts" 2553 } 2554 } 2555 }, 2556 "init": { 2557 "type": "CallExpression", 2558 "callee": { 2559 "type": "Identifier", 2560 "name": "func7", 2561 "decorators": [], 2562 "loc": { 2563 "start": { 2564 "line": 61, 2565 "column": 17, 2566 "program": "functionCall.ts" 2567 }, 2568 "end": { 2569 "line": 61, 2570 "column": 22, 2571 "program": "functionCall.ts" 2572 } 2573 } 2574 }, 2575 "arguments": [], 2576 "optional": false, 2577 "loc": { 2578 "start": { 2579 "line": 61, 2580 "column": 17, 2581 "program": "functionCall.ts" 2582 }, 2583 "end": { 2584 "line": 61, 2585 "column": 24, 2586 "program": "functionCall.ts" 2587 } 2588 } 2589 }, 2590 "loc": { 2591 "start": { 2592 "line": 61, 2593 "column": 5, 2594 "program": "functionCall.ts" 2595 }, 2596 "end": { 2597 "line": 61, 2598 "column": 24, 2599 "program": "functionCall.ts" 2600 } 2601 } 2602 } 2603 ], 2604 "kind": "var", 2605 "loc": { 2606 "start": { 2607 "line": 61, 2608 "column": 1, 2609 "program": "functionCall.ts" 2610 }, 2611 "end": { 2612 "line": 61, 2613 "column": 25, 2614 "program": "functionCall.ts" 2615 } 2616 } 2617 }, 2618 { 2619 "type": "VariableDeclaration", 2620 "declarations": [ 2621 { 2622 "type": "VariableDeclarator", 2623 "id": { 2624 "type": "Identifier", 2625 "name": "c", 2626 "typeAnnotation": { 2627 "type": "TSStringKeyword", 2628 "loc": { 2629 "start": { 2630 "line": 62, 2631 "column": 8, 2632 "program": "functionCall.ts" 2633 }, 2634 "end": { 2635 "line": 62, 2636 "column": 14, 2637 "program": "functionCall.ts" 2638 } 2639 } 2640 }, 2641 "decorators": [], 2642 "loc": { 2643 "start": { 2644 "line": 62, 2645 "column": 5, 2646 "program": "functionCall.ts" 2647 }, 2648 "end": { 2649 "line": 62, 2650 "column": 6, 2651 "program": "functionCall.ts" 2652 } 2653 } 2654 }, 2655 "init": { 2656 "type": "CallExpression", 2657 "callee": { 2658 "type": "Identifier", 2659 "name": "func7", 2660 "decorators": [], 2661 "loc": { 2662 "start": { 2663 "line": 62, 2664 "column": 17, 2665 "program": "functionCall.ts" 2666 }, 2667 "end": { 2668 "line": 62, 2669 "column": 22, 2670 "program": "functionCall.ts" 2671 } 2672 } 2673 }, 2674 "arguments": [ 2675 { 2676 "type": "NumberLiteral", 2677 "value": 1, 2678 "loc": { 2679 "start": { 2680 "line": 62, 2681 "column": 23, 2682 "program": "functionCall.ts" 2683 }, 2684 "end": { 2685 "line": 62, 2686 "column": 24, 2687 "program": "functionCall.ts" 2688 } 2689 } 2690 } 2691 ], 2692 "optional": false, 2693 "loc": { 2694 "start": { 2695 "line": 62, 2696 "column": 17, 2697 "program": "functionCall.ts" 2698 }, 2699 "end": { 2700 "line": 62, 2701 "column": 25, 2702 "program": "functionCall.ts" 2703 } 2704 } 2705 }, 2706 "loc": { 2707 "start": { 2708 "line": 62, 2709 "column": 5, 2710 "program": "functionCall.ts" 2711 }, 2712 "end": { 2713 "line": 62, 2714 "column": 25, 2715 "program": "functionCall.ts" 2716 } 2717 } 2718 } 2719 ], 2720 "kind": "var", 2721 "loc": { 2722 "start": { 2723 "line": 62, 2724 "column": 1, 2725 "program": "functionCall.ts" 2726 }, 2727 "end": { 2728 "line": 62, 2729 "column": 26, 2730 "program": "functionCall.ts" 2731 } 2732 } 2733 }, 2734 { 2735 "type": "VariableDeclaration", 2736 "declarations": [ 2737 { 2738 "type": "VariableDeclarator", 2739 "id": { 2740 "type": "Identifier", 2741 "name": "d", 2742 "typeAnnotation": { 2743 "type": "TSNumberKeyword", 2744 "loc": { 2745 "start": { 2746 "line": 63, 2747 "column": 8, 2748 "program": "functionCall.ts" 2749 }, 2750 "end": { 2751 "line": 63, 2752 "column": 14, 2753 "program": "functionCall.ts" 2754 } 2755 } 2756 }, 2757 "decorators": [], 2758 "loc": { 2759 "start": { 2760 "line": 63, 2761 "column": 5, 2762 "program": "functionCall.ts" 2763 }, 2764 "end": { 2765 "line": 63, 2766 "column": 6, 2767 "program": "functionCall.ts" 2768 } 2769 } 2770 }, 2771 "init": { 2772 "type": "CallExpression", 2773 "callee": { 2774 "type": "Identifier", 2775 "name": "func7", 2776 "decorators": [], 2777 "loc": { 2778 "start": { 2779 "line": 63, 2780 "column": 17, 2781 "program": "functionCall.ts" 2782 }, 2783 "end": { 2784 "line": 63, 2785 "column": 22, 2786 "program": "functionCall.ts" 2787 } 2788 } 2789 }, 2790 "arguments": [ 2791 { 2792 "type": "NumberLiteral", 2793 "value": 1, 2794 "loc": { 2795 "start": { 2796 "line": 63, 2797 "column": 23, 2798 "program": "functionCall.ts" 2799 }, 2800 "end": { 2801 "line": 63, 2802 "column": 24, 2803 "program": "functionCall.ts" 2804 } 2805 } 2806 }, 2807 { 2808 "type": "StringLiteral", 2809 "value": "foo", 2810 "loc": { 2811 "start": { 2812 "line": 63, 2813 "column": 26, 2814 "program": "functionCall.ts" 2815 }, 2816 "end": { 2817 "line": 63, 2818 "column": 31, 2819 "program": "functionCall.ts" 2820 } 2821 } 2822 } 2823 ], 2824 "optional": false, 2825 "loc": { 2826 "start": { 2827 "line": 63, 2828 "column": 17, 2829 "program": "functionCall.ts" 2830 }, 2831 "end": { 2832 "line": 63, 2833 "column": 32, 2834 "program": "functionCall.ts" 2835 } 2836 } 2837 }, 2838 "loc": { 2839 "start": { 2840 "line": 63, 2841 "column": 5, 2842 "program": "functionCall.ts" 2843 }, 2844 "end": { 2845 "line": 63, 2846 "column": 32, 2847 "program": "functionCall.ts" 2848 } 2849 } 2850 } 2851 ], 2852 "kind": "var", 2853 "loc": { 2854 "start": { 2855 "line": 63, 2856 "column": 1, 2857 "program": "functionCall.ts" 2858 }, 2859 "end": { 2860 "line": 63, 2861 "column": 33, 2862 "program": "functionCall.ts" 2863 } 2864 } 2865 }, 2866 { 2867 "type": "VariableDeclaration", 2868 "declarations": [ 2869 { 2870 "type": "VariableDeclarator", 2871 "id": { 2872 "type": "Identifier", 2873 "name": "func8", 2874 "typeAnnotation": { 2875 "type": "TSTypeLiteral", 2876 "members": [ 2877 { 2878 "type": "TSCallSignatureDeclaration", 2879 "params": [ 2880 { 2881 "type": "Identifier", 2882 "name": "a", 2883 "typeAnnotation": { 2884 "type": "TSNumberKeyword", 2885 "loc": { 2886 "start": { 2887 "line": 65, 2888 "column": 19, 2889 "program": "functionCall.ts" 2890 }, 2891 "end": { 2892 "line": 65, 2893 "column": 25, 2894 "program": "functionCall.ts" 2895 } 2896 } 2897 }, 2898 "optional": true, 2899 "decorators": [], 2900 "loc": { 2901 "start": { 2902 "line": 65, 2903 "column": 15, 2904 "program": "functionCall.ts" 2905 }, 2906 "end": { 2907 "line": 65, 2908 "column": 16, 2909 "program": "functionCall.ts" 2910 } 2911 } 2912 }, 2913 { 2914 "type": "RestElement", 2915 "argument": { 2916 "type": "Identifier", 2917 "name": "c", 2918 "decorators": [], 2919 "loc": { 2920 "start": { 2921 "line": 65, 2922 "column": 30, 2923 "program": "functionCall.ts" 2924 }, 2925 "end": { 2926 "line": 65, 2927 "column": 31, 2928 "program": "functionCall.ts" 2929 } 2930 } 2931 }, 2932 "loc": { 2933 "start": { 2934 "line": 65, 2935 "column": 27, 2936 "program": "functionCall.ts" 2937 }, 2938 "end": { 2939 "line": 65, 2940 "column": 31, 2941 "program": "functionCall.ts" 2942 } 2943 } 2944 } 2945 ], 2946 "returnType": { 2947 "type": "TSBooleanKeyword", 2948 "loc": { 2949 "start": { 2950 "line": 65, 2951 "column": 34, 2952 "program": "functionCall.ts" 2953 }, 2954 "end": { 2955 "line": 65, 2956 "column": 41, 2957 "program": "functionCall.ts" 2958 } 2959 } 2960 }, 2961 "loc": { 2962 "start": { 2963 "line": 65, 2964 "column": 14, 2965 "program": "functionCall.ts" 2966 }, 2967 "end": { 2968 "line": 65, 2969 "column": 42, 2970 "program": "functionCall.ts" 2971 } 2972 } 2973 }, 2974 { 2975 "type": "TSCallSignatureDeclaration", 2976 "params": [ 2977 { 2978 "type": "Identifier", 2979 "name": "a", 2980 "typeAnnotation": { 2981 "type": "TSAnyKeyword", 2982 "loc": { 2983 "start": { 2984 "line": 65, 2985 "column": 47, 2986 "program": "functionCall.ts" 2987 }, 2988 "end": { 2989 "line": 65, 2990 "column": 50, 2991 "program": "functionCall.ts" 2992 } 2993 } 2994 }, 2995 "decorators": [], 2996 "loc": { 2997 "start": { 2998 "line": 65, 2999 "column": 44, 3000 "program": "functionCall.ts" 3001 }, 3002 "end": { 3003 "line": 65, 3004 "column": 45, 3005 "program": "functionCall.ts" 3006 } 3007 } 3008 }, 3009 { 3010 "type": "Identifier", 3011 "name": "b", 3012 "typeAnnotation": { 3013 "type": "TSArrayType", 3014 "elementType": { 3015 "type": "TSStringKeyword", 3016 "loc": { 3017 "start": { 3018 "line": 65, 3019 "column": 55, 3020 "program": "functionCall.ts" 3021 }, 3022 "end": { 3023 "line": 65, 3024 "column": 61, 3025 "program": "functionCall.ts" 3026 } 3027 } 3028 }, 3029 "annotations": [], 3030 "loc": { 3031 "start": { 3032 "line": 65, 3033 "column": 55, 3034 "program": "functionCall.ts" 3035 }, 3036 "end": { 3037 "line": 65, 3038 "column": 63, 3039 "program": "functionCall.ts" 3040 } 3041 } 3042 }, 3043 "decorators": [], 3044 "loc": { 3045 "start": { 3046 "line": 65, 3047 "column": 52, 3048 "program": "functionCall.ts" 3049 }, 3050 "end": { 3051 "line": 65, 3052 "column": 53, 3053 "program": "functionCall.ts" 3054 } 3055 } 3056 }, 3057 { 3058 "type": "RestElement", 3059 "argument": { 3060 "type": "Identifier", 3061 "name": "c", 3062 "typeAnnotation": { 3063 "type": "TSArrayType", 3064 "elementType": { 3065 "type": "TSNumberKeyword", 3066 "loc": { 3067 "start": { 3068 "line": 65, 3069 "column": 71, 3070 "program": "functionCall.ts" 3071 }, 3072 "end": { 3073 "line": 65, 3074 "column": 77, 3075 "program": "functionCall.ts" 3076 } 3077 } 3078 }, 3079 "annotations": [], 3080 "loc": { 3081 "start": { 3082 "line": 65, 3083 "column": 71, 3084 "program": "functionCall.ts" 3085 }, 3086 "end": { 3087 "line": 65, 3088 "column": 79, 3089 "program": "functionCall.ts" 3090 } 3091 } 3092 }, 3093 "decorators": [], 3094 "loc": { 3095 "start": { 3096 "line": 65, 3097 "column": 68, 3098 "program": "functionCall.ts" 3099 }, 3100 "end": { 3101 "line": 65, 3102 "column": 69, 3103 "program": "functionCall.ts" 3104 } 3105 } 3106 }, 3107 "loc": { 3108 "start": { 3109 "line": 65, 3110 "column": 65, 3111 "program": "functionCall.ts" 3112 }, 3113 "end": { 3114 "line": 65, 3115 "column": 69, 3116 "program": "functionCall.ts" 3117 } 3118 } 3119 } 3120 ], 3121 "returnType": { 3122 "type": "TSStringKeyword", 3123 "loc": { 3124 "start": { 3125 "line": 65, 3126 "column": 82, 3127 "program": "functionCall.ts" 3128 }, 3129 "end": { 3130 "line": 65, 3131 "column": 88, 3132 "program": "functionCall.ts" 3133 } 3134 } 3135 }, 3136 "loc": { 3137 "start": { 3138 "line": 65, 3139 "column": 43, 3140 "program": "functionCall.ts" 3141 }, 3142 "end": { 3143 "line": 65, 3144 "column": 89, 3145 "program": "functionCall.ts" 3146 } 3147 } 3148 }, 3149 { 3150 "type": "TSCallSignatureDeclaration", 3151 "params": [ 3152 { 3153 "type": "Identifier", 3154 "name": "a", 3155 "typeAnnotation": { 3156 "type": "TSNumberKeyword", 3157 "loc": { 3158 "start": { 3159 "line": 65, 3160 "column": 94, 3161 "program": "functionCall.ts" 3162 }, 3163 "end": { 3164 "line": 65, 3165 "column": 100, 3166 "program": "functionCall.ts" 3167 } 3168 } 3169 }, 3170 "decorators": [], 3171 "loc": { 3172 "start": { 3173 "line": 65, 3174 "column": 91, 3175 "program": "functionCall.ts" 3176 }, 3177 "end": { 3178 "line": 65, 3179 "column": 92, 3180 "program": "functionCall.ts" 3181 } 3182 } 3183 }, 3184 { 3185 "type": "Identifier", 3186 "name": "b", 3187 "typeAnnotation": { 3188 "type": "TSBooleanKeyword", 3189 "loc": { 3190 "start": { 3191 "line": 65, 3192 "column": 105, 3193 "program": "functionCall.ts" 3194 }, 3195 "end": { 3196 "line": 65, 3197 "column": 112, 3198 "program": "functionCall.ts" 3199 } 3200 } 3201 }, 3202 "decorators": [], 3203 "loc": { 3204 "start": { 3205 "line": 65, 3206 "column": 102, 3207 "program": "functionCall.ts" 3208 }, 3209 "end": { 3210 "line": 65, 3211 "column": 103, 3212 "program": "functionCall.ts" 3213 } 3214 } 3215 } 3216 ], 3217 "returnType": { 3218 "type": "TSNumberKeyword", 3219 "loc": { 3220 "start": { 3221 "line": 65, 3222 "column": 115, 3223 "program": "functionCall.ts" 3224 }, 3225 "end": { 3226 "line": 65, 3227 "column": 121, 3228 "program": "functionCall.ts" 3229 } 3230 } 3231 }, 3232 "loc": { 3233 "start": { 3234 "line": 65, 3235 "column": 90, 3236 "program": "functionCall.ts" 3237 }, 3238 "end": { 3239 "line": 65, 3240 "column": 123, 3241 "program": "functionCall.ts" 3242 } 3243 } 3244 } 3245 ], 3246 "loc": { 3247 "start": { 3248 "line": 65, 3249 "column": 12, 3250 "program": "functionCall.ts" 3251 }, 3252 "end": { 3253 "line": 65, 3254 "column": 123, 3255 "program": "functionCall.ts" 3256 } 3257 } 3258 }, 3259 "decorators": [], 3260 "loc": { 3261 "start": { 3262 "line": 65, 3263 "column": 5, 3264 "program": "functionCall.ts" 3265 }, 3266 "end": { 3267 "line": 65, 3268 "column": 10, 3269 "program": "functionCall.ts" 3270 } 3271 } 3272 }, 3273 "init": null, 3274 "loc": { 3275 "start": { 3276 "line": 65, 3277 "column": 5, 3278 "program": "functionCall.ts" 3279 }, 3280 "end": { 3281 "line": 65, 3282 "column": 10, 3283 "program": "functionCall.ts" 3284 } 3285 } 3286 } 3287 ], 3288 "kind": "var", 3289 "loc": { 3290 "start": { 3291 "line": 65, 3292 "column": 1, 3293 "program": "functionCall.ts" 3294 }, 3295 "end": { 3296 "line": 65, 3297 "column": 124, 3298 "program": "functionCall.ts" 3299 } 3300 } 3301 }, 3302 { 3303 "type": "VariableDeclaration", 3304 "declarations": [ 3305 { 3306 "type": "VariableDeclarator", 3307 "id": { 3308 "type": "Identifier", 3309 "name": "e", 3310 "typeAnnotation": { 3311 "type": "TSBooleanKeyword", 3312 "loc": { 3313 "start": { 3314 "line": 66, 3315 "column": 8, 3316 "program": "functionCall.ts" 3317 }, 3318 "end": { 3319 "line": 66, 3320 "column": 15, 3321 "program": "functionCall.ts" 3322 } 3323 } 3324 }, 3325 "decorators": [], 3326 "loc": { 3327 "start": { 3328 "line": 66, 3329 "column": 5, 3330 "program": "functionCall.ts" 3331 }, 3332 "end": { 3333 "line": 66, 3334 "column": 6, 3335 "program": "functionCall.ts" 3336 } 3337 } 3338 }, 3339 "init": { 3340 "type": "CallExpression", 3341 "callee": { 3342 "type": "Identifier", 3343 "name": "func8", 3344 "decorators": [], 3345 "loc": { 3346 "start": { 3347 "line": 66, 3348 "column": 18, 3349 "program": "functionCall.ts" 3350 }, 3351 "end": { 3352 "line": 66, 3353 "column": 23, 3354 "program": "functionCall.ts" 3355 } 3356 } 3357 }, 3358 "arguments": [], 3359 "optional": false, 3360 "loc": { 3361 "start": { 3362 "line": 66, 3363 "column": 18, 3364 "program": "functionCall.ts" 3365 }, 3366 "end": { 3367 "line": 66, 3368 "column": 25, 3369 "program": "functionCall.ts" 3370 } 3371 } 3372 }, 3373 "loc": { 3374 "start": { 3375 "line": 66, 3376 "column": 5, 3377 "program": "functionCall.ts" 3378 }, 3379 "end": { 3380 "line": 66, 3381 "column": 25, 3382 "program": "functionCall.ts" 3383 } 3384 } 3385 } 3386 ], 3387 "kind": "var", 3388 "loc": { 3389 "start": { 3390 "line": 66, 3391 "column": 1, 3392 "program": "functionCall.ts" 3393 }, 3394 "end": { 3395 "line": 66, 3396 "column": 26, 3397 "program": "functionCall.ts" 3398 } 3399 } 3400 }, 3401 { 3402 "type": "VariableDeclaration", 3403 "declarations": [ 3404 { 3405 "type": "VariableDeclarator", 3406 "id": { 3407 "type": "Identifier", 3408 "name": "f", 3409 "typeAnnotation": { 3410 "type": "TSBooleanKeyword", 3411 "loc": { 3412 "start": { 3413 "line": 67, 3414 "column": 8, 3415 "program": "functionCall.ts" 3416 }, 3417 "end": { 3418 "line": 67, 3419 "column": 15, 3420 "program": "functionCall.ts" 3421 } 3422 } 3423 }, 3424 "decorators": [], 3425 "loc": { 3426 "start": { 3427 "line": 67, 3428 "column": 5, 3429 "program": "functionCall.ts" 3430 }, 3431 "end": { 3432 "line": 67, 3433 "column": 6, 3434 "program": "functionCall.ts" 3435 } 3436 } 3437 }, 3438 "init": { 3439 "type": "CallExpression", 3440 "callee": { 3441 "type": "Identifier", 3442 "name": "func8", 3443 "decorators": [], 3444 "loc": { 3445 "start": { 3446 "line": 67, 3447 "column": 18, 3448 "program": "functionCall.ts" 3449 }, 3450 "end": { 3451 "line": 67, 3452 "column": 23, 3453 "program": "functionCall.ts" 3454 } 3455 } 3456 }, 3457 "arguments": [ 3458 { 3459 "type": "NumberLiteral", 3460 "value": 1, 3461 "loc": { 3462 "start": { 3463 "line": 67, 3464 "column": 24, 3465 "program": "functionCall.ts" 3466 }, 3467 "end": { 3468 "line": 67, 3469 "column": 25, 3470 "program": "functionCall.ts" 3471 } 3472 } 3473 } 3474 ], 3475 "optional": false, 3476 "loc": { 3477 "start": { 3478 "line": 67, 3479 "column": 18, 3480 "program": "functionCall.ts" 3481 }, 3482 "end": { 3483 "line": 67, 3484 "column": 26, 3485 "program": "functionCall.ts" 3486 } 3487 } 3488 }, 3489 "loc": { 3490 "start": { 3491 "line": 67, 3492 "column": 5, 3493 "program": "functionCall.ts" 3494 }, 3495 "end": { 3496 "line": 67, 3497 "column": 26, 3498 "program": "functionCall.ts" 3499 } 3500 } 3501 } 3502 ], 3503 "kind": "var", 3504 "loc": { 3505 "start": { 3506 "line": 67, 3507 "column": 1, 3508 "program": "functionCall.ts" 3509 }, 3510 "end": { 3511 "line": 67, 3512 "column": 27, 3513 "program": "functionCall.ts" 3514 } 3515 } 3516 }, 3517 { 3518 "type": "VariableDeclaration", 3519 "declarations": [ 3520 { 3521 "type": "VariableDeclarator", 3522 "id": { 3523 "type": "Identifier", 3524 "name": "g", 3525 "typeAnnotation": { 3526 "type": "TSBooleanKeyword", 3527 "loc": { 3528 "start": { 3529 "line": 68, 3530 "column": 8, 3531 "program": "functionCall.ts" 3532 }, 3533 "end": { 3534 "line": 68, 3535 "column": 15, 3536 "program": "functionCall.ts" 3537 } 3538 } 3539 }, 3540 "decorators": [], 3541 "loc": { 3542 "start": { 3543 "line": 68, 3544 "column": 5, 3545 "program": "functionCall.ts" 3546 }, 3547 "end": { 3548 "line": 68, 3549 "column": 6, 3550 "program": "functionCall.ts" 3551 } 3552 } 3553 }, 3554 "init": { 3555 "type": "CallExpression", 3556 "callee": { 3557 "type": "Identifier", 3558 "name": "func8", 3559 "decorators": [], 3560 "loc": { 3561 "start": { 3562 "line": 68, 3563 "column": 18, 3564 "program": "functionCall.ts" 3565 }, 3566 "end": { 3567 "line": 68, 3568 "column": 23, 3569 "program": "functionCall.ts" 3570 } 3571 } 3572 }, 3573 "arguments": [ 3574 { 3575 "type": "NumberLiteral", 3576 "value": 2, 3577 "loc": { 3578 "start": { 3579 "line": 68, 3580 "column": 24, 3581 "program": "functionCall.ts" 3582 }, 3583 "end": { 3584 "line": 68, 3585 "column": 25, 3586 "program": "functionCall.ts" 3587 } 3588 } 3589 }, 3590 { 3591 "type": "BooleanLiteral", 3592 "value": true, 3593 "loc": { 3594 "start": { 3595 "line": 68, 3596 "column": 27, 3597 "program": "functionCall.ts" 3598 }, 3599 "end": { 3600 "line": 68, 3601 "column": 31, 3602 "program": "functionCall.ts" 3603 } 3604 } 3605 } 3606 ], 3607 "optional": false, 3608 "loc": { 3609 "start": { 3610 "line": 68, 3611 "column": 18, 3612 "program": "functionCall.ts" 3613 }, 3614 "end": { 3615 "line": 68, 3616 "column": 32, 3617 "program": "functionCall.ts" 3618 } 3619 } 3620 }, 3621 "loc": { 3622 "start": { 3623 "line": 68, 3624 "column": 5, 3625 "program": "functionCall.ts" 3626 }, 3627 "end": { 3628 "line": 68, 3629 "column": 32, 3630 "program": "functionCall.ts" 3631 } 3632 } 3633 } 3634 ], 3635 "kind": "var", 3636 "loc": { 3637 "start": { 3638 "line": 68, 3639 "column": 1, 3640 "program": "functionCall.ts" 3641 }, 3642 "end": { 3643 "line": 68, 3644 "column": 33, 3645 "program": "functionCall.ts" 3646 } 3647 } 3648 }, 3649 { 3650 "type": "VariableDeclaration", 3651 "declarations": [ 3652 { 3653 "type": "VariableDeclarator", 3654 "id": { 3655 "type": "Identifier", 3656 "name": "h", 3657 "typeAnnotation": { 3658 "type": "TSBooleanKeyword", 3659 "loc": { 3660 "start": { 3661 "line": 69, 3662 "column": 8, 3663 "program": "functionCall.ts" 3664 }, 3665 "end": { 3666 "line": 69, 3667 "column": 15, 3668 "program": "functionCall.ts" 3669 } 3670 } 3671 }, 3672 "decorators": [], 3673 "loc": { 3674 "start": { 3675 "line": 69, 3676 "column": 5, 3677 "program": "functionCall.ts" 3678 }, 3679 "end": { 3680 "line": 69, 3681 "column": 6, 3682 "program": "functionCall.ts" 3683 } 3684 } 3685 }, 3686 "init": { 3687 "type": "CallExpression", 3688 "callee": { 3689 "type": "Identifier", 3690 "name": "func8", 3691 "decorators": [], 3692 "loc": { 3693 "start": { 3694 "line": 69, 3695 "column": 18, 3696 "program": "functionCall.ts" 3697 }, 3698 "end": { 3699 "line": 69, 3700 "column": 23, 3701 "program": "functionCall.ts" 3702 } 3703 } 3704 }, 3705 "arguments": [ 3706 { 3707 "type": "NumberLiteral", 3708 "value": 2, 3709 "loc": { 3710 "start": { 3711 "line": 69, 3712 "column": 24, 3713 "program": "functionCall.ts" 3714 }, 3715 "end": { 3716 "line": 69, 3717 "column": 25, 3718 "program": "functionCall.ts" 3719 } 3720 } 3721 }, 3722 { 3723 "type": "ArrayExpression", 3724 "elements": [ 3725 { 3726 "type": "StringLiteral", 3727 "value": "foo", 3728 "loc": { 3729 "start": { 3730 "line": 69, 3731 "column": 28, 3732 "program": "functionCall.ts" 3733 }, 3734 "end": { 3735 "line": 69, 3736 "column": 33, 3737 "program": "functionCall.ts" 3738 } 3739 } 3740 }, 3741 { 3742 "type": "StringLiteral", 3743 "value": "bar", 3744 "loc": { 3745 "start": { 3746 "line": 69, 3747 "column": 35, 3748 "program": "functionCall.ts" 3749 }, 3750 "end": { 3751 "line": 69, 3752 "column": 40, 3753 "program": "functionCall.ts" 3754 } 3755 } 3756 } 3757 ], 3758 "loc": { 3759 "start": { 3760 "line": 69, 3761 "column": 27, 3762 "program": "functionCall.ts" 3763 }, 3764 "end": { 3765 "line": 69, 3766 "column": 41, 3767 "program": "functionCall.ts" 3768 } 3769 } 3770 }, 3771 { 3772 "type": "ObjectExpression", 3773 "properties": [], 3774 "loc": { 3775 "start": { 3776 "line": 69, 3777 "column": 43, 3778 "program": "functionCall.ts" 3779 }, 3780 "end": { 3781 "line": 69, 3782 "column": 45, 3783 "program": "functionCall.ts" 3784 } 3785 } 3786 } 3787 ], 3788 "optional": false, 3789 "loc": { 3790 "start": { 3791 "line": 69, 3792 "column": 18, 3793 "program": "functionCall.ts" 3794 }, 3795 "end": { 3796 "line": 69, 3797 "column": 46, 3798 "program": "functionCall.ts" 3799 } 3800 } 3801 }, 3802 "loc": { 3803 "start": { 3804 "line": 69, 3805 "column": 5, 3806 "program": "functionCall.ts" 3807 }, 3808 "end": { 3809 "line": 69, 3810 "column": 46, 3811 "program": "functionCall.ts" 3812 } 3813 } 3814 } 3815 ], 3816 "kind": "var", 3817 "loc": { 3818 "start": { 3819 "line": 69, 3820 "column": 1, 3821 "program": "functionCall.ts" 3822 }, 3823 "end": { 3824 "line": 69, 3825 "column": 47, 3826 "program": "functionCall.ts" 3827 } 3828 } 3829 }, 3830 { 3831 "type": "VariableDeclaration", 3832 "declarations": [ 3833 { 3834 "type": "VariableDeclarator", 3835 "id": { 3836 "type": "Identifier", 3837 "name": "i", 3838 "typeAnnotation": { 3839 "type": "TSStringKeyword", 3840 "loc": { 3841 "start": { 3842 "line": 70, 3843 "column": 8, 3844 "program": "functionCall.ts" 3845 }, 3846 "end": { 3847 "line": 70, 3848 "column": 14, 3849 "program": "functionCall.ts" 3850 } 3851 } 3852 }, 3853 "decorators": [], 3854 "loc": { 3855 "start": { 3856 "line": 70, 3857 "column": 5, 3858 "program": "functionCall.ts" 3859 }, 3860 "end": { 3861 "line": 70, 3862 "column": 6, 3863 "program": "functionCall.ts" 3864 } 3865 } 3866 }, 3867 "init": { 3868 "type": "CallExpression", 3869 "callee": { 3870 "type": "Identifier", 3871 "name": "func8", 3872 "decorators": [], 3873 "loc": { 3874 "start": { 3875 "line": 70, 3876 "column": 17, 3877 "program": "functionCall.ts" 3878 }, 3879 "end": { 3880 "line": 70, 3881 "column": 22, 3882 "program": "functionCall.ts" 3883 } 3884 } 3885 }, 3886 "arguments": [ 3887 { 3888 "type": "ObjectExpression", 3889 "properties": [], 3890 "loc": { 3891 "start": { 3892 "line": 70, 3893 "column": 23, 3894 "program": "functionCall.ts" 3895 }, 3896 "end": { 3897 "line": 70, 3898 "column": 25, 3899 "program": "functionCall.ts" 3900 } 3901 } 3902 }, 3903 { 3904 "type": "ArrayExpression", 3905 "elements": [ 3906 { 3907 "type": "StringLiteral", 3908 "value": "bar", 3909 "loc": { 3910 "start": { 3911 "line": 70, 3912 "column": 28, 3913 "program": "functionCall.ts" 3914 }, 3915 "end": { 3916 "line": 70, 3917 "column": 33, 3918 "program": "functionCall.ts" 3919 } 3920 } 3921 } 3922 ], 3923 "loc": { 3924 "start": { 3925 "line": 70, 3926 "column": 27, 3927 "program": "functionCall.ts" 3928 }, 3929 "end": { 3930 "line": 70, 3931 "column": 34, 3932 "program": "functionCall.ts" 3933 } 3934 } 3935 } 3936 ], 3937 "optional": false, 3938 "loc": { 3939 "start": { 3940 "line": 70, 3941 "column": 17, 3942 "program": "functionCall.ts" 3943 }, 3944 "end": { 3945 "line": 70, 3946 "column": 35, 3947 "program": "functionCall.ts" 3948 } 3949 } 3950 }, 3951 "loc": { 3952 "start": { 3953 "line": 70, 3954 "column": 5, 3955 "program": "functionCall.ts" 3956 }, 3957 "end": { 3958 "line": 70, 3959 "column": 35, 3960 "program": "functionCall.ts" 3961 } 3962 } 3963 } 3964 ], 3965 "kind": "var", 3966 "loc": { 3967 "start": { 3968 "line": 70, 3969 "column": 1, 3970 "program": "functionCall.ts" 3971 }, 3972 "end": { 3973 "line": 70, 3974 "column": 36, 3975 "program": "functionCall.ts" 3976 } 3977 } 3978 }, 3979 { 3980 "type": "VariableDeclaration", 3981 "declarations": [ 3982 { 3983 "type": "VariableDeclarator", 3984 "id": { 3985 "type": "Identifier", 3986 "name": "j", 3987 "typeAnnotation": { 3988 "type": "TSStringKeyword", 3989 "loc": { 3990 "start": { 3991 "line": 71, 3992 "column": 8, 3993 "program": "functionCall.ts" 3994 }, 3995 "end": { 3996 "line": 71, 3997 "column": 14, 3998 "program": "functionCall.ts" 3999 } 4000 } 4001 }, 4002 "decorators": [], 4003 "loc": { 4004 "start": { 4005 "line": 71, 4006 "column": 5, 4007 "program": "functionCall.ts" 4008 }, 4009 "end": { 4010 "line": 71, 4011 "column": 6, 4012 "program": "functionCall.ts" 4013 } 4014 } 4015 }, 4016 "init": { 4017 "type": "CallExpression", 4018 "callee": { 4019 "type": "Identifier", 4020 "name": "func8", 4021 "decorators": [], 4022 "loc": { 4023 "start": { 4024 "line": 71, 4025 "column": 17, 4026 "program": "functionCall.ts" 4027 }, 4028 "end": { 4029 "line": 71, 4030 "column": 22, 4031 "program": "functionCall.ts" 4032 } 4033 } 4034 }, 4035 "arguments": [ 4036 { 4037 "type": "ObjectExpression", 4038 "properties": [], 4039 "loc": { 4040 "start": { 4041 "line": 71, 4042 "column": 23, 4043 "program": "functionCall.ts" 4044 }, 4045 "end": { 4046 "line": 71, 4047 "column": 25, 4048 "program": "functionCall.ts" 4049 } 4050 } 4051 }, 4052 { 4053 "type": "ArrayExpression", 4054 "elements": [ 4055 { 4056 "type": "StringLiteral", 4057 "value": "bar", 4058 "loc": { 4059 "start": { 4060 "line": 71, 4061 "column": 28, 4062 "program": "functionCall.ts" 4063 }, 4064 "end": { 4065 "line": 71, 4066 "column": 33, 4067 "program": "functionCall.ts" 4068 } 4069 } 4070 } 4071 ], 4072 "loc": { 4073 "start": { 4074 "line": 71, 4075 "column": 27, 4076 "program": "functionCall.ts" 4077 }, 4078 "end": { 4079 "line": 71, 4080 "column": 34, 4081 "program": "functionCall.ts" 4082 } 4083 } 4084 }, 4085 { 4086 "type": "NumberLiteral", 4087 "value": 3, 4088 "loc": { 4089 "start": { 4090 "line": 71, 4091 "column": 36, 4092 "program": "functionCall.ts" 4093 }, 4094 "end": { 4095 "line": 71, 4096 "column": 37, 4097 "program": "functionCall.ts" 4098 } 4099 } 4100 }, 4101 { 4102 "type": "NumberLiteral", 4103 "value": 4, 4104 "loc": { 4105 "start": { 4106 "line": 71, 4107 "column": 39, 4108 "program": "functionCall.ts" 4109 }, 4110 "end": { 4111 "line": 71, 4112 "column": 40, 4113 "program": "functionCall.ts" 4114 } 4115 } 4116 }, 4117 { 4118 "type": "NumberLiteral", 4119 "value": 5, 4120 "loc": { 4121 "start": { 4122 "line": 71, 4123 "column": 42, 4124 "program": "functionCall.ts" 4125 }, 4126 "end": { 4127 "line": 71, 4128 "column": 43, 4129 "program": "functionCall.ts" 4130 } 4131 } 4132 } 4133 ], 4134 "optional": false, 4135 "loc": { 4136 "start": { 4137 "line": 71, 4138 "column": 17, 4139 "program": "functionCall.ts" 4140 }, 4141 "end": { 4142 "line": 71, 4143 "column": 44, 4144 "program": "functionCall.ts" 4145 } 4146 } 4147 }, 4148 "loc": { 4149 "start": { 4150 "line": 71, 4151 "column": 5, 4152 "program": "functionCall.ts" 4153 }, 4154 "end": { 4155 "line": 71, 4156 "column": 44, 4157 "program": "functionCall.ts" 4158 } 4159 } 4160 } 4161 ], 4162 "kind": "var", 4163 "loc": { 4164 "start": { 4165 "line": 71, 4166 "column": 1, 4167 "program": "functionCall.ts" 4168 }, 4169 "end": { 4170 "line": 71, 4171 "column": 45, 4172 "program": "functionCall.ts" 4173 } 4174 } 4175 }, 4176 { 4177 "type": "TSDeclareFunction", 4178 "function": { 4179 "type": "ScriptFunction", 4180 "id": { 4181 "type": "Identifier", 4182 "name": "func9", 4183 "decorators": [], 4184 "loc": { 4185 "start": { 4186 "line": 73, 4187 "column": 10, 4188 "program": "functionCall.ts" 4189 }, 4190 "end": { 4191 "line": 73, 4192 "column": 15, 4193 "program": "functionCall.ts" 4194 } 4195 } 4196 }, 4197 "generator": false, 4198 "async": false, 4199 "expression": false, 4200 "params": [ 4201 { 4202 "type": "Identifier", 4203 "name": "a", 4204 "typeAnnotation": { 4205 "type": "TSNumberKeyword", 4206 "loc": { 4207 "start": { 4208 "line": 73, 4209 "column": 19, 4210 "program": "functionCall.ts" 4211 }, 4212 "end": { 4213 "line": 73, 4214 "column": 25, 4215 "program": "functionCall.ts" 4216 } 4217 } 4218 }, 4219 "decorators": [], 4220 "loc": { 4221 "start": { 4222 "line": 73, 4223 "column": 16, 4224 "program": "functionCall.ts" 4225 }, 4226 "end": { 4227 "line": 73, 4228 "column": 17, 4229 "program": "functionCall.ts" 4230 } 4231 } 4232 }, 4233 { 4234 "type": "Identifier", 4235 "name": "b", 4236 "typeAnnotation": { 4237 "type": "TSStringKeyword", 4238 "loc": { 4239 "start": { 4240 "line": 73, 4241 "column": 30, 4242 "program": "functionCall.ts" 4243 }, 4244 "end": { 4245 "line": 73, 4246 "column": 36, 4247 "program": "functionCall.ts" 4248 } 4249 } 4250 }, 4251 "decorators": [], 4252 "loc": { 4253 "start": { 4254 "line": 73, 4255 "column": 27, 4256 "program": "functionCall.ts" 4257 }, 4258 "end": { 4259 "line": 73, 4260 "column": 28, 4261 "program": "functionCall.ts" 4262 } 4263 } 4264 } 4265 ], 4266 "returnType": { 4267 "type": "TSNumberKeyword", 4268 "loc": { 4269 "start": { 4270 "line": 73, 4271 "column": 39, 4272 "program": "functionCall.ts" 4273 }, 4274 "end": { 4275 "line": 73, 4276 "column": 45, 4277 "program": "functionCall.ts" 4278 } 4279 } 4280 }, 4281 "loc": { 4282 "start": { 4283 "line": 73, 4284 "column": 1, 4285 "program": "functionCall.ts" 4286 }, 4287 "end": { 4288 "line": 73, 4289 "column": 46, 4290 "program": "functionCall.ts" 4291 } 4292 } 4293 }, 4294 "loc": { 4295 "start": { 4296 "line": 73, 4297 "column": 1, 4298 "program": "functionCall.ts" 4299 }, 4300 "end": { 4301 "line": 73, 4302 "column": 46, 4303 "program": "functionCall.ts" 4304 } 4305 } 4306 }, 4307 { 4308 "type": "TSDeclareFunction", 4309 "function": { 4310 "type": "ScriptFunction", 4311 "id": { 4312 "type": "Identifier", 4313 "name": "func9", 4314 "decorators": [], 4315 "loc": { 4316 "start": { 4317 "line": 74, 4318 "column": 10, 4319 "program": "functionCall.ts" 4320 }, 4321 "end": { 4322 "line": 74, 4323 "column": 15, 4324 "program": "functionCall.ts" 4325 } 4326 } 4327 }, 4328 "generator": false, 4329 "async": false, 4330 "expression": false, 4331 "params": [ 4332 { 4333 "type": "Identifier", 4334 "name": "a", 4335 "typeAnnotation": { 4336 "type": "TSStringKeyword", 4337 "loc": { 4338 "start": { 4339 "line": 74, 4340 "column": 19, 4341 "program": "functionCall.ts" 4342 }, 4343 "end": { 4344 "line": 74, 4345 "column": 25, 4346 "program": "functionCall.ts" 4347 } 4348 } 4349 }, 4350 "decorators": [], 4351 "loc": { 4352 "start": { 4353 "line": 74, 4354 "column": 16, 4355 "program": "functionCall.ts" 4356 }, 4357 "end": { 4358 "line": 74, 4359 "column": 17, 4360 "program": "functionCall.ts" 4361 } 4362 } 4363 }, 4364 { 4365 "type": "Identifier", 4366 "name": "b", 4367 "typeAnnotation": { 4368 "type": "TSNumberKeyword", 4369 "loc": { 4370 "start": { 4371 "line": 74, 4372 "column": 30, 4373 "program": "functionCall.ts" 4374 }, 4375 "end": { 4376 "line": 74, 4377 "column": 36, 4378 "program": "functionCall.ts" 4379 } 4380 } 4381 }, 4382 "decorators": [], 4383 "loc": { 4384 "start": { 4385 "line": 74, 4386 "column": 27, 4387 "program": "functionCall.ts" 4388 }, 4389 "end": { 4390 "line": 74, 4391 "column": 28, 4392 "program": "functionCall.ts" 4393 } 4394 } 4395 } 4396 ], 4397 "returnType": { 4398 "type": "TSUnionType", 4399 "types": [ 4400 { 4401 "type": "TSNumberKeyword", 4402 "loc": { 4403 "start": { 4404 "line": 74, 4405 "column": 39, 4406 "program": "functionCall.ts" 4407 }, 4408 "end": { 4409 "line": 74, 4410 "column": 45, 4411 "program": "functionCall.ts" 4412 } 4413 } 4414 }, 4415 { 4416 "type": "TSStringKeyword", 4417 "loc": { 4418 "start": { 4419 "line": 74, 4420 "column": 48, 4421 "program": "functionCall.ts" 4422 }, 4423 "end": { 4424 "line": 74, 4425 "column": 54, 4426 "program": "functionCall.ts" 4427 } 4428 } 4429 } 4430 ], 4431 "loc": { 4432 "start": { 4433 "line": 74, 4434 "column": 39, 4435 "program": "functionCall.ts" 4436 }, 4437 "end": { 4438 "line": 74, 4439 "column": 54, 4440 "program": "functionCall.ts" 4441 } 4442 } 4443 }, 4444 "loc": { 4445 "start": { 4446 "line": 74, 4447 "column": 1, 4448 "program": "functionCall.ts" 4449 }, 4450 "end": { 4451 "line": 74, 4452 "column": 55, 4453 "program": "functionCall.ts" 4454 } 4455 } 4456 }, 4457 "loc": { 4458 "start": { 4459 "line": 74, 4460 "column": 1, 4461 "program": "functionCall.ts" 4462 }, 4463 "end": { 4464 "line": 74, 4465 "column": 55, 4466 "program": "functionCall.ts" 4467 } 4468 } 4469 }, 4470 { 4471 "type": "FunctionDeclaration", 4472 "function": { 4473 "type": "ScriptFunction", 4474 "id": { 4475 "type": "Identifier", 4476 "name": "func9", 4477 "decorators": [], 4478 "loc": { 4479 "start": { 4480 "line": 75, 4481 "column": 10, 4482 "program": "functionCall.ts" 4483 }, 4484 "end": { 4485 "line": 75, 4486 "column": 15, 4487 "program": "functionCall.ts" 4488 } 4489 } 4490 }, 4491 "generator": false, 4492 "async": false, 4493 "expression": false, 4494 "params": [ 4495 { 4496 "type": "Identifier", 4497 "name": "a", 4498 "typeAnnotation": { 4499 "type": "TSUnionType", 4500 "types": [ 4501 { 4502 "type": "TSNumberKeyword", 4503 "loc": { 4504 "start": { 4505 "line": 75, 4506 "column": 19, 4507 "program": "functionCall.ts" 4508 }, 4509 "end": { 4510 "line": 75, 4511 "column": 25, 4512 "program": "functionCall.ts" 4513 } 4514 } 4515 }, 4516 { 4517 "type": "TSStringKeyword", 4518 "loc": { 4519 "start": { 4520 "line": 75, 4521 "column": 28, 4522 "program": "functionCall.ts" 4523 }, 4524 "end": { 4525 "line": 75, 4526 "column": 34, 4527 "program": "functionCall.ts" 4528 } 4529 } 4530 } 4531 ], 4532 "loc": { 4533 "start": { 4534 "line": 75, 4535 "column": 19, 4536 "program": "functionCall.ts" 4537 }, 4538 "end": { 4539 "line": 75, 4540 "column": 34, 4541 "program": "functionCall.ts" 4542 } 4543 } 4544 }, 4545 "decorators": [], 4546 "loc": { 4547 "start": { 4548 "line": 75, 4549 "column": 16, 4550 "program": "functionCall.ts" 4551 }, 4552 "end": { 4553 "line": 75, 4554 "column": 17, 4555 "program": "functionCall.ts" 4556 } 4557 } 4558 }, 4559 { 4560 "type": "Identifier", 4561 "name": "b", 4562 "typeAnnotation": { 4563 "type": "TSUnionType", 4564 "types": [ 4565 { 4566 "type": "TSNumberKeyword", 4567 "loc": { 4568 "start": { 4569 "line": 75, 4570 "column": 40, 4571 "program": "functionCall.ts" 4572 }, 4573 "end": { 4574 "line": 75, 4575 "column": 46, 4576 "program": "functionCall.ts" 4577 } 4578 } 4579 }, 4580 { 4581 "type": "TSStringKeyword", 4582 "loc": { 4583 "start": { 4584 "line": 75, 4585 "column": 49, 4586 "program": "functionCall.ts" 4587 }, 4588 "end": { 4589 "line": 75, 4590 "column": 55, 4591 "program": "functionCall.ts" 4592 } 4593 } 4594 } 4595 ], 4596 "loc": { 4597 "start": { 4598 "line": 75, 4599 "column": 40, 4600 "program": "functionCall.ts" 4601 }, 4602 "end": { 4603 "line": 75, 4604 "column": 55, 4605 "program": "functionCall.ts" 4606 } 4607 } 4608 }, 4609 "optional": true, 4610 "decorators": [], 4611 "loc": { 4612 "start": { 4613 "line": 75, 4614 "column": 36, 4615 "program": "functionCall.ts" 4616 }, 4617 "end": { 4618 "line": 75, 4619 "column": 37, 4620 "program": "functionCall.ts" 4621 } 4622 } 4623 } 4624 ], 4625 "returnType": { 4626 "type": "TSUnionType", 4627 "types": [ 4628 { 4629 "type": "TSNumberKeyword", 4630 "loc": { 4631 "start": { 4632 "line": 75, 4633 "column": 58, 4634 "program": "functionCall.ts" 4635 }, 4636 "end": { 4637 "line": 75, 4638 "column": 64, 4639 "program": "functionCall.ts" 4640 } 4641 } 4642 }, 4643 { 4644 "type": "TSStringKeyword", 4645 "loc": { 4646 "start": { 4647 "line": 75, 4648 "column": 67, 4649 "program": "functionCall.ts" 4650 }, 4651 "end": { 4652 "line": 75, 4653 "column": 73, 4654 "program": "functionCall.ts" 4655 } 4656 } 4657 }, 4658 { 4659 "type": "TSBooleanKeyword", 4660 "loc": { 4661 "start": { 4662 "line": 75, 4663 "column": 76, 4664 "program": "functionCall.ts" 4665 }, 4666 "end": { 4667 "line": 75, 4668 "column": 83, 4669 "program": "functionCall.ts" 4670 } 4671 } 4672 } 4673 ], 4674 "loc": { 4675 "start": { 4676 "line": 75, 4677 "column": 58, 4678 "program": "functionCall.ts" 4679 }, 4680 "end": { 4681 "line": 75, 4682 "column": 83, 4683 "program": "functionCall.ts" 4684 } 4685 } 4686 }, 4687 "body": { 4688 "type": "BlockStatement", 4689 "statements": [ 4690 { 4691 "type": "ReturnStatement", 4692 "argument": { 4693 "type": "BooleanLiteral", 4694 "value": true, 4695 "loc": { 4696 "start": { 4697 "line": 76, 4698 "column": 12, 4699 "program": "functionCall.ts" 4700 }, 4701 "end": { 4702 "line": 76, 4703 "column": 16, 4704 "program": "functionCall.ts" 4705 } 4706 } 4707 }, 4708 "loc": { 4709 "start": { 4710 "line": 76, 4711 "column": 5, 4712 "program": "functionCall.ts" 4713 }, 4714 "end": { 4715 "line": 76, 4716 "column": 17, 4717 "program": "functionCall.ts" 4718 } 4719 } 4720 } 4721 ], 4722 "loc": { 4723 "start": { 4724 "line": 75, 4725 "column": 84, 4726 "program": "functionCall.ts" 4727 }, 4728 "end": { 4729 "line": 77, 4730 "column": 2, 4731 "program": "functionCall.ts" 4732 } 4733 } 4734 }, 4735 "loc": { 4736 "start": { 4737 "line": 75, 4738 "column": 1, 4739 "program": "functionCall.ts" 4740 }, 4741 "end": { 4742 "line": 77, 4743 "column": 2, 4744 "program": "functionCall.ts" 4745 } 4746 } 4747 }, 4748 "loc": { 4749 "start": { 4750 "line": 75, 4751 "column": 1, 4752 "program": "functionCall.ts" 4753 }, 4754 "end": { 4755 "line": 77, 4756 "column": 2, 4757 "program": "functionCall.ts" 4758 } 4759 } 4760 }, 4761 { 4762 "type": "VariableDeclaration", 4763 "declarations": [ 4764 { 4765 "type": "VariableDeclarator", 4766 "id": { 4767 "type": "Identifier", 4768 "name": "k", 4769 "typeAnnotation": { 4770 "type": "TSNumberKeyword", 4771 "loc": { 4772 "start": { 4773 "line": 79, 4774 "column": 8, 4775 "program": "functionCall.ts" 4776 }, 4777 "end": { 4778 "line": 79, 4779 "column": 14, 4780 "program": "functionCall.ts" 4781 } 4782 } 4783 }, 4784 "decorators": [], 4785 "loc": { 4786 "start": { 4787 "line": 79, 4788 "column": 5, 4789 "program": "functionCall.ts" 4790 }, 4791 "end": { 4792 "line": 79, 4793 "column": 6, 4794 "program": "functionCall.ts" 4795 } 4796 } 4797 }, 4798 "init": { 4799 "type": "CallExpression", 4800 "callee": { 4801 "type": "Identifier", 4802 "name": "func9", 4803 "decorators": [], 4804 "loc": { 4805 "start": { 4806 "line": 79, 4807 "column": 17, 4808 "program": "functionCall.ts" 4809 }, 4810 "end": { 4811 "line": 79, 4812 "column": 22, 4813 "program": "functionCall.ts" 4814 } 4815 } 4816 }, 4817 "arguments": [ 4818 { 4819 "type": "NumberLiteral", 4820 "value": 1, 4821 "loc": { 4822 "start": { 4823 "line": 79, 4824 "column": 23, 4825 "program": "functionCall.ts" 4826 }, 4827 "end": { 4828 "line": 79, 4829 "column": 24, 4830 "program": "functionCall.ts" 4831 } 4832 } 4833 }, 4834 { 4835 "type": "StringLiteral", 4836 "value": "foo", 4837 "loc": { 4838 "start": { 4839 "line": 79, 4840 "column": 26, 4841 "program": "functionCall.ts" 4842 }, 4843 "end": { 4844 "line": 79, 4845 "column": 31, 4846 "program": "functionCall.ts" 4847 } 4848 } 4849 } 4850 ], 4851 "optional": false, 4852 "loc": { 4853 "start": { 4854 "line": 79, 4855 "column": 17, 4856 "program": "functionCall.ts" 4857 }, 4858 "end": { 4859 "line": 79, 4860 "column": 32, 4861 "program": "functionCall.ts" 4862 } 4863 } 4864 }, 4865 "loc": { 4866 "start": { 4867 "line": 79, 4868 "column": 5, 4869 "program": "functionCall.ts" 4870 }, 4871 "end": { 4872 "line": 79, 4873 "column": 32, 4874 "program": "functionCall.ts" 4875 } 4876 } 4877 } 4878 ], 4879 "kind": "var", 4880 "loc": { 4881 "start": { 4882 "line": 79, 4883 "column": 1, 4884 "program": "functionCall.ts" 4885 }, 4886 "end": { 4887 "line": 79, 4888 "column": 33, 4889 "program": "functionCall.ts" 4890 } 4891 } 4892 }, 4893 { 4894 "type": "VariableDeclaration", 4895 "declarations": [ 4896 { 4897 "type": "VariableDeclarator", 4898 "id": { 4899 "type": "Identifier", 4900 "name": "l", 4901 "typeAnnotation": { 4902 "type": "TSUnionType", 4903 "types": [ 4904 { 4905 "type": "TSNumberKeyword", 4906 "loc": { 4907 "start": { 4908 "line": 80, 4909 "column": 8, 4910 "program": "functionCall.ts" 4911 }, 4912 "end": { 4913 "line": 80, 4914 "column": 14, 4915 "program": "functionCall.ts" 4916 } 4917 } 4918 }, 4919 { 4920 "type": "TSStringKeyword", 4921 "loc": { 4922 "start": { 4923 "line": 80, 4924 "column": 17, 4925 "program": "functionCall.ts" 4926 }, 4927 "end": { 4928 "line": 80, 4929 "column": 23, 4930 "program": "functionCall.ts" 4931 } 4932 } 4933 } 4934 ], 4935 "loc": { 4936 "start": { 4937 "line": 80, 4938 "column": 8, 4939 "program": "functionCall.ts" 4940 }, 4941 "end": { 4942 "line": 80, 4943 "column": 23, 4944 "program": "functionCall.ts" 4945 } 4946 } 4947 }, 4948 "decorators": [], 4949 "loc": { 4950 "start": { 4951 "line": 80, 4952 "column": 5, 4953 "program": "functionCall.ts" 4954 }, 4955 "end": { 4956 "line": 80, 4957 "column": 6, 4958 "program": "functionCall.ts" 4959 } 4960 } 4961 }, 4962 "init": { 4963 "type": "CallExpression", 4964 "callee": { 4965 "type": "Identifier", 4966 "name": "func9", 4967 "decorators": [], 4968 "loc": { 4969 "start": { 4970 "line": 80, 4971 "column": 26, 4972 "program": "functionCall.ts" 4973 }, 4974 "end": { 4975 "line": 80, 4976 "column": 31, 4977 "program": "functionCall.ts" 4978 } 4979 } 4980 }, 4981 "arguments": [ 4982 { 4983 "type": "StringLiteral", 4984 "value": "bar", 4985 "loc": { 4986 "start": { 4987 "line": 80, 4988 "column": 32, 4989 "program": "functionCall.ts" 4990 }, 4991 "end": { 4992 "line": 80, 4993 "column": 37, 4994 "program": "functionCall.ts" 4995 } 4996 } 4997 }, 4998 { 4999 "type": "NumberLiteral", 5000 "value": 2, 5001 "loc": { 5002 "start": { 5003 "line": 80, 5004 "column": 39, 5005 "program": "functionCall.ts" 5006 }, 5007 "end": { 5008 "line": 80, 5009 "column": 40, 5010 "program": "functionCall.ts" 5011 } 5012 } 5013 } 5014 ], 5015 "optional": false, 5016 "loc": { 5017 "start": { 5018 "line": 80, 5019 "column": 26, 5020 "program": "functionCall.ts" 5021 }, 5022 "end": { 5023 "line": 80, 5024 "column": 41, 5025 "program": "functionCall.ts" 5026 } 5027 } 5028 }, 5029 "loc": { 5030 "start": { 5031 "line": 80, 5032 "column": 5, 5033 "program": "functionCall.ts" 5034 }, 5035 "end": { 5036 "line": 80, 5037 "column": 41, 5038 "program": "functionCall.ts" 5039 } 5040 } 5041 } 5042 ], 5043 "kind": "var", 5044 "loc": { 5045 "start": { 5046 "line": 80, 5047 "column": 1, 5048 "program": "functionCall.ts" 5049 }, 5050 "end": { 5051 "line": 80, 5052 "column": 42, 5053 "program": "functionCall.ts" 5054 } 5055 } 5056 }, 5057 { 5058 "type": "TSDeclareFunction", 5059 "function": { 5060 "type": "ScriptFunction", 5061 "id": { 5062 "type": "Identifier", 5063 "name": "func10", 5064 "decorators": [], 5065 "loc": { 5066 "start": { 5067 "line": 82, 5068 "column": 10, 5069 "program": "functionCall.ts" 5070 }, 5071 "end": { 5072 "line": 82, 5073 "column": 16, 5074 "program": "functionCall.ts" 5075 } 5076 } 5077 }, 5078 "generator": false, 5079 "async": false, 5080 "expression": false, 5081 "params": [ 5082 { 5083 "type": "Identifier", 5084 "name": "a", 5085 "typeAnnotation": { 5086 "type": "TSTypeLiteral", 5087 "members": [ 5088 { 5089 "type": "TSPropertySignature", 5090 "computed": false, 5091 "optional": false, 5092 "readonly": false, 5093 "key": { 5094 "type": "Identifier", 5095 "name": "x", 5096 "decorators": [], 5097 "loc": { 5098 "start": { 5099 "line": 82, 5100 "column": 22, 5101 "program": "functionCall.ts" 5102 }, 5103 "end": { 5104 "line": 82, 5105 "column": 23, 5106 "program": "functionCall.ts" 5107 } 5108 } 5109 }, 5110 "typeAnnotation": { 5111 "type": "TSNumberKeyword", 5112 "loc": { 5113 "start": { 5114 "line": 82, 5115 "column": 25, 5116 "program": "functionCall.ts" 5117 }, 5118 "end": { 5119 "line": 82, 5120 "column": 31, 5121 "program": "functionCall.ts" 5122 } 5123 } 5124 }, 5125 "loc": { 5126 "start": { 5127 "line": 82, 5128 "column": 22, 5129 "program": "functionCall.ts" 5130 }, 5131 "end": { 5132 "line": 82, 5133 "column": 32, 5134 "program": "functionCall.ts" 5135 } 5136 } 5137 }, 5138 { 5139 "type": "TSPropertySignature", 5140 "computed": false, 5141 "optional": false, 5142 "readonly": false, 5143 "key": { 5144 "type": "Identifier", 5145 "name": "y", 5146 "decorators": [], 5147 "loc": { 5148 "start": { 5149 "line": 82, 5150 "column": 33, 5151 "program": "functionCall.ts" 5152 }, 5153 "end": { 5154 "line": 82, 5155 "column": 34, 5156 "program": "functionCall.ts" 5157 } 5158 } 5159 }, 5160 "typeAnnotation": { 5161 "type": "TSStringKeyword", 5162 "loc": { 5163 "start": { 5164 "line": 82, 5165 "column": 36, 5166 "program": "functionCall.ts" 5167 }, 5168 "end": { 5169 "line": 82, 5170 "column": 42, 5171 "program": "functionCall.ts" 5172 } 5173 } 5174 }, 5175 "loc": { 5176 "start": { 5177 "line": 82, 5178 "column": 33, 5179 "program": "functionCall.ts" 5180 }, 5181 "end": { 5182 "line": 82, 5183 "column": 44, 5184 "program": "functionCall.ts" 5185 } 5186 } 5187 } 5188 ], 5189 "loc": { 5190 "start": { 5191 "line": 82, 5192 "column": 20, 5193 "program": "functionCall.ts" 5194 }, 5195 "end": { 5196 "line": 82, 5197 "column": 44, 5198 "program": "functionCall.ts" 5199 } 5200 } 5201 }, 5202 "decorators": [], 5203 "loc": { 5204 "start": { 5205 "line": 82, 5206 "column": 17, 5207 "program": "functionCall.ts" 5208 }, 5209 "end": { 5210 "line": 82, 5211 "column": 18, 5212 "program": "functionCall.ts" 5213 } 5214 } 5215 } 5216 ], 5217 "returnType": { 5218 "type": "TSArrayType", 5219 "elementType": { 5220 "type": "TSNumberKeyword", 5221 "loc": { 5222 "start": { 5223 "line": 82, 5224 "column": 47, 5225 "program": "functionCall.ts" 5226 }, 5227 "end": { 5228 "line": 82, 5229 "column": 53, 5230 "program": "functionCall.ts" 5231 } 5232 } 5233 }, 5234 "annotations": [], 5235 "loc": { 5236 "start": { 5237 "line": 82, 5238 "column": 47, 5239 "program": "functionCall.ts" 5240 }, 5241 "end": { 5242 "line": 82, 5243 "column": 55, 5244 "program": "functionCall.ts" 5245 } 5246 } 5247 }, 5248 "loc": { 5249 "start": { 5250 "line": 82, 5251 "column": 1, 5252 "program": "functionCall.ts" 5253 }, 5254 "end": { 5255 "line": 82, 5256 "column": 56, 5257 "program": "functionCall.ts" 5258 } 5259 } 5260 }, 5261 "loc": { 5262 "start": { 5263 "line": 82, 5264 "column": 1, 5265 "program": "functionCall.ts" 5266 }, 5267 "end": { 5268 "line": 82, 5269 "column": 56, 5270 "program": "functionCall.ts" 5271 } 5272 } 5273 }, 5274 { 5275 "type": "TSDeclareFunction", 5276 "function": { 5277 "type": "ScriptFunction", 5278 "id": { 5279 "type": "Identifier", 5280 "name": "func10", 5281 "decorators": [], 5282 "loc": { 5283 "start": { 5284 "line": 83, 5285 "column": 10, 5286 "program": "functionCall.ts" 5287 }, 5288 "end": { 5289 "line": 83, 5290 "column": 16, 5291 "program": "functionCall.ts" 5292 } 5293 } 5294 }, 5295 "generator": false, 5296 "async": false, 5297 "expression": false, 5298 "params": [ 5299 { 5300 "type": "Identifier", 5301 "name": "a", 5302 "typeAnnotation": { 5303 "type": "TSTypeLiteral", 5304 "members": [ 5305 { 5306 "type": "TSPropertySignature", 5307 "computed": false, 5308 "optional": false, 5309 "readonly": false, 5310 "key": { 5311 "type": "Identifier", 5312 "name": "x", 5313 "decorators": [], 5314 "loc": { 5315 "start": { 5316 "line": 83, 5317 "column": 22, 5318 "program": "functionCall.ts" 5319 }, 5320 "end": { 5321 "line": 83, 5322 "column": 23, 5323 "program": "functionCall.ts" 5324 } 5325 } 5326 }, 5327 "typeAnnotation": { 5328 "type": "TSStringKeyword", 5329 "loc": { 5330 "start": { 5331 "line": 83, 5332 "column": 25, 5333 "program": "functionCall.ts" 5334 }, 5335 "end": { 5336 "line": 83, 5337 "column": 31, 5338 "program": "functionCall.ts" 5339 } 5340 } 5341 }, 5342 "loc": { 5343 "start": { 5344 "line": 83, 5345 "column": 22, 5346 "program": "functionCall.ts" 5347 }, 5348 "end": { 5349 "line": 83, 5350 "column": 32, 5351 "program": "functionCall.ts" 5352 } 5353 } 5354 }, 5355 { 5356 "type": "TSPropertySignature", 5357 "computed": false, 5358 "optional": false, 5359 "readonly": false, 5360 "key": { 5361 "type": "Identifier", 5362 "name": "y", 5363 "decorators": [], 5364 "loc": { 5365 "start": { 5366 "line": 83, 5367 "column": 33, 5368 "program": "functionCall.ts" 5369 }, 5370 "end": { 5371 "line": 83, 5372 "column": 34, 5373 "program": "functionCall.ts" 5374 } 5375 } 5376 }, 5377 "typeAnnotation": { 5378 "type": "TSNumberKeyword", 5379 "loc": { 5380 "start": { 5381 "line": 83, 5382 "column": 36, 5383 "program": "functionCall.ts" 5384 }, 5385 "end": { 5386 "line": 83, 5387 "column": 42, 5388 "program": "functionCall.ts" 5389 } 5390 } 5391 }, 5392 "loc": { 5393 "start": { 5394 "line": 83, 5395 "column": 33, 5396 "program": "functionCall.ts" 5397 }, 5398 "end": { 5399 "line": 83, 5400 "column": 44, 5401 "program": "functionCall.ts" 5402 } 5403 } 5404 } 5405 ], 5406 "loc": { 5407 "start": { 5408 "line": 83, 5409 "column": 20, 5410 "program": "functionCall.ts" 5411 }, 5412 "end": { 5413 "line": 83, 5414 "column": 44, 5415 "program": "functionCall.ts" 5416 } 5417 } 5418 }, 5419 "decorators": [], 5420 "loc": { 5421 "start": { 5422 "line": 83, 5423 "column": 17, 5424 "program": "functionCall.ts" 5425 }, 5426 "end": { 5427 "line": 83, 5428 "column": 18, 5429 "program": "functionCall.ts" 5430 } 5431 } 5432 } 5433 ], 5434 "returnType": { 5435 "type": "TSArrayType", 5436 "elementType": { 5437 "type": "TSNumberKeyword", 5438 "loc": { 5439 "start": { 5440 "line": 83, 5441 "column": 47, 5442 "program": "functionCall.ts" 5443 }, 5444 "end": { 5445 "line": 83, 5446 "column": 53, 5447 "program": "functionCall.ts" 5448 } 5449 } 5450 }, 5451 "annotations": [], 5452 "loc": { 5453 "start": { 5454 "line": 83, 5455 "column": 47, 5456 "program": "functionCall.ts" 5457 }, 5458 "end": { 5459 "line": 83, 5460 "column": 55, 5461 "program": "functionCall.ts" 5462 } 5463 } 5464 }, 5465 "loc": { 5466 "start": { 5467 "line": 83, 5468 "column": 1, 5469 "program": "functionCall.ts" 5470 }, 5471 "end": { 5472 "line": 83, 5473 "column": 56, 5474 "program": "functionCall.ts" 5475 } 5476 } 5477 }, 5478 "loc": { 5479 "start": { 5480 "line": 83, 5481 "column": 1, 5482 "program": "functionCall.ts" 5483 }, 5484 "end": { 5485 "line": 83, 5486 "column": 56, 5487 "program": "functionCall.ts" 5488 } 5489 } 5490 }, 5491 { 5492 "type": "FunctionDeclaration", 5493 "function": { 5494 "type": "ScriptFunction", 5495 "id": { 5496 "type": "Identifier", 5497 "name": "func10", 5498 "decorators": [], 5499 "loc": { 5500 "start": { 5501 "line": 84, 5502 "column": 10, 5503 "program": "functionCall.ts" 5504 }, 5505 "end": { 5506 "line": 84, 5507 "column": 16, 5508 "program": "functionCall.ts" 5509 } 5510 } 5511 }, 5512 "generator": false, 5513 "async": false, 5514 "expression": false, 5515 "params": [ 5516 { 5517 "type": "Identifier", 5518 "name": "a", 5519 "typeAnnotation": { 5520 "type": "TSTypeLiteral", 5521 "members": [ 5522 { 5523 "type": "TSPropertySignature", 5524 "computed": false, 5525 "optional": false, 5526 "readonly": false, 5527 "key": { 5528 "type": "Identifier", 5529 "name": "x", 5530 "decorators": [], 5531 "loc": { 5532 "start": { 5533 "line": 84, 5534 "column": 22, 5535 "program": "functionCall.ts" 5536 }, 5537 "end": { 5538 "line": 84, 5539 "column": 23, 5540 "program": "functionCall.ts" 5541 } 5542 } 5543 }, 5544 "typeAnnotation": { 5545 "type": "TSUnionType", 5546 "types": [ 5547 { 5548 "type": "TSNumberKeyword", 5549 "loc": { 5550 "start": { 5551 "line": 84, 5552 "column": 25, 5553 "program": "functionCall.ts" 5554 }, 5555 "end": { 5556 "line": 84, 5557 "column": 31, 5558 "program": "functionCall.ts" 5559 } 5560 } 5561 }, 5562 { 5563 "type": "TSStringKeyword", 5564 "loc": { 5565 "start": { 5566 "line": 84, 5567 "column": 34, 5568 "program": "functionCall.ts" 5569 }, 5570 "end": { 5571 "line": 84, 5572 "column": 40, 5573 "program": "functionCall.ts" 5574 } 5575 } 5576 } 5577 ], 5578 "loc": { 5579 "start": { 5580 "line": 84, 5581 "column": 25, 5582 "program": "functionCall.ts" 5583 }, 5584 "end": { 5585 "line": 84, 5586 "column": 40, 5587 "program": "functionCall.ts" 5588 } 5589 } 5590 }, 5591 "loc": { 5592 "start": { 5593 "line": 84, 5594 "column": 22, 5595 "program": "functionCall.ts" 5596 }, 5597 "end": { 5598 "line": 84, 5599 "column": 42, 5600 "program": "functionCall.ts" 5601 } 5602 } 5603 } 5604 ], 5605 "loc": { 5606 "start": { 5607 "line": 84, 5608 "column": 20, 5609 "program": "functionCall.ts" 5610 }, 5611 "end": { 5612 "line": 84, 5613 "column": 42, 5614 "program": "functionCall.ts" 5615 } 5616 } 5617 }, 5618 "decorators": [], 5619 "loc": { 5620 "start": { 5621 "line": 84, 5622 "column": 17, 5623 "program": "functionCall.ts" 5624 }, 5625 "end": { 5626 "line": 84, 5627 "column": 18, 5628 "program": "functionCall.ts" 5629 } 5630 } 5631 } 5632 ], 5633 "body": { 5634 "type": "BlockStatement", 5635 "statements": [ 5636 { 5637 "type": "ReturnStatement", 5638 "argument": { 5639 "type": "ArrayExpression", 5640 "elements": [ 5641 { 5642 "type": "NumberLiteral", 5643 "value": 1, 5644 "loc": { 5645 "start": { 5646 "line": 85, 5647 "column": 13, 5648 "program": "functionCall.ts" 5649 }, 5650 "end": { 5651 "line": 85, 5652 "column": 14, 5653 "program": "functionCall.ts" 5654 } 5655 } 5656 }, 5657 { 5658 "type": "NumberLiteral", 5659 "value": 2, 5660 "loc": { 5661 "start": { 5662 "line": 85, 5663 "column": 16, 5664 "program": "functionCall.ts" 5665 }, 5666 "end": { 5667 "line": 85, 5668 "column": 17, 5669 "program": "functionCall.ts" 5670 } 5671 } 5672 }, 5673 { 5674 "type": "NumberLiteral", 5675 "value": 3, 5676 "loc": { 5677 "start": { 5678 "line": 85, 5679 "column": 19, 5680 "program": "functionCall.ts" 5681 }, 5682 "end": { 5683 "line": 85, 5684 "column": 20, 5685 "program": "functionCall.ts" 5686 } 5687 } 5688 } 5689 ], 5690 "loc": { 5691 "start": { 5692 "line": 85, 5693 "column": 12, 5694 "program": "functionCall.ts" 5695 }, 5696 "end": { 5697 "line": 85, 5698 "column": 21, 5699 "program": "functionCall.ts" 5700 } 5701 } 5702 }, 5703 "loc": { 5704 "start": { 5705 "line": 85, 5706 "column": 5, 5707 "program": "functionCall.ts" 5708 }, 5709 "end": { 5710 "line": 85, 5711 "column": 22, 5712 "program": "functionCall.ts" 5713 } 5714 } 5715 } 5716 ], 5717 "loc": { 5718 "start": { 5719 "line": 84, 5720 "column": 44, 5721 "program": "functionCall.ts" 5722 }, 5723 "end": { 5724 "line": 86, 5725 "column": 2, 5726 "program": "functionCall.ts" 5727 } 5728 } 5729 }, 5730 "loc": { 5731 "start": { 5732 "line": 84, 5733 "column": 1, 5734 "program": "functionCall.ts" 5735 }, 5736 "end": { 5737 "line": 86, 5738 "column": 2, 5739 "program": "functionCall.ts" 5740 } 5741 } 5742 }, 5743 "loc": { 5744 "start": { 5745 "line": 84, 5746 "column": 1, 5747 "program": "functionCall.ts" 5748 }, 5749 "end": { 5750 "line": 86, 5751 "column": 2, 5752 "program": "functionCall.ts" 5753 } 5754 } 5755 }, 5756 { 5757 "type": "VariableDeclaration", 5758 "declarations": [ 5759 { 5760 "type": "VariableDeclarator", 5761 "id": { 5762 "type": "Identifier", 5763 "name": "m", 5764 "typeAnnotation": { 5765 "type": "TSArrayType", 5766 "elementType": { 5767 "type": "TSNumberKeyword", 5768 "loc": { 5769 "start": { 5770 "line": 88, 5771 "column": 8, 5772 "program": "functionCall.ts" 5773 }, 5774 "end": { 5775 "line": 88, 5776 "column": 14, 5777 "program": "functionCall.ts" 5778 } 5779 } 5780 }, 5781 "annotations": [], 5782 "loc": { 5783 "start": { 5784 "line": 88, 5785 "column": 8, 5786 "program": "functionCall.ts" 5787 }, 5788 "end": { 5789 "line": 88, 5790 "column": 16, 5791 "program": "functionCall.ts" 5792 } 5793 } 5794 }, 5795 "decorators": [], 5796 "loc": { 5797 "start": { 5798 "line": 88, 5799 "column": 5, 5800 "program": "functionCall.ts" 5801 }, 5802 "end": { 5803 "line": 88, 5804 "column": 6, 5805 "program": "functionCall.ts" 5806 } 5807 } 5808 }, 5809 "init": { 5810 "type": "CallExpression", 5811 "callee": { 5812 "type": "Identifier", 5813 "name": "func10", 5814 "decorators": [], 5815 "loc": { 5816 "start": { 5817 "line": 88, 5818 "column": 19, 5819 "program": "functionCall.ts" 5820 }, 5821 "end": { 5822 "line": 88, 5823 "column": 25, 5824 "program": "functionCall.ts" 5825 } 5826 } 5827 }, 5828 "arguments": [ 5829 { 5830 "type": "ObjectExpression", 5831 "properties": [ 5832 { 5833 "type": "Property", 5834 "method": false, 5835 "shorthand": false, 5836 "computed": false, 5837 "key": { 5838 "type": "Identifier", 5839 "name": "x", 5840 "decorators": [], 5841 "loc": { 5842 "start": { 5843 "line": 88, 5844 "column": 28, 5845 "program": "functionCall.ts" 5846 }, 5847 "end": { 5848 "line": 88, 5849 "column": 29, 5850 "program": "functionCall.ts" 5851 } 5852 } 5853 }, 5854 "value": { 5855 "type": "NumberLiteral", 5856 "value": 1, 5857 "loc": { 5858 "start": { 5859 "line": 88, 5860 "column": 31, 5861 "program": "functionCall.ts" 5862 }, 5863 "end": { 5864 "line": 88, 5865 "column": 32, 5866 "program": "functionCall.ts" 5867 } 5868 } 5869 }, 5870 "kind": "init", 5871 "loc": { 5872 "start": { 5873 "line": 88, 5874 "column": 28, 5875 "program": "functionCall.ts" 5876 }, 5877 "end": { 5878 "line": 88, 5879 "column": 32, 5880 "program": "functionCall.ts" 5881 } 5882 } 5883 }, 5884 { 5885 "type": "Property", 5886 "method": false, 5887 "shorthand": false, 5888 "computed": false, 5889 "key": { 5890 "type": "Identifier", 5891 "name": "y", 5892 "decorators": [], 5893 "loc": { 5894 "start": { 5895 "line": 88, 5896 "column": 34, 5897 "program": "functionCall.ts" 5898 }, 5899 "end": { 5900 "line": 88, 5901 "column": 35, 5902 "program": "functionCall.ts" 5903 } 5904 } 5905 }, 5906 "value": { 5907 "type": "StringLiteral", 5908 "value": "foo", 5909 "loc": { 5910 "start": { 5911 "line": 88, 5912 "column": 37, 5913 "program": "functionCall.ts" 5914 }, 5915 "end": { 5916 "line": 88, 5917 "column": 42, 5918 "program": "functionCall.ts" 5919 } 5920 } 5921 }, 5922 "kind": "init", 5923 "loc": { 5924 "start": { 5925 "line": 88, 5926 "column": 34, 5927 "program": "functionCall.ts" 5928 }, 5929 "end": { 5930 "line": 88, 5931 "column": 42, 5932 "program": "functionCall.ts" 5933 } 5934 } 5935 } 5936 ], 5937 "loc": { 5938 "start": { 5939 "line": 88, 5940 "column": 26, 5941 "program": "functionCall.ts" 5942 }, 5943 "end": { 5944 "line": 88, 5945 "column": 44, 5946 "program": "functionCall.ts" 5947 } 5948 } 5949 } 5950 ], 5951 "optional": false, 5952 "loc": { 5953 "start": { 5954 "line": 88, 5955 "column": 19, 5956 "program": "functionCall.ts" 5957 }, 5958 "end": { 5959 "line": 88, 5960 "column": 45, 5961 "program": "functionCall.ts" 5962 } 5963 } 5964 }, 5965 "loc": { 5966 "start": { 5967 "line": 88, 5968 "column": 5, 5969 "program": "functionCall.ts" 5970 }, 5971 "end": { 5972 "line": 88, 5973 "column": 45, 5974 "program": "functionCall.ts" 5975 } 5976 } 5977 } 5978 ], 5979 "kind": "var", 5980 "loc": { 5981 "start": { 5982 "line": 88, 5983 "column": 1, 5984 "program": "functionCall.ts" 5985 }, 5986 "end": { 5987 "line": 88, 5988 "column": 46, 5989 "program": "functionCall.ts" 5990 } 5991 } 5992 }, 5993 { 5994 "type": "VariableDeclaration", 5995 "declarations": [ 5996 { 5997 "type": "VariableDeclarator", 5998 "id": { 5999 "type": "Identifier", 6000 "name": "m", 6001 "typeAnnotation": { 6002 "type": "TSArrayType", 6003 "elementType": { 6004 "type": "TSNumberKeyword", 6005 "loc": { 6006 "start": { 6007 "line": 89, 6008 "column": 8, 6009 "program": "functionCall.ts" 6010 }, 6011 "end": { 6012 "line": 89, 6013 "column": 14, 6014 "program": "functionCall.ts" 6015 } 6016 } 6017 }, 6018 "annotations": [], 6019 "loc": { 6020 "start": { 6021 "line": 89, 6022 "column": 8, 6023 "program": "functionCall.ts" 6024 }, 6025 "end": { 6026 "line": 89, 6027 "column": 16, 6028 "program": "functionCall.ts" 6029 } 6030 } 6031 }, 6032 "decorators": [], 6033 "loc": { 6034 "start": { 6035 "line": 89, 6036 "column": 5, 6037 "program": "functionCall.ts" 6038 }, 6039 "end": { 6040 "line": 89, 6041 "column": 6, 6042 "program": "functionCall.ts" 6043 } 6044 } 6045 }, 6046 "init": { 6047 "type": "CallExpression", 6048 "callee": { 6049 "type": "Identifier", 6050 "name": "func10", 6051 "decorators": [], 6052 "loc": { 6053 "start": { 6054 "line": 89, 6055 "column": 19, 6056 "program": "functionCall.ts" 6057 }, 6058 "end": { 6059 "line": 89, 6060 "column": 25, 6061 "program": "functionCall.ts" 6062 } 6063 } 6064 }, 6065 "arguments": [ 6066 { 6067 "type": "ObjectExpression", 6068 "properties": [ 6069 { 6070 "type": "Property", 6071 "method": false, 6072 "shorthand": false, 6073 "computed": false, 6074 "key": { 6075 "type": "Identifier", 6076 "name": "x", 6077 "decorators": [], 6078 "loc": { 6079 "start": { 6080 "line": 89, 6081 "column": 28, 6082 "program": "functionCall.ts" 6083 }, 6084 "end": { 6085 "line": 89, 6086 "column": 29, 6087 "program": "functionCall.ts" 6088 } 6089 } 6090 }, 6091 "value": { 6092 "type": "StringLiteral", 6093 "value": "bar", 6094 "loc": { 6095 "start": { 6096 "line": 89, 6097 "column": 31, 6098 "program": "functionCall.ts" 6099 }, 6100 "end": { 6101 "line": 89, 6102 "column": 36, 6103 "program": "functionCall.ts" 6104 } 6105 } 6106 }, 6107 "kind": "init", 6108 "loc": { 6109 "start": { 6110 "line": 89, 6111 "column": 28, 6112 "program": "functionCall.ts" 6113 }, 6114 "end": { 6115 "line": 89, 6116 "column": 36, 6117 "program": "functionCall.ts" 6118 } 6119 } 6120 }, 6121 { 6122 "type": "Property", 6123 "method": false, 6124 "shorthand": false, 6125 "computed": false, 6126 "key": { 6127 "type": "Identifier", 6128 "name": "y", 6129 "decorators": [], 6130 "loc": { 6131 "start": { 6132 "line": 89, 6133 "column": 38, 6134 "program": "functionCall.ts" 6135 }, 6136 "end": { 6137 "line": 89, 6138 "column": 39, 6139 "program": "functionCall.ts" 6140 } 6141 } 6142 }, 6143 "value": { 6144 "type": "NumberLiteral", 6145 "value": 2, 6146 "loc": { 6147 "start": { 6148 "line": 89, 6149 "column": 41, 6150 "program": "functionCall.ts" 6151 }, 6152 "end": { 6153 "line": 89, 6154 "column": 42, 6155 "program": "functionCall.ts" 6156 } 6157 } 6158 }, 6159 "kind": "init", 6160 "loc": { 6161 "start": { 6162 "line": 89, 6163 "column": 38, 6164 "program": "functionCall.ts" 6165 }, 6166 "end": { 6167 "line": 89, 6168 "column": 42, 6169 "program": "functionCall.ts" 6170 } 6171 } 6172 } 6173 ], 6174 "loc": { 6175 "start": { 6176 "line": 89, 6177 "column": 26, 6178 "program": "functionCall.ts" 6179 }, 6180 "end": { 6181 "line": 89, 6182 "column": 44, 6183 "program": "functionCall.ts" 6184 } 6185 } 6186 } 6187 ], 6188 "optional": false, 6189 "loc": { 6190 "start": { 6191 "line": 89, 6192 "column": 19, 6193 "program": "functionCall.ts" 6194 }, 6195 "end": { 6196 "line": 89, 6197 "column": 45, 6198 "program": "functionCall.ts" 6199 } 6200 } 6201 }, 6202 "loc": { 6203 "start": { 6204 "line": 89, 6205 "column": 5, 6206 "program": "functionCall.ts" 6207 }, 6208 "end": { 6209 "line": 89, 6210 "column": 45, 6211 "program": "functionCall.ts" 6212 } 6213 } 6214 } 6215 ], 6216 "kind": "var", 6217 "loc": { 6218 "start": { 6219 "line": 89, 6220 "column": 1, 6221 "program": "functionCall.ts" 6222 }, 6223 "end": { 6224 "line": 89, 6225 "column": 46, 6226 "program": "functionCall.ts" 6227 } 6228 } 6229 } 6230 ], 6231 "loc": { 6232 "start": { 6233 "line": 1, 6234 "column": 1, 6235 "program": "functionCall.ts" 6236 }, 6237 "end": { 6238 "line": 90, 6239 "column": 1, 6240 "program": "functionCall.ts" 6241 } 6242 } 6243} 6244