1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "TSInterfaceDeclaration", 6 "body": { 7 "type": "TSInterfaceBody", 8 "body": [ 9 { 10 "type": "MethodDefinition", 11 "key": { 12 "type": "Identifier", 13 "name": "foo", 14 "decorators": [], 15 "loc": { 16 "start": { 17 "line": 17, 18 "column": 3, 19 "program": "interface_method_default_body.ets" 20 }, 21 "end": { 22 "line": 17, 23 "column": 6, 24 "program": "interface_method_default_body.ets" 25 } 26 } 27 }, 28 "kind": "method", 29 "accessibility": "public", 30 "static": false, 31 "optional": false, 32 "computed": false, 33 "value": { 34 "type": "FunctionExpression", 35 "function": { 36 "type": "ScriptFunction", 37 "id": { 38 "type": "Identifier", 39 "name": "foo", 40 "decorators": [], 41 "loc": { 42 "start": { 43 "line": 17, 44 "column": 3, 45 "program": "interface_method_default_body.ets" 46 }, 47 "end": { 48 "line": 17, 49 "column": 6, 50 "program": "interface_method_default_body.ets" 51 } 52 } 53 }, 54 "generator": false, 55 "async": false, 56 "expression": false, 57 "params": [], 58 "returnType": { 59 "type": "ETSPrimitiveType", 60 "loc": { 61 "start": { 62 "line": 17, 63 "column": 10, 64 "program": "interface_method_default_body.ets" 65 }, 66 "end": { 67 "line": 17, 68 "column": 14, 69 "program": "interface_method_default_body.ets" 70 } 71 } 72 }, 73 "loc": { 74 "start": { 75 "line": 17, 76 "column": 6, 77 "program": "interface_method_default_body.ets" 78 }, 79 "end": { 80 "line": 17, 81 "column": 14, 82 "program": "interface_method_default_body.ets" 83 } 84 } 85 }, 86 "loc": { 87 "start": { 88 "line": 17, 89 "column": 6, 90 "program": "interface_method_default_body.ets" 91 }, 92 "end": { 93 "line": 17, 94 "column": 14, 95 "program": "interface_method_default_body.ets" 96 } 97 } 98 }, 99 "overloads": [], 100 "decorators": [], 101 "loc": { 102 "start": { 103 "line": 17, 104 "column": 3, 105 "program": "interface_method_default_body.ets" 106 }, 107 "end": { 108 "line": 17, 109 "column": 15, 110 "program": "interface_method_default_body.ets" 111 } 112 } 113 } 114 ], 115 "loc": { 116 "start": { 117 "line": 16, 118 "column": 14, 119 "program": "interface_method_default_body.ets" 120 }, 121 "end": { 122 "line": 18, 123 "column": 2, 124 "program": "interface_method_default_body.ets" 125 } 126 } 127 }, 128 "id": { 129 "type": "Identifier", 130 "name": "I1", 131 "decorators": [], 132 "loc": { 133 "start": { 134 "line": 16, 135 "column": 11, 136 "program": "interface_method_default_body.ets" 137 }, 138 "end": { 139 "line": 16, 140 "column": 13, 141 "program": "interface_method_default_body.ets" 142 } 143 } 144 }, 145 "extends": [], 146 "loc": { 147 "start": { 148 "line": 16, 149 "column": 1, 150 "program": "interface_method_default_body.ets" 151 }, 152 "end": { 153 "line": 20, 154 "column": 10, 155 "program": "interface_method_default_body.ets" 156 } 157 } 158 }, 159 { 160 "type": "TSInterfaceDeclaration", 161 "body": { 162 "type": "TSInterfaceBody", 163 "body": [ 164 { 165 "type": "MethodDefinition", 166 "key": { 167 "type": "Identifier", 168 "name": "foo", 169 "decorators": [], 170 "loc": { 171 "start": { 172 "line": 21, 173 "column": 3, 174 "program": "interface_method_default_body.ets" 175 }, 176 "end": { 177 "line": 21, 178 "column": 6, 179 "program": "interface_method_default_body.ets" 180 } 181 } 182 }, 183 "kind": "method", 184 "accessibility": "public", 185 "static": false, 186 "optional": false, 187 "computed": false, 188 "value": { 189 "type": "FunctionExpression", 190 "function": { 191 "type": "ScriptFunction", 192 "id": { 193 "type": "Identifier", 194 "name": "foo", 195 "decorators": [], 196 "loc": { 197 "start": { 198 "line": 21, 199 "column": 3, 200 "program": "interface_method_default_body.ets" 201 }, 202 "end": { 203 "line": 21, 204 "column": 6, 205 "program": "interface_method_default_body.ets" 206 } 207 } 208 }, 209 "generator": false, 210 "async": false, 211 "expression": false, 212 "params": [], 213 "returnType": { 214 "type": "ETSPrimitiveType", 215 "loc": { 216 "start": { 217 "line": 21, 218 "column": 10, 219 "program": "interface_method_default_body.ets" 220 }, 221 "end": { 222 "line": 21, 223 "column": 14, 224 "program": "interface_method_default_body.ets" 225 } 226 } 227 }, 228 "body": { 229 "type": "BlockStatement", 230 "statements": [], 231 "loc": { 232 "start": { 233 "line": 21, 234 "column": 15, 235 "program": "interface_method_default_body.ets" 236 }, 237 "end": { 238 "line": 21, 239 "column": 17, 240 "program": "interface_method_default_body.ets" 241 } 242 } 243 }, 244 "loc": { 245 "start": { 246 "line": 21, 247 "column": 6, 248 "program": "interface_method_default_body.ets" 249 }, 250 "end": { 251 "line": 21, 252 "column": 17, 253 "program": "interface_method_default_body.ets" 254 } 255 } 256 }, 257 "loc": { 258 "start": { 259 "line": 21, 260 "column": 6, 261 "program": "interface_method_default_body.ets" 262 }, 263 "end": { 264 "line": 21, 265 "column": 17, 266 "program": "interface_method_default_body.ets" 267 } 268 } 269 }, 270 "overloads": [], 271 "decorators": [], 272 "loc": { 273 "start": { 274 "line": 21, 275 "column": 3, 276 "program": "interface_method_default_body.ets" 277 }, 278 "end": { 279 "line": 21, 280 "column": 17, 281 "program": "interface_method_default_body.ets" 282 } 283 } 284 }, 285 { 286 "type": "MethodDefinition", 287 "key": { 288 "type": "Identifier", 289 "name": "bar", 290 "decorators": [], 291 "loc": { 292 "start": { 293 "line": 22, 294 "column": 3, 295 "program": "interface_method_default_body.ets" 296 }, 297 "end": { 298 "line": 22, 299 "column": 6, 300 "program": "interface_method_default_body.ets" 301 } 302 } 303 }, 304 "kind": "method", 305 "accessibility": "public", 306 "static": false, 307 "optional": false, 308 "computed": false, 309 "value": { 310 "type": "FunctionExpression", 311 "function": { 312 "type": "ScriptFunction", 313 "id": { 314 "type": "Identifier", 315 "name": "bar", 316 "decorators": [], 317 "loc": { 318 "start": { 319 "line": 22, 320 "column": 3, 321 "program": "interface_method_default_body.ets" 322 }, 323 "end": { 324 "line": 22, 325 "column": 6, 326 "program": "interface_method_default_body.ets" 327 } 328 } 329 }, 330 "generator": false, 331 "async": false, 332 "expression": false, 333 "params": [], 334 "returnType": { 335 "type": "ETSPrimitiveType", 336 "loc": { 337 "start": { 338 "line": 22, 339 "column": 10, 340 "program": "interface_method_default_body.ets" 341 }, 342 "end": { 343 "line": 22, 344 "column": 14, 345 "program": "interface_method_default_body.ets" 346 } 347 } 348 }, 349 "loc": { 350 "start": { 351 "line": 22, 352 "column": 6, 353 "program": "interface_method_default_body.ets" 354 }, 355 "end": { 356 "line": 22, 357 "column": 14, 358 "program": "interface_method_default_body.ets" 359 } 360 } 361 }, 362 "loc": { 363 "start": { 364 "line": 22, 365 "column": 6, 366 "program": "interface_method_default_body.ets" 367 }, 368 "end": { 369 "line": 22, 370 "column": 14, 371 "program": "interface_method_default_body.ets" 372 } 373 } 374 }, 375 "overloads": [], 376 "decorators": [], 377 "loc": { 378 "start": { 379 "line": 22, 380 "column": 3, 381 "program": "interface_method_default_body.ets" 382 }, 383 "end": { 384 "line": 22, 385 "column": 14, 386 "program": "interface_method_default_body.ets" 387 } 388 } 389 } 390 ], 391 "loc": { 392 "start": { 393 "line": 20, 394 "column": 25, 395 "program": "interface_method_default_body.ets" 396 }, 397 "end": { 398 "line": 23, 399 "column": 2, 400 "program": "interface_method_default_body.ets" 401 } 402 } 403 }, 404 "id": { 405 "type": "Identifier", 406 "name": "I2", 407 "decorators": [], 408 "loc": { 409 "start": { 410 "line": 20, 411 "column": 11, 412 "program": "interface_method_default_body.ets" 413 }, 414 "end": { 415 "line": 20, 416 "column": 13, 417 "program": "interface_method_default_body.ets" 418 } 419 } 420 }, 421 "extends": [ 422 { 423 "type": "TSInterfaceHeritage", 424 "expression": { 425 "type": "ETSTypeReference", 426 "part": { 427 "type": "ETSTypeReferencePart", 428 "name": { 429 "type": "Identifier", 430 "name": "I1", 431 "decorators": [], 432 "loc": { 433 "start": { 434 "line": 20, 435 "column": 22, 436 "program": "interface_method_default_body.ets" 437 }, 438 "end": { 439 "line": 20, 440 "column": 24, 441 "program": "interface_method_default_body.ets" 442 } 443 } 444 }, 445 "loc": { 446 "start": { 447 "line": 20, 448 "column": 22, 449 "program": "interface_method_default_body.ets" 450 }, 451 "end": { 452 "line": 20, 453 "column": 26, 454 "program": "interface_method_default_body.ets" 455 } 456 } 457 }, 458 "loc": { 459 "start": { 460 "line": 20, 461 "column": 22, 462 "program": "interface_method_default_body.ets" 463 }, 464 "end": { 465 "line": 20, 466 "column": 26, 467 "program": "interface_method_default_body.ets" 468 } 469 } 470 }, 471 "loc": { 472 "start": { 473 "line": 20, 474 "column": 22, 475 "program": "interface_method_default_body.ets" 476 }, 477 "end": { 478 "line": 20, 479 "column": 26, 480 "program": "interface_method_default_body.ets" 481 } 482 } 483 } 484 ], 485 "loc": { 486 "start": { 487 "line": 20, 488 "column": 1, 489 "program": "interface_method_default_body.ets" 490 }, 491 "end": { 492 "line": 25, 493 "column": 6, 494 "program": "interface_method_default_body.ets" 495 } 496 } 497 }, 498 { 499 "type": "ClassDeclaration", 500 "definition": { 501 "id": { 502 "type": "Identifier", 503 "name": "C", 504 "decorators": [], 505 "loc": { 506 "start": { 507 "line": 25, 508 "column": 7, 509 "program": "interface_method_default_body.ets" 510 }, 511 "end": { 512 "line": 25, 513 "column": 8, 514 "program": "interface_method_default_body.ets" 515 } 516 } 517 }, 518 "superClass": null, 519 "implements": [ 520 { 521 "type": "TSClassImplements", 522 "expression": { 523 "type": "ETSTypeReference", 524 "part": { 525 "type": "ETSTypeReferencePart", 526 "name": { 527 "type": "Identifier", 528 "name": "I2", 529 "decorators": [], 530 "loc": { 531 "start": { 532 "line": 25, 533 "column": 20, 534 "program": "interface_method_default_body.ets" 535 }, 536 "end": { 537 "line": 25, 538 "column": 22, 539 "program": "interface_method_default_body.ets" 540 } 541 } 542 }, 543 "loc": { 544 "start": { 545 "line": 25, 546 "column": 20, 547 "program": "interface_method_default_body.ets" 548 }, 549 "end": { 550 "line": 25, 551 "column": 24, 552 "program": "interface_method_default_body.ets" 553 } 554 } 555 }, 556 "loc": { 557 "start": { 558 "line": 25, 559 "column": 20, 560 "program": "interface_method_default_body.ets" 561 }, 562 "end": { 563 "line": 25, 564 "column": 24, 565 "program": "interface_method_default_body.ets" 566 } 567 } 568 }, 569 "loc": { 570 "start": { 571 "line": 25, 572 "column": 20, 573 "program": "interface_method_default_body.ets" 574 }, 575 "end": { 576 "line": 25, 577 "column": 24, 578 "program": "interface_method_default_body.ets" 579 } 580 } 581 } 582 ], 583 "body": [ 584 { 585 "type": "MethodDefinition", 586 "key": { 587 "type": "Identifier", 588 "name": "bar", 589 "decorators": [], 590 "loc": { 591 "start": { 592 "line": 26, 593 "column": 3, 594 "program": "interface_method_default_body.ets" 595 }, 596 "end": { 597 "line": 26, 598 "column": 6, 599 "program": "interface_method_default_body.ets" 600 } 601 } 602 }, 603 "kind": "method", 604 "accessibility": "public", 605 "static": false, 606 "optional": false, 607 "computed": false, 608 "value": { 609 "type": "FunctionExpression", 610 "function": { 611 "type": "ScriptFunction", 612 "id": { 613 "type": "Identifier", 614 "name": "bar", 615 "decorators": [], 616 "loc": { 617 "start": { 618 "line": 26, 619 "column": 3, 620 "program": "interface_method_default_body.ets" 621 }, 622 "end": { 623 "line": 26, 624 "column": 6, 625 "program": "interface_method_default_body.ets" 626 } 627 } 628 }, 629 "generator": false, 630 "async": false, 631 "expression": false, 632 "params": [], 633 "returnType": { 634 "type": "ETSPrimitiveType", 635 "loc": { 636 "start": { 637 "line": 26, 638 "column": 10, 639 "program": "interface_method_default_body.ets" 640 }, 641 "end": { 642 "line": 26, 643 "column": 14, 644 "program": "interface_method_default_body.ets" 645 } 646 } 647 }, 648 "body": { 649 "type": "BlockStatement", 650 "statements": [], 651 "loc": { 652 "start": { 653 "line": 26, 654 "column": 15, 655 "program": "interface_method_default_body.ets" 656 }, 657 "end": { 658 "line": 26, 659 "column": 17, 660 "program": "interface_method_default_body.ets" 661 } 662 } 663 }, 664 "loc": { 665 "start": { 666 "line": 26, 667 "column": 6, 668 "program": "interface_method_default_body.ets" 669 }, 670 "end": { 671 "line": 26, 672 "column": 17, 673 "program": "interface_method_default_body.ets" 674 } 675 } 676 }, 677 "loc": { 678 "start": { 679 "line": 26, 680 "column": 6, 681 "program": "interface_method_default_body.ets" 682 }, 683 "end": { 684 "line": 26, 685 "column": 17, 686 "program": "interface_method_default_body.ets" 687 } 688 } 689 }, 690 "overloads": [], 691 "decorators": [], 692 "loc": { 693 "start": { 694 "line": 26, 695 "column": 3, 696 "program": "interface_method_default_body.ets" 697 }, 698 "end": { 699 "line": 26, 700 "column": 17, 701 "program": "interface_method_default_body.ets" 702 } 703 } 704 }, 705 { 706 "type": "MethodDefinition", 707 "key": { 708 "type": "Identifier", 709 "name": "constructor", 710 "decorators": [], 711 "loc": { 712 "start": { 713 "line": 25, 714 "column": 24, 715 "program": "interface_method_default_body.ets" 716 }, 717 "end": { 718 "line": 25, 719 "column": 24, 720 "program": "interface_method_default_body.ets" 721 } 722 } 723 }, 724 "kind": "constructor", 725 "static": false, 726 "optional": false, 727 "computed": false, 728 "value": { 729 "type": "FunctionExpression", 730 "function": { 731 "type": "ScriptFunction", 732 "id": { 733 "type": "Identifier", 734 "name": "constructor", 735 "decorators": [], 736 "loc": { 737 "start": { 738 "line": 25, 739 "column": 24, 740 "program": "interface_method_default_body.ets" 741 }, 742 "end": { 743 "line": 25, 744 "column": 24, 745 "program": "interface_method_default_body.ets" 746 } 747 } 748 }, 749 "generator": false, 750 "async": false, 751 "expression": false, 752 "params": [], 753 "body": { 754 "type": "BlockStatement", 755 "statements": [], 756 "loc": { 757 "start": { 758 "line": 25, 759 "column": 24, 760 "program": "interface_method_default_body.ets" 761 }, 762 "end": { 763 "line": 25, 764 "column": 24, 765 "program": "interface_method_default_body.ets" 766 } 767 } 768 }, 769 "loc": { 770 "start": { 771 "line": 25, 772 "column": 24, 773 "program": "interface_method_default_body.ets" 774 }, 775 "end": { 776 "line": 25, 777 "column": 24, 778 "program": "interface_method_default_body.ets" 779 } 780 } 781 }, 782 "loc": { 783 "start": { 784 "line": 25, 785 "column": 24, 786 "program": "interface_method_default_body.ets" 787 }, 788 "end": { 789 "line": 25, 790 "column": 24, 791 "program": "interface_method_default_body.ets" 792 } 793 } 794 }, 795 "overloads": [], 796 "decorators": [], 797 "loc": { 798 "start": { 799 "line": 1, 800 "column": 1, 801 "program": null 802 }, 803 "end": { 804 "line": 1, 805 "column": 1, 806 "program": null 807 } 808 } 809 } 810 ], 811 "loc": { 812 "start": { 813 "line": 25, 814 "column": 23, 815 "program": "interface_method_default_body.ets" 816 }, 817 "end": { 818 "line": 29, 819 "column": 9, 820 "program": "interface_method_default_body.ets" 821 } 822 } 823 }, 824 "loc": { 825 "start": { 826 "line": 25, 827 "column": 1, 828 "program": "interface_method_default_body.ets" 829 }, 830 "end": { 831 "line": 29, 832 "column": 9, 833 "program": "interface_method_default_body.ets" 834 } 835 } 836 }, 837 { 838 "type": "ClassDeclaration", 839 "definition": { 840 "id": { 841 "type": "Identifier", 842 "name": "ETSGLOBAL", 843 "decorators": [], 844 "loc": { 845 "start": { 846 "line": 1, 847 "column": 1, 848 "program": "interface_method_default_body.ets" 849 }, 850 "end": { 851 "line": 1, 852 "column": 1, 853 "program": "interface_method_default_body.ets" 854 } 855 } 856 }, 857 "superClass": null, 858 "implements": [], 859 "body": [ 860 { 861 "type": "MethodDefinition", 862 "key": { 863 "type": "Identifier", 864 "name": "_$init$_", 865 "decorators": [], 866 "loc": { 867 "start": { 868 "line": 1, 869 "column": 1, 870 "program": null 871 }, 872 "end": { 873 "line": 1, 874 "column": 1, 875 "program": null 876 } 877 } 878 }, 879 "kind": "method", 880 "accessibility": "public", 881 "static": true, 882 "optional": false, 883 "computed": false, 884 "value": { 885 "type": "FunctionExpression", 886 "function": { 887 "type": "ScriptFunction", 888 "id": { 889 "type": "Identifier", 890 "name": "_$init$_", 891 "decorators": [], 892 "loc": { 893 "start": { 894 "line": 1, 895 "column": 1, 896 "program": null 897 }, 898 "end": { 899 "line": 1, 900 "column": 1, 901 "program": null 902 } 903 } 904 }, 905 "generator": false, 906 "async": false, 907 "expression": false, 908 "params": [], 909 "body": { 910 "type": "BlockStatement", 911 "statements": [], 912 "loc": { 913 "start": { 914 "line": 1, 915 "column": 1, 916 "program": null 917 }, 918 "end": { 919 "line": 1, 920 "column": 1, 921 "program": null 922 } 923 } 924 }, 925 "loc": { 926 "start": { 927 "line": 1, 928 "column": 1, 929 "program": null 930 }, 931 "end": { 932 "line": 1, 933 "column": 1, 934 "program": null 935 } 936 } 937 }, 938 "loc": { 939 "start": { 940 "line": 1, 941 "column": 1, 942 "program": null 943 }, 944 "end": { 945 "line": 1, 946 "column": 1, 947 "program": null 948 } 949 } 950 }, 951 "overloads": [], 952 "decorators": [], 953 "loc": { 954 "start": { 955 "line": 1, 956 "column": 1, 957 "program": "interface_method_default_body.ets" 958 }, 959 "end": { 960 "line": 1, 961 "column": 1, 962 "program": "interface_method_default_body.ets" 963 } 964 } 965 }, 966 { 967 "type": "MethodDefinition", 968 "key": { 969 "type": "Identifier", 970 "name": "main", 971 "decorators": [], 972 "loc": { 973 "start": { 974 "line": 29, 975 "column": 10, 976 "program": "interface_method_default_body.ets" 977 }, 978 "end": { 979 "line": 29, 980 "column": 14, 981 "program": "interface_method_default_body.ets" 982 } 983 } 984 }, 985 "kind": "method", 986 "accessibility": "public", 987 "static": true, 988 "optional": false, 989 "computed": false, 990 "value": { 991 "type": "FunctionExpression", 992 "function": { 993 "type": "ScriptFunction", 994 "id": { 995 "type": "Identifier", 996 "name": "main", 997 "decorators": [], 998 "loc": { 999 "start": { 1000 "line": 29, 1001 "column": 10, 1002 "program": "interface_method_default_body.ets" 1003 }, 1004 "end": { 1005 "line": 29, 1006 "column": 14, 1007 "program": "interface_method_default_body.ets" 1008 } 1009 } 1010 }, 1011 "generator": false, 1012 "async": false, 1013 "expression": false, 1014 "params": [], 1015 "returnType": { 1016 "type": "ETSPrimitiveType", 1017 "loc": { 1018 "start": { 1019 "line": 29, 1020 "column": 18, 1021 "program": "interface_method_default_body.ets" 1022 }, 1023 "end": { 1024 "line": 29, 1025 "column": 22, 1026 "program": "interface_method_default_body.ets" 1027 } 1028 } 1029 }, 1030 "body": { 1031 "type": "BlockStatement", 1032 "statements": [], 1033 "loc": { 1034 "start": { 1035 "line": 29, 1036 "column": 23, 1037 "program": "interface_method_default_body.ets" 1038 }, 1039 "end": { 1040 "line": 30, 1041 "column": 2, 1042 "program": "interface_method_default_body.ets" 1043 } 1044 } 1045 }, 1046 "loc": { 1047 "start": { 1048 "line": 29, 1049 "column": 10, 1050 "program": "interface_method_default_body.ets" 1051 }, 1052 "end": { 1053 "line": 30, 1054 "column": 2, 1055 "program": "interface_method_default_body.ets" 1056 } 1057 } 1058 }, 1059 "loc": { 1060 "start": { 1061 "line": 29, 1062 "column": 10, 1063 "program": "interface_method_default_body.ets" 1064 }, 1065 "end": { 1066 "line": 30, 1067 "column": 2, 1068 "program": "interface_method_default_body.ets" 1069 } 1070 } 1071 }, 1072 "overloads": [], 1073 "decorators": [], 1074 "loc": { 1075 "start": { 1076 "line": 29, 1077 "column": 1, 1078 "program": "interface_method_default_body.ets" 1079 }, 1080 "end": { 1081 "line": 30, 1082 "column": 2, 1083 "program": "interface_method_default_body.ets" 1084 } 1085 } 1086 } 1087 ], 1088 "loc": { 1089 "start": { 1090 "line": 1, 1091 "column": 1, 1092 "program": "interface_method_default_body.ets" 1093 }, 1094 "end": { 1095 "line": 1, 1096 "column": 1, 1097 "program": "interface_method_default_body.ets" 1098 } 1099 } 1100 }, 1101 "loc": { 1102 "start": { 1103 "line": 1, 1104 "column": 1, 1105 "program": "interface_method_default_body.ets" 1106 }, 1107 "end": { 1108 "line": 1, 1109 "column": 1, 1110 "program": "interface_method_default_body.ets" 1111 } 1112 } 1113 } 1114 ], 1115 "loc": { 1116 "start": { 1117 "line": 1, 1118 "column": 1, 1119 "program": "interface_method_default_body.ets" 1120 }, 1121 "end": { 1122 "line": 31, 1123 "column": 1, 1124 "program": "interface_method_default_body.ets" 1125 } 1126 } 1127} 1128