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