1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ImportDeclaration", 6 "source": { 7 "type": "StringLiteral", 8 "value": "./a", 9 "loc": { 10 "start": { 11 "line": 16, 12 "column": 30 13 }, 14 "end": { 15 "line": 16, 16 "column": 35 17 } 18 } 19 }, 20 "specifiers": [ 21 { 22 "type": "ImportSpecifier", 23 "local": { 24 "type": "Identifier", 25 "name": "Anno1", 26 "loc": { 27 "start": { 28 "line": 16, 29 "column": 10 30 }, 31 "end": { 32 "line": 16, 33 "column": 15 34 } 35 } 36 }, 37 "imported": { 38 "type": "Identifier", 39 "name": "Anno1", 40 "loc": { 41 "start": { 42 "line": 16, 43 "column": 10 44 }, 45 "end": { 46 "line": 16, 47 "column": 15 48 } 49 } 50 }, 51 "isType": false, 52 "loc": { 53 "start": { 54 "line": 16, 55 "column": 10 56 }, 57 "end": { 58 "line": 16, 59 "column": 15 60 } 61 } 62 }, 63 { 64 "type": "ImportSpecifier", 65 "local": { 66 "type": "Identifier", 67 "name": "Anno2", 68 "loc": { 69 "start": { 70 "line": 16, 71 "column": 17 72 }, 73 "end": { 74 "line": 16, 75 "column": 22 76 } 77 } 78 }, 79 "imported": { 80 "type": "Identifier", 81 "name": "Anno2", 82 "loc": { 83 "start": { 84 "line": 16, 85 "column": 17 86 }, 87 "end": { 88 "line": 16, 89 "column": 22 90 } 91 } 92 }, 93 "isType": false, 94 "loc": { 95 "start": { 96 "line": 16, 97 "column": 17 98 }, 99 "end": { 100 "line": 16, 101 "column": 22 102 } 103 } 104 } 105 ], 106 "loc": { 107 "start": { 108 "line": 16, 109 "column": 1 110 }, 111 "end": { 112 "line": 16, 113 "column": 35 114 } 115 } 116 }, 117 { 118 "type": "ClassDeclaration", 119 "definition": { 120 "id": { 121 "type": "Identifier", 122 "name": "A", 123 "loc": { 124 "start": { 125 "line": 19, 126 "column": 7 127 }, 128 "end": { 129 "line": 19, 130 "column": 8 131 } 132 } 133 }, 134 "superClass": null, 135 "implements": [], 136 "constructor": { 137 "type": "MethodDefinition", 138 "key": { 139 "type": "Identifier", 140 "name": "constructor", 141 "loc": { 142 "start": { 143 "line": 1, 144 "column": 1 145 }, 146 "end": { 147 "line": 1, 148 "column": 1 149 } 150 } 151 }, 152 "kind": "constructor", 153 "static": false, 154 "optional": false, 155 "computed": false, 156 "value": { 157 "type": "FunctionExpression", 158 "function": { 159 "type": "ScriptFunction", 160 "id": null, 161 "generator": false, 162 "async": false, 163 "expression": false, 164 "params": [], 165 "body": { 166 "type": "BlockStatement", 167 "statements": [], 168 "loc": { 169 "start": { 170 "line": 1, 171 "column": 1 172 }, 173 "end": { 174 "line": 1, 175 "column": 1 176 } 177 } 178 }, 179 "loc": { 180 "start": { 181 "line": 1, 182 "column": 1 183 }, 184 "end": { 185 "line": 1, 186 "column": 1 187 } 188 } 189 }, 190 "loc": { 191 "start": { 192 "line": 1, 193 "column": 1 194 }, 195 "end": { 196 "line": 1, 197 "column": 1 198 } 199 } 200 }, 201 "overloads": [], 202 "decorators": [], 203 "annotations": [ 204 { 205 "type": "Annotation", 206 "expression": { 207 "type": "Identifier", 208 "name": "Anno1", 209 "loc": { 210 "start": { 211 "line": 18, 212 "column": 3 213 }, 214 "end": { 215 "line": 18, 216 "column": 8 217 } 218 } 219 }, 220 "name": "Anno1", 221 "isImported": true, 222 "loc": { 223 "start": { 224 "line": 18, 225 "column": 1 226 }, 227 "end": { 228 "line": 18, 229 "column": 8 230 } 231 } 232 } 233 ], 234 "loc": { 235 "start": { 236 "line": 19, 237 "column": 1 238 }, 239 "end": { 240 "line": 19, 241 "column": 11 242 } 243 } 244 }, 245 "body": [], 246 "indexSignatures": [], 247 "loc": { 248 "start": { 249 "line": 19, 250 "column": 9 251 }, 252 "end": { 253 "line": 19, 254 "column": 11 255 } 256 } 257 }, 258 "decorators": [], 259 "isAnnotationDeclaration": false, 260 "loc": { 261 "start": { 262 "line": 19, 263 "column": 1 264 }, 265 "end": { 266 "line": 19, 267 "column": 11 268 } 269 } 270 }, 271 { 272 "type": "ClassDeclaration", 273 "definition": { 274 "id": { 275 "type": "Identifier", 276 "name": "B", 277 "loc": { 278 "start": { 279 "line": 22, 280 "column": 7 281 }, 282 "end": { 283 "line": 22, 284 "column": 8 285 } 286 } 287 }, 288 "superClass": null, 289 "implements": [], 290 "constructor": { 291 "type": "MethodDefinition", 292 "key": { 293 "type": "Identifier", 294 "name": "constructor", 295 "loc": { 296 "start": { 297 "line": 1, 298 "column": 1 299 }, 300 "end": { 301 "line": 1, 302 "column": 1 303 } 304 } 305 }, 306 "kind": "constructor", 307 "static": false, 308 "optional": false, 309 "computed": false, 310 "value": { 311 "type": "FunctionExpression", 312 "function": { 313 "type": "ScriptFunction", 314 "id": null, 315 "generator": false, 316 "async": false, 317 "expression": false, 318 "params": [], 319 "body": { 320 "type": "BlockStatement", 321 "statements": [], 322 "loc": { 323 "start": { 324 "line": 1, 325 "column": 1 326 }, 327 "end": { 328 "line": 1, 329 "column": 1 330 } 331 } 332 }, 333 "loc": { 334 "start": { 335 "line": 1, 336 "column": 1 337 }, 338 "end": { 339 "line": 1, 340 "column": 1 341 } 342 } 343 }, 344 "loc": { 345 "start": { 346 "line": 1, 347 "column": 1 348 }, 349 "end": { 350 "line": 1, 351 "column": 1 352 } 353 } 354 }, 355 "overloads": [], 356 "decorators": [], 357 "annotations": [ 358 { 359 "type": "Annotation", 360 "expression": { 361 "type": "CallExpression", 362 "callee": { 363 "type": "Identifier", 364 "name": "Anno1", 365 "loc": { 366 "start": { 367 "line": 21, 368 "column": 3 369 }, 370 "end": { 371 "line": 21, 372 "column": 8 373 } 374 } 375 }, 376 "arguments": [], 377 "optional": false, 378 "loc": { 379 "start": { 380 "line": 21, 381 "column": 3 382 }, 383 "end": { 384 "line": 21, 385 "column": 10 386 } 387 } 388 }, 389 "name": "Anno1", 390 "isImported": true, 391 "loc": { 392 "start": { 393 "line": 21, 394 "column": 1 395 }, 396 "end": { 397 "line": 21, 398 "column": 10 399 } 400 } 401 } 402 ], 403 "loc": { 404 "start": { 405 "line": 22, 406 "column": 1 407 }, 408 "end": { 409 "line": 22, 410 "column": 11 411 } 412 } 413 }, 414 "body": [], 415 "indexSignatures": [], 416 "loc": { 417 "start": { 418 "line": 22, 419 "column": 9 420 }, 421 "end": { 422 "line": 22, 423 "column": 11 424 } 425 } 426 }, 427 "decorators": [], 428 "isAnnotationDeclaration": false, 429 "loc": { 430 "start": { 431 "line": 22, 432 "column": 1 433 }, 434 "end": { 435 "line": 22, 436 "column": 11 437 } 438 } 439 }, 440 { 441 "type": "ClassDeclaration", 442 "definition": { 443 "id": { 444 "type": "Identifier", 445 "name": "C", 446 "loc": { 447 "start": { 448 "line": 25, 449 "column": 7 450 }, 451 "end": { 452 "line": 25, 453 "column": 8 454 } 455 } 456 }, 457 "superClass": null, 458 "implements": [], 459 "constructor": { 460 "type": "MethodDefinition", 461 "key": { 462 "type": "Identifier", 463 "name": "constructor", 464 "loc": { 465 "start": { 466 "line": 1, 467 "column": 1 468 }, 469 "end": { 470 "line": 1, 471 "column": 1 472 } 473 } 474 }, 475 "kind": "constructor", 476 "static": false, 477 "optional": false, 478 "computed": false, 479 "value": { 480 "type": "FunctionExpression", 481 "function": { 482 "type": "ScriptFunction", 483 "id": null, 484 "generator": false, 485 "async": false, 486 "expression": false, 487 "params": [], 488 "body": { 489 "type": "BlockStatement", 490 "statements": [], 491 "loc": { 492 "start": { 493 "line": 1, 494 "column": 1 495 }, 496 "end": { 497 "line": 1, 498 "column": 1 499 } 500 } 501 }, 502 "loc": { 503 "start": { 504 "line": 1, 505 "column": 1 506 }, 507 "end": { 508 "line": 1, 509 "column": 1 510 } 511 } 512 }, 513 "loc": { 514 "start": { 515 "line": 1, 516 "column": 1 517 }, 518 "end": { 519 "line": 1, 520 "column": 1 521 } 522 } 523 }, 524 "overloads": [], 525 "decorators": [], 526 "annotations": [ 527 { 528 "type": "Annotation", 529 "expression": { 530 "type": "CallExpression", 531 "callee": { 532 "type": "Identifier", 533 "name": "Anno1", 534 "loc": { 535 "start": { 536 "line": 24, 537 "column": 3 538 }, 539 "end": { 540 "line": 24, 541 "column": 8 542 } 543 } 544 }, 545 "arguments": [ 546 { 547 "type": "ObjectExpression", 548 "properties": [], 549 "loc": { 550 "start": { 551 "line": 24, 552 "column": 9 553 }, 554 "end": { 555 "line": 24, 556 "column": 11 557 } 558 } 559 } 560 ], 561 "optional": false, 562 "loc": { 563 "start": { 564 "line": 24, 565 "column": 3 566 }, 567 "end": { 568 "line": 24, 569 "column": 12 570 } 571 } 572 }, 573 "name": "Anno1", 574 "isImported": true, 575 "loc": { 576 "start": { 577 "line": 24, 578 "column": 1 579 }, 580 "end": { 581 "line": 24, 582 "column": 12 583 } 584 } 585 } 586 ], 587 "loc": { 588 "start": { 589 "line": 25, 590 "column": 1 591 }, 592 "end": { 593 "line": 25, 594 "column": 11 595 } 596 } 597 }, 598 "body": [], 599 "indexSignatures": [], 600 "loc": { 601 "start": { 602 "line": 25, 603 "column": 9 604 }, 605 "end": { 606 "line": 25, 607 "column": 11 608 } 609 } 610 }, 611 "decorators": [], 612 "isAnnotationDeclaration": false, 613 "loc": { 614 "start": { 615 "line": 25, 616 "column": 1 617 }, 618 "end": { 619 "line": 25, 620 "column": 11 621 } 622 } 623 }, 624 { 625 "type": "ClassDeclaration", 626 "definition": { 627 "id": { 628 "type": "Identifier", 629 "name": "D", 630 "loc": { 631 "start": { 632 "line": 28, 633 "column": 7 634 }, 635 "end": { 636 "line": 28, 637 "column": 8 638 } 639 } 640 }, 641 "superClass": null, 642 "implements": [], 643 "constructor": { 644 "type": "MethodDefinition", 645 "key": { 646 "type": "Identifier", 647 "name": "constructor", 648 "loc": { 649 "start": { 650 "line": 1, 651 "column": 1 652 }, 653 "end": { 654 "line": 1, 655 "column": 1 656 } 657 } 658 }, 659 "kind": "constructor", 660 "static": false, 661 "optional": false, 662 "computed": false, 663 "value": { 664 "type": "FunctionExpression", 665 "function": { 666 "type": "ScriptFunction", 667 "id": null, 668 "generator": false, 669 "async": false, 670 "expression": false, 671 "params": [], 672 "body": { 673 "type": "BlockStatement", 674 "statements": [], 675 "loc": { 676 "start": { 677 "line": 1, 678 "column": 1 679 }, 680 "end": { 681 "line": 1, 682 "column": 1 683 } 684 } 685 }, 686 "loc": { 687 "start": { 688 "line": 1, 689 "column": 1 690 }, 691 "end": { 692 "line": 1, 693 "column": 1 694 } 695 } 696 }, 697 "loc": { 698 "start": { 699 "line": 1, 700 "column": 1 701 }, 702 "end": { 703 "line": 1, 704 "column": 1 705 } 706 } 707 }, 708 "overloads": [], 709 "decorators": [], 710 "annotations": [ 711 { 712 "type": "Annotation", 713 "expression": { 714 "type": "CallExpression", 715 "callee": { 716 "type": "Identifier", 717 "name": "Anno2", 718 "loc": { 719 "start": { 720 "line": 27, 721 "column": 3 722 }, 723 "end": { 724 "line": 27, 725 "column": 8 726 } 727 } 728 }, 729 "arguments": [ 730 { 731 "type": "ObjectExpression", 732 "properties": [ 733 { 734 "type": "Property", 735 "method": false, 736 "shorthand": false, 737 "computed": false, 738 "key": { 739 "type": "Identifier", 740 "name": "a", 741 "loc": { 742 "start": { 743 "line": 27, 744 "column": 10 745 }, 746 "end": { 747 "line": 27, 748 "column": 11 749 } 750 } 751 }, 752 "value": { 753 "type": "NumberLiteral", 754 "value": 1, 755 "loc": { 756 "start": { 757 "line": 27, 758 "column": 13 759 }, 760 "end": { 761 "line": 27, 762 "column": 14 763 } 764 } 765 }, 766 "kind": "init", 767 "loc": { 768 "start": { 769 "line": 27, 770 "column": 10 771 }, 772 "end": { 773 "line": 27, 774 "column": 14 775 } 776 } 777 }, 778 { 779 "type": "Property", 780 "method": false, 781 "shorthand": false, 782 "computed": false, 783 "key": { 784 "type": "Identifier", 785 "name": "b", 786 "loc": { 787 "start": { 788 "line": 27, 789 "column": 16 790 }, 791 "end": { 792 "line": 27, 793 "column": 17 794 } 795 } 796 }, 797 "value": { 798 "type": "StringLiteral", 799 "value": "string", 800 "loc": { 801 "start": { 802 "line": 27, 803 "column": 19 804 }, 805 "end": { 806 "line": 27, 807 "column": 27 808 } 809 } 810 }, 811 "kind": "init", 812 "loc": { 813 "start": { 814 "line": 27, 815 "column": 16 816 }, 817 "end": { 818 "line": 27, 819 "column": 27 820 } 821 } 822 } 823 ], 824 "loc": { 825 "start": { 826 "line": 27, 827 "column": 9 828 }, 829 "end": { 830 "line": 27, 831 "column": 28 832 } 833 } 834 } 835 ], 836 "optional": false, 837 "loc": { 838 "start": { 839 "line": 27, 840 "column": 3 841 }, 842 "end": { 843 "line": 27, 844 "column": 29 845 } 846 } 847 }, 848 "name": "Anno2", 849 "isImported": true, 850 "loc": { 851 "start": { 852 "line": 27, 853 "column": 1 854 }, 855 "end": { 856 "line": 27, 857 "column": 29 858 } 859 } 860 } 861 ], 862 "loc": { 863 "start": { 864 "line": 28, 865 "column": 1 866 }, 867 "end": { 868 "line": 28, 869 "column": 11 870 } 871 } 872 }, 873 "body": [], 874 "indexSignatures": [], 875 "loc": { 876 "start": { 877 "line": 28, 878 "column": 9 879 }, 880 "end": { 881 "line": 28, 882 "column": 11 883 } 884 } 885 }, 886 "decorators": [], 887 "isAnnotationDeclaration": false, 888 "loc": { 889 "start": { 890 "line": 28, 891 "column": 1 892 }, 893 "end": { 894 "line": 28, 895 "column": 11 896 } 897 } 898 } 899 ], 900 "loc": { 901 "start": { 902 "line": 1, 903 "column": 1 904 }, 905 "end": { 906 "line": 28, 907 "column": 11 908 } 909 } 910} 911