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