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