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