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