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