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