• 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": "A",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 16,
14              "column": 15,
15              "program": "declare_class.ets"
16            },
17            "end": {
18              "line": 16,
19              "column": 16,
20              "program": "declare_class.ets"
21            }
22          }
23        },
24        "superClass": null,
25        "implements": [],
26        "body": [
27          {
28            "type": "ClassProperty",
29            "key": {
30              "type": "Identifier",
31              "name": "f1",
32              "decorators": [],
33              "loc": {
34                "start": {
35                  "line": 17,
36                  "column": 5,
37                  "program": "declare_class.ets"
38                },
39                "end": {
40                  "line": 17,
41                  "column": 7,
42                  "program": "declare_class.ets"
43                }
44              }
45            },
46            "accessibility": "public",
47            "static": false,
48            "readonly": false,
49            "declare": true,
50            "optional": false,
51            "computed": false,
52            "typeAnnotation": {
53              "type": "ETSTypeReference",
54              "part": {
55                "type": "ETSTypeReferencePart",
56                "name": {
57                  "type": "Identifier",
58                  "name": "string",
59                  "decorators": [],
60                  "loc": {
61                    "start": {
62                      "line": 17,
63                      "column": 9,
64                      "program": "declare_class.ets"
65                    },
66                    "end": {
67                      "line": 17,
68                      "column": 15,
69                      "program": "declare_class.ets"
70                    }
71                  }
72                },
73                "loc": {
74                  "start": {
75                    "line": 17,
76                    "column": 9,
77                    "program": "declare_class.ets"
78                  },
79                  "end": {
80                    "line": 18,
81                    "column": 11,
82                    "program": "declare_class.ets"
83                  }
84                }
85              },
86              "loc": {
87                "start": {
88                  "line": 17,
89                  "column": 9,
90                  "program": "declare_class.ets"
91                },
92                "end": {
93                  "line": 18,
94                  "column": 11,
95                  "program": "declare_class.ets"
96                }
97              }
98            },
99            "definite": false,
100            "decorators": [],
101            "loc": {
102              "start": {
103                "line": 17,
104                "column": 5,
105                "program": "declare_class.ets"
106              },
107              "end": {
108                "line": 18,
109                "column": 11,
110                "program": "declare_class.ets"
111              }
112            }
113          },
114          {
115            "type": "ClassProperty",
116            "key": {
117              "type": "Identifier",
118              "name": "f2",
119              "decorators": [],
120              "loc": {
121                "start": {
122                  "line": 18,
123                  "column": 12,
124                  "program": "declare_class.ets"
125                },
126                "end": {
127                  "line": 18,
128                  "column": 14,
129                  "program": "declare_class.ets"
130                }
131              }
132            },
133            "accessibility": "public",
134            "static": true,
135            "readonly": false,
136            "declare": true,
137            "optional": false,
138            "computed": false,
139            "typeAnnotation": {
140              "type": "ETSPrimitiveType",
141              "loc": {
142                "start": {
143                  "line": 18,
144                  "column": 16,
145                  "program": "declare_class.ets"
146                },
147                "end": {
148                  "line": 18,
149                  "column": 22,
150                  "program": "declare_class.ets"
151                }
152              }
153            },
154            "definite": false,
155            "decorators": [],
156            "loc": {
157              "start": {
158                "line": 18,
159                "column": 12,
160                "program": "declare_class.ets"
161              },
162              "end": {
163                "line": 18,
164                "column": 22,
165                "program": "declare_class.ets"
166              }
167            }
168          },
169          {
170            "type": "MethodDefinition",
171            "key": {
172              "type": "Identifier",
173              "name": "foo",
174              "decorators": [],
175              "loc": {
176                "start": {
177                  "line": 19,
178                  "column": 5,
179                  "program": "declare_class.ets"
180                },
181                "end": {
182                  "line": 19,
183                  "column": 8,
184                  "program": "declare_class.ets"
185                }
186              }
187            },
188            "kind": "method",
189            "accessibility": "public",
190            "static": false,
191            "optional": false,
192            "computed": false,
193            "value": {
194              "type": "FunctionExpression",
195              "function": {
196                "type": "ScriptFunction",
197                "id": {
198                  "type": "Identifier",
199                  "name": "foo",
200                  "decorators": [],
201                  "loc": {
202                    "start": {
203                      "line": 19,
204                      "column": 5,
205                      "program": "declare_class.ets"
206                    },
207                    "end": {
208                      "line": 19,
209                      "column": 8,
210                      "program": "declare_class.ets"
211                    }
212                  }
213                },
214                "generator": false,
215                "async": false,
216                "expression": false,
217                "params": [
218                  {
219                    "type": "ETSParameterExpression",
220                    "name": {
221                      "type": "Identifier",
222                      "name": "p",
223                      "typeAnnotation": {
224                        "type": "ETSTypeReference",
225                        "part": {
226                          "type": "ETSTypeReferencePart",
227                          "name": {
228                            "type": "Identifier",
229                            "name": "string",
230                            "decorators": [],
231                            "loc": {
232                              "start": {
233                                "line": 19,
234                                "column": 12,
235                                "program": "declare_class.ets"
236                              },
237                              "end": {
238                                "line": 19,
239                                "column": 18,
240                                "program": "declare_class.ets"
241                              }
242                            }
243                          },
244                          "loc": {
245                            "start": {
246                              "line": 19,
247                              "column": 12,
248                              "program": "declare_class.ets"
249                            },
250                            "end": {
251                              "line": 19,
252                              "column": 19,
253                              "program": "declare_class.ets"
254                            }
255                          }
256                        },
257                        "loc": {
258                          "start": {
259                            "line": 19,
260                            "column": 12,
261                            "program": "declare_class.ets"
262                          },
263                          "end": {
264                            "line": 19,
265                            "column": 19,
266                            "program": "declare_class.ets"
267                          }
268                        }
269                      },
270                      "decorators": [],
271                      "loc": {
272                        "start": {
273                          "line": 19,
274                          "column": 9,
275                          "program": "declare_class.ets"
276                        },
277                        "end": {
278                          "line": 19,
279                          "column": 19,
280                          "program": "declare_class.ets"
281                        }
282                      }
283                    },
284                    "loc": {
285                      "start": {
286                        "line": 19,
287                        "column": 9,
288                        "program": "declare_class.ets"
289                      },
290                      "end": {
291                        "line": 19,
292                        "column": 19,
293                        "program": "declare_class.ets"
294                      }
295                    }
296                  }
297                ],
298                "returnType": {
299                  "type": "ETSPrimitiveType",
300                  "loc": {
301                    "start": {
302                      "line": 19,
303                      "column": 21,
304                      "program": "declare_class.ets"
305                    },
306                    "end": {
307                      "line": 19,
308                      "column": 27,
309                      "program": "declare_class.ets"
310                    }
311                  }
312                },
313                "declare": true,
314                "loc": {
315                  "start": {
316                    "line": 19,
317                    "column": 8,
318                    "program": "declare_class.ets"
319                  },
320                  "end": {
321                    "line": 19,
322                    "column": 8,
323                    "program": "declare_class.ets"
324                  }
325                }
326              },
327              "loc": {
328                "start": {
329                  "line": 19,
330                  "column": 8,
331                  "program": "declare_class.ets"
332                },
333                "end": {
334                  "line": 19,
335                  "column": 8,
336                  "program": "declare_class.ets"
337                }
338              }
339            },
340            "overloads": [],
341            "decorators": [],
342            "loc": {
343              "start": {
344                "line": 19,
345                "column": 5,
346                "program": "declare_class.ets"
347              },
348              "end": {
349                "line": 19,
350                "column": 8,
351                "program": "declare_class.ets"
352              }
353            }
354          },
355          {
356            "type": "MethodDefinition",
357            "key": {
358              "type": "Identifier",
359              "name": "bar",
360              "decorators": [],
361              "loc": {
362                "start": {
363                  "line": 20,
364                  "column": 12,
365                  "program": "declare_class.ets"
366                },
367                "end": {
368                  "line": 20,
369                  "column": 15,
370                  "program": "declare_class.ets"
371                }
372              }
373            },
374            "kind": "method",
375            "accessibility": "public",
376            "static": true,
377            "optional": false,
378            "computed": false,
379            "value": {
380              "type": "FunctionExpression",
381              "function": {
382                "type": "ScriptFunction",
383                "id": {
384                  "type": "Identifier",
385                  "name": "bar",
386                  "decorators": [],
387                  "loc": {
388                    "start": {
389                      "line": 20,
390                      "column": 12,
391                      "program": "declare_class.ets"
392                    },
393                    "end": {
394                      "line": 20,
395                      "column": 15,
396                      "program": "declare_class.ets"
397                    }
398                  }
399                },
400                "generator": false,
401                "async": false,
402                "expression": false,
403                "params": [
404                  {
405                    "type": "ETSParameterExpression",
406                    "name": {
407                      "type": "Identifier",
408                      "name": "p",
409                      "typeAnnotation": {
410                        "type": "ETSPrimitiveType",
411                        "loc": {
412                          "start": {
413                            "line": 20,
414                            "column": 19,
415                            "program": "declare_class.ets"
416                          },
417                          "end": {
418                            "line": 20,
419                            "column": 25,
420                            "program": "declare_class.ets"
421                          }
422                        }
423                      },
424                      "decorators": [],
425                      "loc": {
426                        "start": {
427                          "line": 20,
428                          "column": 16,
429                          "program": "declare_class.ets"
430                        },
431                        "end": {
432                          "line": 20,
433                          "column": 25,
434                          "program": "declare_class.ets"
435                        }
436                      }
437                    },
438                    "loc": {
439                      "start": {
440                        "line": 20,
441                        "column": 16,
442                        "program": "declare_class.ets"
443                      },
444                      "end": {
445                        "line": 20,
446                        "column": 25,
447                        "program": "declare_class.ets"
448                      }
449                    }
450                  }
451                ],
452                "returnType": {
453                  "type": "ETSPrimitiveType",
454                  "loc": {
455                    "start": {
456                      "line": 20,
457                      "column": 28,
458                      "program": "declare_class.ets"
459                    },
460                    "end": {
461                      "line": 20,
462                      "column": 32,
463                      "program": "declare_class.ets"
464                    }
465                  }
466                },
467                "declare": true,
468                "loc": {
469                  "start": {
470                    "line": 20,
471                    "column": 15,
472                    "program": "declare_class.ets"
473                  },
474                  "end": {
475                    "line": 20,
476                    "column": 15,
477                    "program": "declare_class.ets"
478                  }
479                }
480              },
481              "loc": {
482                "start": {
483                  "line": 20,
484                  "column": 15,
485                  "program": "declare_class.ets"
486                },
487                "end": {
488                  "line": 20,
489                  "column": 15,
490                  "program": "declare_class.ets"
491                }
492              }
493            },
494            "overloads": [],
495            "decorators": [],
496            "loc": {
497              "start": {
498                "line": 20,
499                "column": 5,
500                "program": "declare_class.ets"
501              },
502              "end": {
503                "line": 20,
504                "column": 15,
505                "program": "declare_class.ets"
506              }
507            }
508          },
509          {
510            "type": "MethodDefinition",
511            "key": {
512              "type": "Identifier",
513              "name": "constructor",
514              "decorators": [],
515              "loc": {
516                "start": {
517                  "line": 16,
518                  "column": 18,
519                  "program": "declare_class.ets"
520                },
521                "end": {
522                  "line": 16,
523                  "column": 18,
524                  "program": "declare_class.ets"
525                }
526              }
527            },
528            "kind": "constructor",
529            "static": false,
530            "optional": false,
531            "computed": false,
532            "value": {
533              "type": "FunctionExpression",
534              "function": {
535                "type": "ScriptFunction",
536                "id": {
537                  "type": "Identifier",
538                  "name": "constructor",
539                  "decorators": [],
540                  "loc": {
541                    "start": {
542                      "line": 16,
543                      "column": 18,
544                      "program": "declare_class.ets"
545                    },
546                    "end": {
547                      "line": 16,
548                      "column": 18,
549                      "program": "declare_class.ets"
550                    }
551                  }
552                },
553                "generator": false,
554                "async": false,
555                "expression": false,
556                "params": [],
557                "body": {
558                  "type": "BlockStatement",
559                  "statements": [],
560                  "loc": {
561                    "start": {
562                      "line": 16,
563                      "column": 18,
564                      "program": "declare_class.ets"
565                    },
566                    "end": {
567                      "line": 16,
568                      "column": 18,
569                      "program": "declare_class.ets"
570                    }
571                  }
572                },
573                "loc": {
574                  "start": {
575                    "line": 16,
576                    "column": 18,
577                    "program": "declare_class.ets"
578                  },
579                  "end": {
580                    "line": 16,
581                    "column": 18,
582                    "program": "declare_class.ets"
583                  }
584                }
585              },
586              "loc": {
587                "start": {
588                  "line": 16,
589                  "column": 18,
590                  "program": "declare_class.ets"
591                },
592                "end": {
593                  "line": 16,
594                  "column": 18,
595                  "program": "declare_class.ets"
596                }
597              }
598            },
599            "overloads": [],
600            "decorators": [],
601            "loc": {
602              "start": {
603                "line": 1,
604                "column": 1,
605                "program": null
606              },
607              "end": {
608                "line": 1,
609                "column": 1,
610                "program": null
611              }
612            }
613          }
614        ],
615        "loc": {
616          "start": {
617            "line": 16,
618            "column": 17,
619            "program": "declare_class.ets"
620          },
621          "end": {
622            "line": 22,
623            "column": 1,
624            "program": "declare_class.ets"
625          }
626        }
627      },
628      "loc": {
629        "start": {
630          "line": 16,
631          "column": 9,
632          "program": "declare_class.ets"
633        },
634        "end": {
635          "line": 22,
636          "column": 1,
637          "program": "declare_class.ets"
638        }
639      }
640    },
641    {
642      "type": "ClassDeclaration",
643      "definition": {
644        "id": {
645          "type": "Identifier",
646          "name": "ETSGLOBAL",
647          "decorators": [],
648          "loc": {
649            "start": {
650              "line": 1,
651              "column": 1,
652              "program": "declare_class.ets"
653            },
654            "end": {
655              "line": 1,
656              "column": 1,
657              "program": "declare_class.ets"
658            }
659          }
660        },
661        "superClass": null,
662        "implements": [],
663        "body": [],
664        "loc": {
665          "start": {
666            "line": 1,
667            "column": 1,
668            "program": "declare_class.ets"
669          },
670          "end": {
671            "line": 1,
672            "column": 1,
673            "program": "declare_class.ets"
674          }
675        }
676      },
677      "loc": {
678        "start": {
679          "line": 1,
680          "column": 1,
681          "program": "declare_class.ets"
682        },
683        "end": {
684          "line": 1,
685          "column": 1,
686          "program": "declare_class.ets"
687        }
688      }
689    }
690  ],
691  "loc": {
692    "start": {
693      "line": 1,
694      "column": 1,
695      "program": "declare_class.ets"
696    },
697    "end": {
698      "line": 22,
699      "column": 1,
700      "program": "declare_class.ets"
701    }
702  }
703}
704