• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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