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