1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "Baz", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 17, 14 "column": 7 15 }, 16 "end": { 17 "line": 17, 18 "column": 10 19 } 20 } 21 }, 22 "superClass": null, 23 "implements": [], 24 "constructor": { 25 "type": "MethodDefinition", 26 "key": { 27 "type": "Identifier", 28 "name": "constructor", 29 "decorators": [], 30 "loc": { 31 "start": { 32 "line": 20, 33 "column": 5 34 }, 35 "end": { 36 "line": 20, 37 "column": 16 38 } 39 } 40 }, 41 "kind": "constructor", 42 "static": false, 43 "optional": false, 44 "computed": false, 45 "value": { 46 "type": "FunctionExpression", 47 "function": { 48 "type": "ScriptFunction", 49 "id": null, 50 "generator": false, 51 "async": false, 52 "expression": false, 53 "params": [ 54 { 55 "type": "Identifier", 56 "name": "s", 57 "typeAnnotation": { 58 "type": "TSStringKeyword", 59 "loc": { 60 "start": { 61 "line": 20, 62 "column": 21 63 }, 64 "end": { 65 "line": 20, 66 "column": 27 67 } 68 } 69 }, 70 "optional": true, 71 "decorators": [], 72 "loc": { 73 "start": { 74 "line": 20, 75 "column": 17 76 }, 77 "end": { 78 "line": 20, 79 "column": 18 80 } 81 } 82 }, 83 { 84 "type": "Identifier", 85 "name": "n", 86 "typeAnnotation": { 87 "type": "TSNumberKeyword", 88 "loc": { 89 "start": { 90 "line": 20, 91 "column": 33 92 }, 93 "end": { 94 "line": 20, 95 "column": 39 96 } 97 } 98 }, 99 "optional": true, 100 "decorators": [], 101 "loc": { 102 "start": { 103 "line": 20, 104 "column": 29 105 }, 106 "end": { 107 "line": 20, 108 "column": 30 109 } 110 } 111 } 112 ], 113 "body": { 114 "type": "BlockStatement", 115 "statements": [ 116 { 117 "type": "ExpressionStatement", 118 "expression": { 119 "type": "AssignmentExpression", 120 "operator": "=", 121 "left": { 122 "type": "MemberExpression", 123 "object": { 124 "type": "ThisExpression", 125 "loc": { 126 "start": { 127 "line": 21, 128 "column": 9 129 }, 130 "end": { 131 "line": 21, 132 "column": 13 133 } 134 } 135 }, 136 "property": { 137 "type": "Identifier", 138 "name": "s", 139 "decorators": [], 140 "loc": { 141 "start": { 142 "line": 21, 143 "column": 14 144 }, 145 "end": { 146 "line": 21, 147 "column": 15 148 } 149 } 150 }, 151 "computed": false, 152 "optional": false, 153 "loc": { 154 "start": { 155 "line": 21, 156 "column": 9 157 }, 158 "end": { 159 "line": 21, 160 "column": 15 161 } 162 } 163 }, 164 "right": { 165 "type": "LogicalExpression", 166 "operator": "||", 167 "left": { 168 "type": "Identifier", 169 "name": "s", 170 "decorators": [], 171 "loc": { 172 "start": { 173 "line": 21, 174 "column": 18 175 }, 176 "end": { 177 "line": 21, 178 "column": 19 179 } 180 } 181 }, 182 "right": { 183 "type": "StringLiteral", 184 "value": "", 185 "loc": { 186 "start": { 187 "line": 21, 188 "column": 23 189 }, 190 "end": { 191 "line": 21, 192 "column": 25 193 } 194 } 195 }, 196 "loc": { 197 "start": { 198 "line": 21, 199 "column": 18 200 }, 201 "end": { 202 "line": 21, 203 "column": 25 204 } 205 } 206 }, 207 "loc": { 208 "start": { 209 "line": 21, 210 "column": 9 211 }, 212 "end": { 213 "line": 21, 214 "column": 25 215 } 216 } 217 }, 218 "loc": { 219 "start": { 220 "line": 21, 221 "column": 9 222 }, 223 "end": { 224 "line": 21, 225 "column": 26 226 } 227 } 228 }, 229 { 230 "type": "ExpressionStatement", 231 "expression": { 232 "type": "AssignmentExpression", 233 "operator": "=", 234 "left": { 235 "type": "MemberExpression", 236 "object": { 237 "type": "ThisExpression", 238 "loc": { 239 "start": { 240 "line": 22, 241 "column": 9 242 }, 243 "end": { 244 "line": 22, 245 "column": 13 246 } 247 } 248 }, 249 "property": { 250 "type": "Identifier", 251 "name": "n", 252 "decorators": [], 253 "loc": { 254 "start": { 255 "line": 22, 256 "column": 14 257 }, 258 "end": { 259 "line": 22, 260 "column": 15 261 } 262 } 263 }, 264 "computed": false, 265 "optional": false, 266 "loc": { 267 "start": { 268 "line": 22, 269 "column": 9 270 }, 271 "end": { 272 "line": 22, 273 "column": 15 274 } 275 } 276 }, 277 "right": { 278 "type": "LogicalExpression", 279 "operator": "||", 280 "left": { 281 "type": "Identifier", 282 "name": "n", 283 "decorators": [], 284 "loc": { 285 "start": { 286 "line": 22, 287 "column": 18 288 }, 289 "end": { 290 "line": 22, 291 "column": 19 292 } 293 } 294 }, 295 "right": { 296 "type": "NumberLiteral", 297 "value": 0, 298 "loc": { 299 "start": { 300 "line": 22, 301 "column": 23 302 }, 303 "end": { 304 "line": 22, 305 "column": 24 306 } 307 } 308 }, 309 "loc": { 310 "start": { 311 "line": 22, 312 "column": 18 313 }, 314 "end": { 315 "line": 22, 316 "column": 24 317 } 318 } 319 }, 320 "loc": { 321 "start": { 322 "line": 22, 323 "column": 9 324 }, 325 "end": { 326 "line": 22, 327 "column": 24 328 } 329 } 330 }, 331 "loc": { 332 "start": { 333 "line": 22, 334 "column": 9 335 }, 336 "end": { 337 "line": 22, 338 "column": 25 339 } 340 } 341 }, 342 { 343 "type": "ExpressionStatement", 344 "expression": { 345 "type": "CallExpression", 346 "callee": { 347 "type": "MemberExpression", 348 "object": { 349 "type": "ThisExpression", 350 "loc": { 351 "start": { 352 "line": 23, 353 "column": 9 354 }, 355 "end": { 356 "line": 23, 357 "column": 13 358 } 359 } 360 }, 361 "property": { 362 "type": "Identifier", 363 "name": "f", 364 "decorators": [], 365 "loc": { 366 "start": { 367 "line": 23, 368 "column": 14 369 }, 370 "end": { 371 "line": 23, 372 "column": 15 373 } 374 } 375 }, 376 "computed": false, 377 "optional": false, 378 "loc": { 379 "start": { 380 "line": 23, 381 "column": 9 382 }, 383 "end": { 384 "line": 23, 385 "column": 15 386 } 387 } 388 }, 389 "arguments": [], 390 "optional": false, 391 "loc": { 392 "start": { 393 "line": 23, 394 "column": 9 395 }, 396 "end": { 397 "line": 23, 398 "column": 17 399 } 400 } 401 }, 402 "loc": { 403 "start": { 404 "line": 23, 405 "column": 9 406 }, 407 "end": { 408 "line": 23, 409 "column": 18 410 } 411 } 412 } 413 ], 414 "loc": { 415 "start": { 416 "line": 20, 417 "column": 41 418 }, 419 "end": { 420 "line": 24, 421 "column": 6 422 } 423 } 424 }, 425 "loc": { 426 "start": { 427 "line": 20, 428 "column": 16 429 }, 430 "end": { 431 "line": 24, 432 "column": 6 433 } 434 } 435 }, 436 "loc": { 437 "start": { 438 "line": 20, 439 "column": 16 440 }, 441 "end": { 442 "line": 24, 443 "column": 6 444 } 445 } 446 }, 447 "overloads": [], 448 "decorators": [], 449 "loc": { 450 "start": { 451 "line": 20, 452 "column": 5 453 }, 454 "end": { 455 "line": 24, 456 "column": 6 457 } 458 } 459 }, 460 "body": [ 461 { 462 "type": "ClassProperty", 463 "key": { 464 "type": "Identifier", 465 "name": "s", 466 "decorators": [], 467 "loc": { 468 "start": { 469 "line": 18, 470 "column": 5 471 }, 472 "end": { 473 "line": 18, 474 "column": 6 475 } 476 } 477 }, 478 "static": false, 479 "readonly": false, 480 "declare": false, 481 "optional": false, 482 "computed": false, 483 "typeAnnotation": { 484 "type": "TSStringKeyword", 485 "loc": { 486 "start": { 487 "line": 18, 488 "column": 8 489 }, 490 "end": { 491 "line": 18, 492 "column": 14 493 } 494 } 495 }, 496 "definite": false, 497 "decorators": [], 498 "loc": { 499 "start": { 500 "line": 18, 501 "column": 5 502 }, 503 "end": { 504 "line": 18, 505 "column": 6 506 } 507 } 508 }, 509 { 510 "type": "ClassProperty", 511 "key": { 512 "type": "Identifier", 513 "name": "n", 514 "decorators": [], 515 "loc": { 516 "start": { 517 "line": 19, 518 "column": 5 519 }, 520 "end": { 521 "line": 19, 522 "column": 6 523 } 524 } 525 }, 526 "static": false, 527 "readonly": false, 528 "declare": false, 529 "optional": false, 530 "computed": false, 531 "typeAnnotation": { 532 "type": "TSNumberKeyword", 533 "loc": { 534 "start": { 535 "line": 19, 536 "column": 8 537 }, 538 "end": { 539 "line": 19, 540 "column": 14 541 } 542 } 543 }, 544 "definite": false, 545 "decorators": [], 546 "loc": { 547 "start": { 548 "line": 19, 549 "column": 5 550 }, 551 "end": { 552 "line": 19, 553 "column": 6 554 } 555 } 556 }, 557 { 558 "type": "MethodDefinition", 559 "key": { 560 "type": "Identifier", 561 "name": "f", 562 "decorators": [], 563 "loc": { 564 "start": { 565 "line": 25, 566 "column": 5 567 }, 568 "end": { 569 "line": 25, 570 "column": 6 571 } 572 } 573 }, 574 "kind": "method", 575 "static": false, 576 "optional": false, 577 "computed": false, 578 "value": { 579 "type": "FunctionExpression", 580 "function": { 581 "type": "ScriptFunction", 582 "id": null, 583 "generator": false, 584 "async": false, 585 "expression": false, 586 "params": [], 587 "returnType": { 588 "type": "TSVoidKeyword", 589 "loc": { 590 "start": { 591 "line": 25, 592 "column": 10 593 }, 594 "end": { 595 "line": 25, 596 "column": 14 597 } 598 } 599 }, 600 "body": { 601 "type": "BlockStatement", 602 "statements": [ 603 { 604 "type": "ExpressionStatement", 605 "expression": { 606 "type": "UpdateExpression", 607 "operator": "++", 608 "prefix": false, 609 "argument": { 610 "type": "MemberExpression", 611 "object": { 612 "type": "ThisExpression", 613 "loc": { 614 "start": { 615 "line": 26, 616 "column": 9 617 }, 618 "end": { 619 "line": 26, 620 "column": 13 621 } 622 } 623 }, 624 "property": { 625 "type": "Identifier", 626 "name": "n", 627 "decorators": [], 628 "loc": { 629 "start": { 630 "line": 26, 631 "column": 14 632 }, 633 "end": { 634 "line": 26, 635 "column": 15 636 } 637 } 638 }, 639 "computed": false, 640 "optional": false, 641 "loc": { 642 "start": { 643 "line": 26, 644 "column": 9 645 }, 646 "end": { 647 "line": 26, 648 "column": 15 649 } 650 } 651 }, 652 "loc": { 653 "start": { 654 "line": 26, 655 "column": 9 656 }, 657 "end": { 658 "line": 26, 659 "column": 17 660 } 661 } 662 }, 663 "loc": { 664 "start": { 665 "line": 26, 666 "column": 9 667 }, 668 "end": { 669 "line": 26, 670 "column": 18 671 } 672 } 673 } 674 ], 675 "loc": { 676 "start": { 677 "line": 25, 678 "column": 15 679 }, 680 "end": { 681 "line": 27, 682 "column": 6 683 } 684 } 685 }, 686 "loc": { 687 "start": { 688 "line": 25, 689 "column": 6 690 }, 691 "end": { 692 "line": 27, 693 "column": 6 694 } 695 } 696 }, 697 "loc": { 698 "start": { 699 "line": 25, 700 "column": 6 701 }, 702 "end": { 703 "line": 27, 704 "column": 6 705 } 706 } 707 }, 708 "overloads": [], 709 "decorators": [], 710 "loc": { 711 "start": { 712 "line": 25, 713 "column": 5 714 }, 715 "end": { 716 "line": 27, 717 "column": 6 718 } 719 } 720 } 721 ], 722 "loc": { 723 "start": { 724 "line": 17, 725 "column": 11 726 }, 727 "end": { 728 "line": 28, 729 "column": 2 730 } 731 } 732 }, 733 "loc": { 734 "start": { 735 "line": 17, 736 "column": 1 737 }, 738 "end": { 739 "line": 28, 740 "column": 2 741 } 742 } 743 } 744 ], 745 "loc": { 746 "start": { 747 "line": 1, 748 "column": 1 749 }, 750 "end": { 751 "line": 29, 752 "column": 1 753 } 754 } 755} 756