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