1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "TSInterfaceDeclaration", 6 "body": { 7 "type": "TSInterfaceBody", 8 "body": [ 9 { 10 "type": "MethodDefinition", 11 "key": { 12 "type": "Identifier", 13 "name": "i", 14 "decorators": [], 15 "loc": { 16 "start": { 17 "line": 1, 18 "column": 1 19 }, 20 "end": { 21 "line": 1, 22 "column": 1 23 } 24 } 25 }, 26 "kind": "method", 27 "accessibility": "public", 28 "static": false, 29 "optional": false, 30 "computed": false, 31 "value": { 32 "type": "FunctionExpression", 33 "function": { 34 "type": "ScriptFunction", 35 "id": { 36 "type": "Identifier", 37 "name": "i", 38 "decorators": [], 39 "loc": { 40 "start": { 41 "line": 1, 42 "column": 1 43 }, 44 "end": { 45 "line": 1, 46 "column": 1 47 } 48 } 49 }, 50 "generator": false, 51 "async": false, 52 "expression": false, 53 "params": [], 54 "returnType": { 55 "type": "ETSPrimitiveType", 56 "loc": { 57 "start": { 58 "line": 19, 59 "column": 9 60 }, 61 "end": { 62 "line": 19, 63 "column": 12 64 } 65 } 66 }, 67 "loc": { 68 "start": { 69 "line": 19, 70 "column": 5 71 }, 72 "end": { 73 "line": 19, 74 "column": 13 75 } 76 } 77 }, 78 "loc": { 79 "start": { 80 "line": 19, 81 "column": 5 82 }, 83 "end": { 84 "line": 19, 85 "column": 13 86 } 87 } 88 }, 89 "overloads": [ 90 { 91 "type": "MethodDefinition", 92 "key": { 93 "type": "Identifier", 94 "name": "i", 95 "decorators": [], 96 "loc": { 97 "start": { 98 "line": 1, 99 "column": 1 100 }, 101 "end": { 102 "line": 1, 103 "column": 1 104 } 105 } 106 }, 107 "kind": "method", 108 "accessibility": "public", 109 "static": false, 110 "optional": false, 111 "computed": false, 112 "value": { 113 "type": "FunctionExpression", 114 "function": { 115 "type": "ScriptFunction", 116 "id": { 117 "type": "Identifier", 118 "name": "i", 119 "decorators": [], 120 "loc": { 121 "start": { 122 "line": 1, 123 "column": 1 124 }, 125 "end": { 126 "line": 1, 127 "column": 1 128 } 129 } 130 }, 131 "generator": false, 132 "async": false, 133 "expression": false, 134 "params": [ 135 { 136 "type": "ETSParameterExpression", 137 "name": { 138 "type": "Identifier", 139 "name": "i", 140 "typeAnnotation": { 141 "type": "ETSPrimitiveType", 142 "loc": { 143 "start": { 144 "line": 19, 145 "column": 9 146 }, 147 "end": { 148 "line": 19, 149 "column": 12 150 } 151 } 152 }, 153 "decorators": [], 154 "loc": { 155 "start": { 156 "line": 19, 157 "column": 5 158 }, 159 "end": { 160 "line": 19, 161 "column": 6 162 } 163 } 164 }, 165 "loc": { 166 "start": { 167 "line": 19, 168 "column": 5 169 }, 170 "end": { 171 "line": 19, 172 "column": 6 173 } 174 } 175 } 176 ], 177 "loc": { 178 "start": { 179 "line": 19, 180 "column": 5 181 }, 182 "end": { 183 "line": 19, 184 "column": 13 185 } 186 } 187 }, 188 "loc": { 189 "start": { 190 "line": 19, 191 "column": 5 192 }, 193 "end": { 194 "line": 19, 195 "column": 13 196 } 197 } 198 }, 199 "overloads": [], 200 "decorators": [], 201 "loc": { 202 "start": { 203 "line": 19, 204 "column": 5 205 }, 206 "end": { 207 "line": 19, 208 "column": 13 209 } 210 } 211 } 212 ], 213 "decorators": [], 214 "loc": { 215 "start": { 216 "line": 19, 217 "column": 5 218 }, 219 "end": { 220 "line": 19, 221 "column": 13 222 } 223 } 224 }, 225 { 226 "type": "MethodDefinition", 227 "key": { 228 "type": "Identifier", 229 "name": "i", 230 "decorators": [], 231 "loc": { 232 "start": { 233 "line": 1, 234 "column": 1 235 }, 236 "end": { 237 "line": 1, 238 "column": 1 239 } 240 } 241 }, 242 "kind": "method", 243 "accessibility": "public", 244 "static": false, 245 "optional": false, 246 "computed": false, 247 "value": { 248 "type": "FunctionExpression", 249 "function": { 250 "type": "ScriptFunction", 251 "id": { 252 "type": "Identifier", 253 "name": "i", 254 "decorators": [], 255 "loc": { 256 "start": { 257 "line": 1, 258 "column": 1 259 }, 260 "end": { 261 "line": 1, 262 "column": 1 263 } 264 } 265 }, 266 "generator": false, 267 "async": false, 268 "expression": false, 269 "params": [ 270 { 271 "type": "ETSParameterExpression", 272 "name": { 273 "type": "Identifier", 274 "name": "i", 275 "typeAnnotation": { 276 "type": "ETSPrimitiveType", 277 "loc": { 278 "start": { 279 "line": 19, 280 "column": 9 281 }, 282 "end": { 283 "line": 19, 284 "column": 12 285 } 286 } 287 }, 288 "decorators": [], 289 "loc": { 290 "start": { 291 "line": 19, 292 "column": 5 293 }, 294 "end": { 295 "line": 19, 296 "column": 6 297 } 298 } 299 }, 300 "loc": { 301 "start": { 302 "line": 19, 303 "column": 5 304 }, 305 "end": { 306 "line": 19, 307 "column": 6 308 } 309 } 310 } 311 ], 312 "loc": { 313 "start": { 314 "line": 19, 315 "column": 5 316 }, 317 "end": { 318 "line": 19, 319 "column": 13 320 } 321 } 322 }, 323 "loc": { 324 "start": { 325 "line": 19, 326 "column": 5 327 }, 328 "end": { 329 "line": 19, 330 "column": 13 331 } 332 } 333 }, 334 "overloads": [], 335 "decorators": [], 336 "loc": { 337 "start": { 338 "line": 19, 339 "column": 5 340 }, 341 "end": { 342 "line": 19, 343 "column": 13 344 } 345 } 346 }, 347 { 348 "type": "MethodDefinition", 349 "key": { 350 "type": "Identifier", 351 "name": "pi", 352 "decorators": [], 353 "loc": { 354 "start": { 355 "line": 1, 356 "column": 1 357 }, 358 "end": { 359 "line": 1, 360 "column": 1 361 } 362 } 363 }, 364 "kind": "method", 365 "accessibility": "public", 366 "static": false, 367 "optional": false, 368 "computed": false, 369 "value": { 370 "type": "FunctionExpression", 371 "function": { 372 "type": "ScriptFunction", 373 "id": { 374 "type": "Identifier", 375 "name": "pi", 376 "decorators": [], 377 "loc": { 378 "start": { 379 "line": 1, 380 "column": 1 381 }, 382 "end": { 383 "line": 1, 384 "column": 1 385 } 386 } 387 }, 388 "generator": false, 389 "async": false, 390 "expression": false, 391 "params": [], 392 "returnType": { 393 "type": "ETSPrimitiveType", 394 "loc": { 395 "start": { 396 "line": 20, 397 "column": 10 398 }, 399 "end": { 400 "line": 20, 401 "column": 16 402 } 403 } 404 }, 405 "loc": { 406 "start": { 407 "line": 20, 408 "column": 5 409 }, 410 "end": { 411 "line": 20, 412 "column": 17 413 } 414 } 415 }, 416 "loc": { 417 "start": { 418 "line": 20, 419 "column": 5 420 }, 421 "end": { 422 "line": 20, 423 "column": 17 424 } 425 } 426 }, 427 "overloads": [ 428 { 429 "type": "MethodDefinition", 430 "key": { 431 "type": "Identifier", 432 "name": "pi", 433 "decorators": [], 434 "loc": { 435 "start": { 436 "line": 1, 437 "column": 1 438 }, 439 "end": { 440 "line": 1, 441 "column": 1 442 } 443 } 444 }, 445 "kind": "method", 446 "accessibility": "public", 447 "static": false, 448 "optional": false, 449 "computed": false, 450 "value": { 451 "type": "FunctionExpression", 452 "function": { 453 "type": "ScriptFunction", 454 "id": { 455 "type": "Identifier", 456 "name": "pi", 457 "decorators": [], 458 "loc": { 459 "start": { 460 "line": 1, 461 "column": 1 462 }, 463 "end": { 464 "line": 1, 465 "column": 1 466 } 467 } 468 }, 469 "generator": false, 470 "async": false, 471 "expression": false, 472 "params": [ 473 { 474 "type": "ETSParameterExpression", 475 "name": { 476 "type": "Identifier", 477 "name": "pi", 478 "typeAnnotation": { 479 "type": "ETSPrimitiveType", 480 "loc": { 481 "start": { 482 "line": 20, 483 "column": 10 484 }, 485 "end": { 486 "line": 20, 487 "column": 16 488 } 489 } 490 }, 491 "decorators": [], 492 "loc": { 493 "start": { 494 "line": 20, 495 "column": 5 496 }, 497 "end": { 498 "line": 20, 499 "column": 7 500 } 501 } 502 }, 503 "loc": { 504 "start": { 505 "line": 20, 506 "column": 5 507 }, 508 "end": { 509 "line": 20, 510 "column": 7 511 } 512 } 513 } 514 ], 515 "loc": { 516 "start": { 517 "line": 20, 518 "column": 5 519 }, 520 "end": { 521 "line": 20, 522 "column": 17 523 } 524 } 525 }, 526 "loc": { 527 "start": { 528 "line": 20, 529 "column": 5 530 }, 531 "end": { 532 "line": 20, 533 "column": 17 534 } 535 } 536 }, 537 "overloads": [], 538 "decorators": [], 539 "loc": { 540 "start": { 541 "line": 20, 542 "column": 5 543 }, 544 "end": { 545 "line": 20, 546 "column": 17 547 } 548 } 549 } 550 ], 551 "decorators": [], 552 "loc": { 553 "start": { 554 "line": 20, 555 "column": 5 556 }, 557 "end": { 558 "line": 20, 559 "column": 17 560 } 561 } 562 }, 563 { 564 "type": "MethodDefinition", 565 "key": { 566 "type": "Identifier", 567 "name": "pi", 568 "decorators": [], 569 "loc": { 570 "start": { 571 "line": 1, 572 "column": 1 573 }, 574 "end": { 575 "line": 1, 576 "column": 1 577 } 578 } 579 }, 580 "kind": "method", 581 "accessibility": "public", 582 "static": false, 583 "optional": false, 584 "computed": false, 585 "value": { 586 "type": "FunctionExpression", 587 "function": { 588 "type": "ScriptFunction", 589 "id": { 590 "type": "Identifier", 591 "name": "pi", 592 "decorators": [], 593 "loc": { 594 "start": { 595 "line": 1, 596 "column": 1 597 }, 598 "end": { 599 "line": 1, 600 "column": 1 601 } 602 } 603 }, 604 "generator": false, 605 "async": false, 606 "expression": false, 607 "params": [ 608 { 609 "type": "ETSParameterExpression", 610 "name": { 611 "type": "Identifier", 612 "name": "pi", 613 "typeAnnotation": { 614 "type": "ETSPrimitiveType", 615 "loc": { 616 "start": { 617 "line": 20, 618 "column": 10 619 }, 620 "end": { 621 "line": 20, 622 "column": 16 623 } 624 } 625 }, 626 "decorators": [], 627 "loc": { 628 "start": { 629 "line": 20, 630 "column": 5 631 }, 632 "end": { 633 "line": 20, 634 "column": 7 635 } 636 } 637 }, 638 "loc": { 639 "start": { 640 "line": 20, 641 "column": 5 642 }, 643 "end": { 644 "line": 20, 645 "column": 7 646 } 647 } 648 } 649 ], 650 "loc": { 651 "start": { 652 "line": 20, 653 "column": 5 654 }, 655 "end": { 656 "line": 20, 657 "column": 17 658 } 659 } 660 }, 661 "loc": { 662 "start": { 663 "line": 20, 664 "column": 5 665 }, 666 "end": { 667 "line": 20, 668 "column": 17 669 } 670 } 671 }, 672 "overloads": [], 673 "decorators": [], 674 "loc": { 675 "start": { 676 "line": 20, 677 "column": 5 678 }, 679 "end": { 680 "line": 20, 681 "column": 17 682 } 683 } 684 }, 685 { 686 "type": "MethodDefinition", 687 "key": { 688 "type": "Identifier", 689 "name": "foo", 690 "decorators": [], 691 "loc": { 692 "start": { 693 "line": 21, 694 "column": 5 695 }, 696 "end": { 697 "line": 21, 698 "column": 8 699 } 700 } 701 }, 702 "kind": "method", 703 "accessibility": "public", 704 "static": false, 705 "optional": false, 706 "computed": false, 707 "value": { 708 "type": "FunctionExpression", 709 "function": { 710 "type": "ScriptFunction", 711 "id": { 712 "type": "Identifier", 713 "name": "foo", 714 "decorators": [], 715 "loc": { 716 "start": { 717 "line": 21, 718 "column": 5 719 }, 720 "end": { 721 "line": 21, 722 "column": 8 723 } 724 } 725 }, 726 "generator": false, 727 "async": false, 728 "expression": false, 729 "params": [], 730 "returnType": { 731 "type": "ETSPrimitiveType", 732 "loc": { 733 "start": { 734 "line": 21, 735 "column": 12 736 }, 737 "end": { 738 "line": 21, 739 "column": 16 740 } 741 } 742 }, 743 "loc": { 744 "start": { 745 "line": 21, 746 "column": 8 747 }, 748 "end": { 749 "line": 21, 750 "column": 16 751 } 752 } 753 }, 754 "loc": { 755 "start": { 756 "line": 21, 757 "column": 8 758 }, 759 "end": { 760 "line": 21, 761 "column": 16 762 } 763 } 764 }, 765 "overloads": [ 766 { 767 "type": "MethodDefinition", 768 "key": { 769 "type": "Identifier", 770 "name": "foo", 771 "decorators": [], 772 "loc": { 773 "start": { 774 "line": 22, 775 "column": 5 776 }, 777 "end": { 778 "line": 22, 779 "column": 8 780 } 781 } 782 }, 783 "kind": "method", 784 "accessibility": "public", 785 "static": false, 786 "optional": false, 787 "computed": false, 788 "value": { 789 "type": "FunctionExpression", 790 "function": { 791 "type": "ScriptFunction", 792 "id": { 793 "type": "Identifier", 794 "name": "foo", 795 "decorators": [], 796 "loc": { 797 "start": { 798 "line": 22, 799 "column": 5 800 }, 801 "end": { 802 "line": 22, 803 "column": 8 804 } 805 } 806 }, 807 "generator": false, 808 "async": false, 809 "expression": false, 810 "params": [ 811 { 812 "type": "ETSParameterExpression", 813 "name": { 814 "type": "Identifier", 815 "name": "i", 816 "typeAnnotation": { 817 "type": "ETSPrimitiveType", 818 "loc": { 819 "start": { 820 "line": 22, 821 "column": 13 822 }, 823 "end": { 824 "line": 22, 825 "column": 16 826 } 827 } 828 }, 829 "decorators": [], 830 "loc": { 831 "start": { 832 "line": 22, 833 "column": 9 834 }, 835 "end": { 836 "line": 22, 837 "column": 16 838 } 839 } 840 }, 841 "loc": { 842 "start": { 843 "line": 22, 844 "column": 9 845 }, 846 "end": { 847 "line": 22, 848 "column": 16 849 } 850 } 851 } 852 ], 853 "returnType": { 854 "type": "ETSPrimitiveType", 855 "loc": { 856 "start": { 857 "line": 22, 858 "column": 19 859 }, 860 "end": { 861 "line": 22, 862 "column": 23 863 } 864 } 865 }, 866 "body": { 867 "type": "BlockStatement", 868 "statements": [], 869 "loc": { 870 "start": { 871 "line": 22, 872 "column": 24 873 }, 874 "end": { 875 "line": 23, 876 "column": 6 877 } 878 } 879 }, 880 "loc": { 881 "start": { 882 "line": 22, 883 "column": 8 884 }, 885 "end": { 886 "line": 23, 887 "column": 6 888 } 889 } 890 }, 891 "loc": { 892 "start": { 893 "line": 22, 894 "column": 8 895 }, 896 "end": { 897 "line": 23, 898 "column": 6 899 } 900 } 901 }, 902 "overloads": [], 903 "decorators": [], 904 "loc": { 905 "start": { 906 "line": 22, 907 "column": 5 908 }, 909 "end": { 910 "line": 23, 911 "column": 6 912 } 913 } 914 }, 915 { 916 "type": "MethodDefinition", 917 "key": { 918 "type": "Identifier", 919 "name": "foo", 920 "decorators": [], 921 "loc": { 922 "start": { 923 "line": 24, 924 "column": 13 925 }, 926 "end": { 927 "line": 24, 928 "column": 16 929 } 930 } 931 }, 932 "kind": "method", 933 "accessibility": "private", 934 "static": false, 935 "optional": false, 936 "computed": false, 937 "value": { 938 "type": "FunctionExpression", 939 "function": { 940 "type": "ScriptFunction", 941 "id": { 942 "type": "Identifier", 943 "name": "foo", 944 "decorators": [], 945 "loc": { 946 "start": { 947 "line": 24, 948 "column": 13 949 }, 950 "end": { 951 "line": 24, 952 "column": 16 953 } 954 } 955 }, 956 "generator": false, 957 "async": false, 958 "expression": false, 959 "params": [ 960 { 961 "type": "ETSParameterExpression", 962 "name": { 963 "type": "Identifier", 964 "name": "b", 965 "typeAnnotation": { 966 "type": "ETSPrimitiveType", 967 "loc": { 968 "start": { 969 "line": 24, 970 "column": 21 971 }, 972 "end": { 973 "line": 24, 974 "column": 28 975 } 976 } 977 }, 978 "decorators": [], 979 "loc": { 980 "start": { 981 "line": 24, 982 "column": 17 983 }, 984 "end": { 985 "line": 24, 986 "column": 28 987 } 988 } 989 }, 990 "loc": { 991 "start": { 992 "line": 24, 993 "column": 17 994 }, 995 "end": { 996 "line": 24, 997 "column": 28 998 } 999 } 1000 } 1001 ], 1002 "returnType": { 1003 "type": "ETSPrimitiveType", 1004 "loc": { 1005 "start": { 1006 "line": 24, 1007 "column": 31 1008 }, 1009 "end": { 1010 "line": 24, 1011 "column": 35 1012 } 1013 } 1014 }, 1015 "body": { 1016 "type": "BlockStatement", 1017 "statements": [], 1018 "loc": { 1019 "start": { 1020 "line": 24, 1021 "column": 36 1022 }, 1023 "end": { 1024 "line": 25, 1025 "column": 6 1026 } 1027 } 1028 }, 1029 "loc": { 1030 "start": { 1031 "line": 24, 1032 "column": 16 1033 }, 1034 "end": { 1035 "line": 25, 1036 "column": 6 1037 } 1038 } 1039 }, 1040 "loc": { 1041 "start": { 1042 "line": 24, 1043 "column": 16 1044 }, 1045 "end": { 1046 "line": 25, 1047 "column": 6 1048 } 1049 } 1050 }, 1051 "overloads": [], 1052 "decorators": [], 1053 "loc": { 1054 "start": { 1055 "line": 24, 1056 "column": 5 1057 }, 1058 "end": { 1059 "line": 25, 1060 "column": 6 1061 } 1062 } 1063 } 1064 ], 1065 "decorators": [], 1066 "loc": { 1067 "start": { 1068 "line": 21, 1069 "column": 5 1070 }, 1071 "end": { 1072 "line": 21, 1073 "column": 17 1074 } 1075 } 1076 } 1077 ], 1078 "loc": { 1079 "start": { 1080 "line": 18, 1081 "column": 26 1082 }, 1083 "end": { 1084 "line": 26, 1085 "column": 2 1086 } 1087 } 1088 }, 1089 "id": { 1090 "type": "Identifier", 1091 "name": "test_interface", 1092 "decorators": [], 1093 "loc": { 1094 "start": { 1095 "line": 18, 1096 "column": 11 1097 }, 1098 "end": { 1099 "line": 18, 1100 "column": 25 1101 } 1102 } 1103 }, 1104 "extends": [], 1105 "loc": { 1106 "start": { 1107 "line": 18, 1108 "column": 1 1109 }, 1110 "end": { 1111 "line": 27, 1112 "column": 1 1113 } 1114 } 1115 }, 1116 { 1117 "type": "ClassDeclaration", 1118 "definition": { 1119 "id": { 1120 "type": "Identifier", 1121 "name": "ETSGLOBAL", 1122 "decorators": [], 1123 "loc": { 1124 "start": { 1125 "line": 1, 1126 "column": 1 1127 }, 1128 "end": { 1129 "line": 1, 1130 "column": 1 1131 } 1132 } 1133 }, 1134 "superClass": null, 1135 "implements": [], 1136 "body": [ 1137 { 1138 "type": "MethodDefinition", 1139 "key": { 1140 "type": "Identifier", 1141 "name": "_$init$_", 1142 "decorators": [], 1143 "loc": { 1144 "start": { 1145 "line": 1, 1146 "column": 1 1147 }, 1148 "end": { 1149 "line": 1, 1150 "column": 1 1151 } 1152 } 1153 }, 1154 "kind": "method", 1155 "accessibility": "public", 1156 "static": true, 1157 "optional": false, 1158 "computed": false, 1159 "value": { 1160 "type": "FunctionExpression", 1161 "function": { 1162 "type": "ScriptFunction", 1163 "id": { 1164 "type": "Identifier", 1165 "name": "_$init$_", 1166 "decorators": [], 1167 "loc": { 1168 "start": { 1169 "line": 1, 1170 "column": 1 1171 }, 1172 "end": { 1173 "line": 1, 1174 "column": 1 1175 } 1176 } 1177 }, 1178 "generator": false, 1179 "async": false, 1180 "expression": false, 1181 "params": [], 1182 "body": { 1183 "type": "BlockStatement", 1184 "statements": [], 1185 "loc": { 1186 "start": { 1187 "line": 1, 1188 "column": 1 1189 }, 1190 "end": { 1191 "line": 1, 1192 "column": 1 1193 } 1194 } 1195 }, 1196 "loc": { 1197 "start": { 1198 "line": 1, 1199 "column": 1 1200 }, 1201 "end": { 1202 "line": 1, 1203 "column": 1 1204 } 1205 } 1206 }, 1207 "loc": { 1208 "start": { 1209 "line": 1, 1210 "column": 1 1211 }, 1212 "end": { 1213 "line": 1, 1214 "column": 1 1215 } 1216 } 1217 }, 1218 "overloads": [], 1219 "decorators": [], 1220 "loc": { 1221 "start": { 1222 "line": 1, 1223 "column": 1 1224 }, 1225 "end": { 1226 "line": 1, 1227 "column": 1 1228 } 1229 } 1230 } 1231 ], 1232 "loc": { 1233 "start": { 1234 "line": 1, 1235 "column": 1 1236 }, 1237 "end": { 1238 "line": 1, 1239 "column": 1 1240 } 1241 } 1242 }, 1243 "loc": { 1244 "start": { 1245 "line": 1, 1246 "column": 1 1247 }, 1248 "end": { 1249 "line": 1, 1250 "column": 1 1251 } 1252 } 1253 } 1254 ], 1255 "loc": { 1256 "start": { 1257 "line": 1, 1258 "column": 1 1259 }, 1260 "end": { 1261 "line": 27, 1262 "column": 1 1263 } 1264 } 1265} 1266