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