1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "ETSGLOBAL",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 1,
14              "column": 1
15            },
16            "end": {
17              "line": 1,
18              "column": 1
19            }
20          }
21        },
22        "superClass": null,
23        "implements": [],
24        "body": [
25          {
26            "type": "MethodDefinition",
27            "key": {
28              "type": "Identifier",
29              "name": "_$init$_",
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": "method",
43            "accessibility": "public",
44            "static": true,
45            "optional": false,
46            "computed": false,
47            "value": {
48              "type": "FunctionExpression",
49              "function": {
50                "type": "ScriptFunction",
51                "id": {
52                  "type": "Identifier",
53                  "name": "_$init$_",
54                  "decorators": [],
55                  "loc": {
56                    "start": {
57                      "line": 1,
58                      "column": 1
59                    },
60                    "end": {
61                      "line": 1,
62                      "column": 1
63                    }
64                  }
65                },
66                "generator": false,
67                "async": false,
68                "expression": false,
69                "params": [],
70                "body": {
71                  "type": "BlockStatement",
72                  "statements": [],
73                  "loc": {
74                    "start": {
75                      "line": 1,
76                      "column": 1
77                    },
78                    "end": {
79                      "line": 1,
80                      "column": 1
81                    }
82                  }
83                },
84                "loc": {
85                  "start": {
86                    "line": 1,
87                    "column": 1
88                  },
89                  "end": {
90                    "line": 1,
91                    "column": 1
92                  }
93                }
94              },
95              "loc": {
96                "start": {
97                  "line": 1,
98                  "column": 1
99                },
100                "end": {
101                  "line": 1,
102                  "column": 1
103                }
104              }
105            },
106            "overloads": [],
107            "decorators": [],
108            "loc": {
109              "start": {
110                "line": 1,
111                "column": 1
112              },
113              "end": {
114                "line": 1,
115                "column": 1
116              }
117            }
118          },
119          {
120            "type": "MethodDefinition",
121            "key": {
122              "type": "Identifier",
123              "name": "test_void",
124              "decorators": [],
125              "loc": {
126                "start": {
127                  "line": 16,
128                  "column": 10
129                },
130                "end": {
131                  "line": 16,
132                  "column": 19
133                }
134              }
135            },
136            "kind": "method",
137            "accessibility": "public",
138            "static": true,
139            "optional": false,
140            "computed": false,
141            "value": {
142              "type": "FunctionExpression",
143              "function": {
144                "type": "ScriptFunction",
145                "id": {
146                  "type": "Identifier",
147                  "name": "test_void",
148                  "decorators": [],
149                  "loc": {
150                    "start": {
151                      "line": 16,
152                      "column": 10
153                    },
154                    "end": {
155                      "line": 16,
156                      "column": 19
157                    }
158                  }
159                },
160                "generator": false,
161                "async": false,
162                "expression": false,
163                "params": [],
164                "returnType": {
165                  "type": "ETSPrimitiveType",
166                  "loc": {
167                    "start": {
168                      "line": 16,
169                      "column": 23
170                    },
171                    "end": {
172                      "line": 16,
173                      "column": 27
174                    }
175                  }
176                },
177                "body": {
178                  "type": "BlockStatement",
179                  "statements": [],
180                  "loc": {
181                    "start": {
182                      "line": 16,
183                      "column": 28
184                    },
185                    "end": {
186                      "line": 16,
187                      "column": 30
188                    }
189                  }
190                },
191                "loc": {
192                  "start": {
193                    "line": 16,
194                    "column": 19
195                  },
196                  "end": {
197                    "line": 16,
198                    "column": 30
199                  }
200                }
201              },
202              "loc": {
203                "start": {
204                  "line": 16,
205                  "column": 19
206                },
207                "end": {
208                  "line": 16,
209                  "column": 30
210                }
211              }
212            },
213            "overloads": [],
214            "decorators": [],
215            "loc": {
216              "start": {
217                "line": 16,
218                "column": 1
219              },
220              "end": {
221                "line": 16,
222                "column": 30
223              }
224            }
225          },
226          {
227            "type": "MethodDefinition",
228            "key": {
229              "type": "Identifier",
230              "name": "main",
231              "decorators": [],
232              "loc": {
233                "start": {
234                  "line": 18,
235                  "column": 10
236                },
237                "end": {
238                  "line": 18,
239                  "column": 14
240                }
241              }
242            },
243            "kind": "method",
244            "accessibility": "public",
245            "static": true,
246            "optional": false,
247            "computed": false,
248            "value": {
249              "type": "FunctionExpression",
250              "function": {
251                "type": "ScriptFunction",
252                "id": {
253                  "type": "Identifier",
254                  "name": "main",
255                  "decorators": [],
256                  "loc": {
257                    "start": {
258                      "line": 18,
259                      "column": 10
260                    },
261                    "end": {
262                      "line": 18,
263                      "column": 14
264                    }
265                  }
266                },
267                "generator": false,
268                "async": false,
269                "expression": false,
270                "params": [],
271                "returnType": {
272                  "type": "ETSPrimitiveType",
273                  "loc": {
274                    "start": {
275                      "line": 18,
276                      "column": 18
277                    },
278                    "end": {
279                      "line": 18,
280                      "column": 22
281                    }
282                  }
283                },
284                "body": {
285                  "type": "BlockStatement",
286                  "statements": [
287                    {
288                      "type": "VariableDeclaration",
289                      "declarations": [
290                        {
291                          "type": "VariableDeclarator",
292                          "id": {
293                            "type": "Identifier",
294                            "name": "test1",
295                            "typeAnnotation": {
296                              "type": "ETSFunctionType",
297                              "params": [],
298                              "returnType": {
299                                "type": "ETSPrimitiveType",
300                                "loc": {
301                                  "start": {
302                                    "line": 19,
303                                    "column": 22
304                                  },
305                                  "end": {
306                                    "line": 19,
307                                    "column": 26
308                                  }
309                                }
310                              },
311                              "loc": {
312                                "start": {
313                                  "line": 19,
314                                  "column": 16
315                                },
316                                "end": {
317                                  "line": 19,
318                                  "column": 26
319                                }
320                              }
321                            },
322                            "decorators": [],
323                            "loc": {
324                              "start": {
325                                "line": 19,
326                                "column": 9
327                              },
328                              "end": {
329                                "line": 19,
330                                "column": 14
331                              }
332                            }
333                          },
334                          "init": {
335                            "type": "ArrowFunctionExpression",
336                            "function": {
337                              "type": "ScriptFunction",
338                              "id": null,
339                              "generator": false,
340                              "async": false,
341                              "expression": true,
342                              "params": [],
343                              "returnType": {
344                                "type": "ETSPrimitiveType",
345                                "loc": {
346                                  "start": {
347                                    "line": 19,
348                                    "column": 33
349                                  },
350                                  "end": {
351                                    "line": 19,
352                                    "column": 37
353                                  }
354                                }
355                              },
356                              "body": {
357                                "type": "BlockStatement",
358                                "statements": [
359                                  {
360                                    "type": "ExpressionStatement",
361                                    "expression": {
362                                      "type": "CallExpression",
363                                      "callee": {
364                                        "type": "Identifier",
365                                        "name": "test_void",
366                                        "decorators": [],
367                                        "loc": {
368                                          "start": {
369                                            "line": 19,
370                                            "column": 41
371                                          },
372                                          "end": {
373                                            "line": 19,
374                                            "column": 50
375                                          }
376                                        }
377                                      },
378                                      "arguments": [],
379                                      "optional": false,
380                                      "loc": {
381                                        "start": {
382                                          "line": 19,
383                                          "column": 41
384                                        },
385                                        "end": {
386                                          "line": 19,
387                                          "column": 52
388                                        }
389                                      }
390                                    },
391                                    "loc": {
392                                      "start": {
393                                        "line": 1,
394                                        "column": 1
395                                      },
396                                      "end": {
397                                        "line": 1,
398                                        "column": 1
399                                      }
400                                    }
401                                  }
402                                ],
403                                "loc": {
404                                  "start": {
405                                    "line": 1,
406                                    "column": 1
407                                  },
408                                  "end": {
409                                    "line": 1,
410                                    "column": 1
411                                  }
412                                }
413                              },
414                              "loc": {
415                                "start": {
416                                  "line": 19,
417                                  "column": 29
418                                },
419                                "end": {
420                                  "line": 19,
421                                  "column": 52
422                                }
423                              }
424                            },
425                            "loc": {
426                              "start": {
427                                "line": 19,
428                                "column": 29
429                              },
430                              "end": {
431                                "line": 19,
432                                "column": 52
433                              }
434                            }
435                          },
436                          "loc": {
437                            "start": {
438                              "line": 19,
439                              "column": 9
440                            },
441                            "end": {
442                              "line": 19,
443                              "column": 52
444                            }
445                          }
446                        }
447                      ],
448                      "kind": "let",
449                      "loc": {
450                        "start": {
451                          "line": 19,
452                          "column": 5
453                        },
454                        "end": {
455                          "line": 19,
456                          "column": 53
457                        }
458                      }
459                    },
460                    {
461                      "type": "ExpressionStatement",
462                      "expression": {
463                        "type": "CallExpression",
464                        "callee": {
465                          "type": "Identifier",
466                          "name": "test1",
467                          "decorators": [],
468                          "loc": {
469                            "start": {
470                              "line": 20,
471                              "column": 5
472                            },
473                            "end": {
474                              "line": 20,
475                              "column": 10
476                            }
477                          }
478                        },
479                        "arguments": [],
480                        "optional": false,
481                        "loc": {
482                          "start": {
483                            "line": 20,
484                            "column": 5
485                          },
486                          "end": {
487                            "line": 20,
488                            "column": 12
489                          }
490                        }
491                      },
492                      "loc": {
493                        "start": {
494                          "line": 20,
495                          "column": 5
496                        },
497                        "end": {
498                          "line": 20,
499                          "column": 13
500                        }
501                      }
502                    }
503                  ],
504                  "loc": {
505                    "start": {
506                      "line": 18,
507                      "column": 23
508                    },
509                    "end": {
510                      "line": 21,
511                      "column": 2
512                    }
513                  }
514                },
515                "loc": {
516                  "start": {
517                    "line": 18,
518                    "column": 14
519                  },
520                  "end": {
521                    "line": 21,
522                    "column": 2
523                  }
524                }
525              },
526              "loc": {
527                "start": {
528                  "line": 18,
529                  "column": 14
530                },
531                "end": {
532                  "line": 21,
533                  "column": 2
534                }
535              }
536            },
537            "overloads": [],
538            "decorators": [],
539            "loc": {
540              "start": {
541                "line": 18,
542                "column": 1
543              },
544              "end": {
545                "line": 21,
546                "column": 2
547              }
548            }
549          }
550        ],
551        "loc": {
552          "start": {
553            "line": 1,
554            "column": 1
555          },
556          "end": {
557            "line": 1,
558            "column": 1
559          }
560        }
561      },
562      "loc": {
563        "start": {
564          "line": 1,
565          "column": 1
566        },
567        "end": {
568          "line": 1,
569          "column": 1
570        }
571      }
572    }
573  ],
574  "loc": {
575    "start": {
576      "line": 1,
577      "column": 1
578    },
579    "end": {
580      "line": 22,
581      "column": 1
582    }
583  }
584}
585