1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "Anno1", 10 "loc": { 11 "start": { 12 "line": 16, 13 "column": 12 14 }, 15 "end": { 16 "line": 16, 17 "column": 17 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": "Program", 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 "annotations": [], 91 "loc": { 92 "start": { 93 "line": 16, 94 "column": 2 95 }, 96 "end": { 97 "line": 18, 98 "column": 2 99 } 100 } 101 }, 102 "body": [ 103 { 104 "type": "ClassProperty", 105 "key": { 106 "type": "Identifier", 107 "name": "a", 108 "loc": { 109 "start": { 110 "line": 17, 111 "column": 5 112 }, 113 "end": { 114 "line": 17, 115 "column": 6 116 } 117 } 118 }, 119 "static": false, 120 "readonly": false, 121 "declare": false, 122 "optional": false, 123 "computed": false, 124 "typeAnnotation": { 125 "type": "TSArrayType", 126 "elementType": { 127 "type": "TSStringKeyword", 128 "loc": { 129 "start": { 130 "line": 17, 131 "column": 8 132 }, 133 "end": { 134 "line": 17, 135 "column": 14 136 } 137 } 138 }, 139 "loc": { 140 "start": { 141 "line": 17, 142 "column": 8 143 }, 144 "end": { 145 "line": 17, 146 "column": 16 147 } 148 } 149 }, 150 "decorators": [], 151 "loc": { 152 "start": { 153 "line": 17, 154 "column": 5 155 }, 156 "end": { 157 "line": 17, 158 "column": 6 159 } 160 } 161 } 162 ], 163 "indexSignatures": [], 164 "loc": { 165 "start": { 166 "line": 16, 167 "column": 18 168 }, 169 "end": { 170 "line": 18, 171 "column": 2 172 } 173 } 174 }, 175 "decorators": [], 176 "isAnnotationDeclaration": true, 177 "loc": { 178 "start": { 179 "line": 16, 180 "column": 2 181 }, 182 "end": { 183 "line": 18, 184 "column": 2 185 } 186 } 187 }, 188 { 189 "type": "ClassDeclaration", 190 "definition": { 191 "id": { 192 "type": "Identifier", 193 "name": "Anno2", 194 "loc": { 195 "start": { 196 "line": 20, 197 "column": 12 198 }, 199 "end": { 200 "line": 20, 201 "column": 17 202 } 203 } 204 }, 205 "superClass": null, 206 "implements": [], 207 "constructor": { 208 "type": "MethodDefinition", 209 "key": { 210 "type": "Identifier", 211 "name": "constructor", 212 "loc": { 213 "start": { 214 "line": 1, 215 "column": 1 216 }, 217 "end": { 218 "line": 1, 219 "column": 1 220 } 221 } 222 }, 223 "kind": "constructor", 224 "static": false, 225 "optional": false, 226 "computed": false, 227 "value": { 228 "type": "FunctionExpression", 229 "function": { 230 "type": "ScriptFunction", 231 "id": null, 232 "generator": false, 233 "async": false, 234 "expression": false, 235 "params": [], 236 "body": { 237 "type": "Program", 238 "statements": [], 239 "loc": { 240 "start": { 241 "line": 1, 242 "column": 1 243 }, 244 "end": { 245 "line": 1, 246 "column": 1 247 } 248 } 249 }, 250 "loc": { 251 "start": { 252 "line": 1, 253 "column": 1 254 }, 255 "end": { 256 "line": 1, 257 "column": 1 258 } 259 } 260 }, 261 "loc": { 262 "start": { 263 "line": 1, 264 "column": 1 265 }, 266 "end": { 267 "line": 1, 268 "column": 1 269 } 270 } 271 }, 272 "overloads": [], 273 "decorators": [], 274 "annotations": [], 275 "loc": { 276 "start": { 277 "line": 20, 278 "column": 2 279 }, 280 "end": { 281 "line": 22, 282 "column": 2 283 } 284 } 285 }, 286 "body": [ 287 { 288 "type": "ClassProperty", 289 "key": { 290 "type": "Identifier", 291 "name": "a", 292 "loc": { 293 "start": { 294 "line": 21, 295 "column": 5 296 }, 297 "end": { 298 "line": 21, 299 "column": 6 300 } 301 } 302 }, 303 "value": { 304 "type": "NewExpression", 305 "callee": { 306 "type": "Identifier", 307 "name": "Array", 308 "loc": { 309 "start": { 310 "line": 21, 311 "column": 23 312 }, 313 "end": { 314 "line": 21, 315 "column": 28 316 } 317 } 318 }, 319 "typeParameters": { 320 "type": "TSTypeParameterInstantiation", 321 "params": [ 322 { 323 "type": "TSStringKeyword", 324 "loc": { 325 "start": { 326 "line": 21, 327 "column": 29 328 }, 329 "end": { 330 "line": 21, 331 "column": 35 332 } 333 } 334 } 335 ], 336 "loc": { 337 "start": { 338 "line": 21, 339 "column": 28 340 }, 341 "end": { 342 "line": 21, 343 "column": 36 344 } 345 } 346 }, 347 "arguments": [], 348 "loc": { 349 "start": { 350 "line": 21, 351 "column": 19 352 }, 353 "end": { 354 "line": 21, 355 "column": 38 356 } 357 } 358 }, 359 "static": false, 360 "readonly": false, 361 "declare": false, 362 "optional": false, 363 "computed": false, 364 "typeAnnotation": { 365 "type": "TSArrayType", 366 "elementType": { 367 "type": "TSStringKeyword", 368 "loc": { 369 "start": { 370 "line": 21, 371 "column": 8 372 }, 373 "end": { 374 "line": 21, 375 "column": 14 376 } 377 } 378 }, 379 "loc": { 380 "start": { 381 "line": 21, 382 "column": 8 383 }, 384 "end": { 385 "line": 21, 386 "column": 16 387 } 388 } 389 }, 390 "decorators": [], 391 "loc": { 392 "start": { 393 "line": 21, 394 "column": 5 395 }, 396 "end": { 397 "line": 21, 398 "column": 38 399 } 400 } 401 } 402 ], 403 "indexSignatures": [], 404 "loc": { 405 "start": { 406 "line": 20, 407 "column": 18 408 }, 409 "end": { 410 "line": 22, 411 "column": 2 412 } 413 } 414 }, 415 "decorators": [], 416 "isAnnotationDeclaration": true, 417 "loc": { 418 "start": { 419 "line": 20, 420 "column": 2 421 }, 422 "end": { 423 "line": 22, 424 "column": 2 425 } 426 } 427 }, 428 { 429 "type": "ClassDeclaration", 430 "definition": { 431 "id": { 432 "type": "Identifier", 433 "name": "Anno3", 434 "loc": { 435 "start": { 436 "line": 24, 437 "column": 12 438 }, 439 "end": { 440 "line": 24, 441 "column": 17 442 } 443 } 444 }, 445 "superClass": null, 446 "implements": [], 447 "constructor": { 448 "type": "MethodDefinition", 449 "key": { 450 "type": "Identifier", 451 "name": "constructor", 452 "loc": { 453 "start": { 454 "line": 1, 455 "column": 1 456 }, 457 "end": { 458 "line": 1, 459 "column": 1 460 } 461 } 462 }, 463 "kind": "constructor", 464 "static": false, 465 "optional": false, 466 "computed": false, 467 "value": { 468 "type": "FunctionExpression", 469 "function": { 470 "type": "ScriptFunction", 471 "id": null, 472 "generator": false, 473 "async": false, 474 "expression": false, 475 "params": [], 476 "body": { 477 "type": "Program", 478 "statements": [], 479 "loc": { 480 "start": { 481 "line": 1, 482 "column": 1 483 }, 484 "end": { 485 "line": 1, 486 "column": 1 487 } 488 } 489 }, 490 "loc": { 491 "start": { 492 "line": 1, 493 "column": 1 494 }, 495 "end": { 496 "line": 1, 497 "column": 1 498 } 499 } 500 }, 501 "loc": { 502 "start": { 503 "line": 1, 504 "column": 1 505 }, 506 "end": { 507 "line": 1, 508 "column": 1 509 } 510 } 511 }, 512 "overloads": [], 513 "decorators": [], 514 "annotations": [], 515 "loc": { 516 "start": { 517 "line": 24, 518 "column": 2 519 }, 520 "end": { 521 "line": 26, 522 "column": 2 523 } 524 } 525 }, 526 "body": [ 527 { 528 "type": "ClassProperty", 529 "key": { 530 "type": "Identifier", 531 "name": "a", 532 "loc": { 533 "start": { 534 "line": 25, 535 "column": 5 536 }, 537 "end": { 538 "line": 25, 539 "column": 6 540 } 541 } 542 }, 543 "value": { 544 "type": "ArrayExpression", 545 "elements": [ 546 { 547 "type": "StringLiteral", 548 "value": "Hello", 549 "loc": { 550 "start": { 551 "line": 25, 552 "column": 20 553 }, 554 "end": { 555 "line": 25, 556 "column": 27 557 } 558 } 559 }, 560 { 561 "type": "StringLiteral", 562 "value": "world", 563 "loc": { 564 "start": { 565 "line": 25, 566 "column": 29 567 }, 568 "end": { 569 "line": 25, 570 "column": 36 571 } 572 } 573 }, 574 { 575 "type": "StringLiteral", 576 "value": "!", 577 "loc": { 578 "start": { 579 "line": 25, 580 "column": 38 581 }, 582 "end": { 583 "line": 25, 584 "column": 41 585 } 586 } 587 } 588 ], 589 "loc": { 590 "start": { 591 "line": 25, 592 "column": 19 593 }, 594 "end": { 595 "line": 25, 596 "column": 42 597 } 598 } 599 }, 600 "static": false, 601 "readonly": false, 602 "declare": false, 603 "optional": false, 604 "computed": false, 605 "typeAnnotation": { 606 "type": "TSArrayType", 607 "elementType": { 608 "type": "TSStringKeyword", 609 "loc": { 610 "start": { 611 "line": 25, 612 "column": 8 613 }, 614 "end": { 615 "line": 25, 616 "column": 14 617 } 618 } 619 }, 620 "loc": { 621 "start": { 622 "line": 25, 623 "column": 8 624 }, 625 "end": { 626 "line": 25, 627 "column": 16 628 } 629 } 630 }, 631 "decorators": [], 632 "loc": { 633 "start": { 634 "line": 25, 635 "column": 5 636 }, 637 "end": { 638 "line": 25, 639 "column": 42 640 } 641 } 642 } 643 ], 644 "indexSignatures": [], 645 "loc": { 646 "start": { 647 "line": 24, 648 "column": 18 649 }, 650 "end": { 651 "line": 26, 652 "column": 2 653 } 654 } 655 }, 656 "decorators": [], 657 "isAnnotationDeclaration": true, 658 "loc": { 659 "start": { 660 "line": 24, 661 "column": 2 662 }, 663 "end": { 664 "line": 26, 665 "column": 2 666 } 667 } 668 } 669 ], 670 "loc": { 671 "start": { 672 "line": 1, 673 "column": 1 674 }, 675 "end": { 676 "line": 27, 677 "column": 1 678 } 679 } 680} 681