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