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