1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "Foo",
10          "loc": {
11            "start": {
12              "line": 17,
13              "column": 7
14            },
15            "end": {
16              "line": 17,
17              "column": 10
18            }
19          }
20        },
21        "superClass": null,
22        "implements": [],
23        "constructor": {
24          "type": "MethodDefinition",
25          "key": {
26            "type": "Identifier",
27            "name": "constructor",
28            "loc": {
29              "start": {
30                "line": 1,
31                "column": 1
32              },
33              "end": {
34                "line": 1,
35                "column": 1
36              }
37            }
38          },
39          "kind": "constructor",
40          "static": false,
41          "optional": false,
42          "computed": false,
43          "value": {
44            "type": "FunctionExpression",
45            "function": {
46              "type": "ScriptFunction",
47              "id": null,
48              "generator": false,
49              "async": false,
50              "expression": false,
51              "params": [],
52              "body": {
53                "type": "BlockStatement",
54                "statements": [],
55                "loc": {
56                  "start": {
57                    "line": 1,
58                    "column": 1
59                  },
60                  "end": {
61                    "line": 1,
62                    "column": 1
63                  }
64                }
65              },
66              "loc": {
67                "start": {
68                  "line": 1,
69                  "column": 1
70                },
71                "end": {
72                  "line": 1,
73                  "column": 1
74                }
75              }
76            },
77            "loc": {
78              "start": {
79                "line": 1,
80                "column": 1
81              },
82              "end": {
83                "line": 1,
84                "column": 1
85              }
86            }
87          },
88          "overloads": [],
89          "decorators": [],
90          "annotations": [],
91          "loc": {
92            "start": {
93              "line": 17,
94              "column": 1
95            },
96            "end": {
97              "line": 19,
98              "column": 2
99            }
100          }
101        },
102        "body": [
103          {
104            "type": "MethodDefinition",
105            "key": {
106              "type": "Identifier",
107              "name": "bar",
108              "loc": {
109                "start": {
110                  "line": 18,
111                  "column": 5
112                },
113                "end": {
114                  "line": 18,
115                  "column": 8
116                }
117              }
118            },
119            "kind": "method",
120            "static": false,
121            "optional": false,
122            "computed": false,
123            "value": {
124              "type": "FunctionExpression",
125              "function": {
126                "type": "ScriptFunction",
127                "id": null,
128                "generator": false,
129                "async": false,
130                "expression": false,
131                "params": [],
132                "loc": {
133                  "start": {
134                    "line": 18,
135                    "column": 8
136                  },
137                  "end": {
138                    "line": 18,
139                    "column": 11
140                  }
141                }
142              },
143              "loc": {
144                "start": {
145                  "line": 18,
146                  "column": 8
147                },
148                "end": {
149                  "line": 18,
150                  "column": 11
151                }
152              }
153            },
154            "overloads": [],
155            "decorators": [],
156            "annotations": [],
157            "loc": {
158              "start": {
159                "line": 18,
160                "column": 5
161              },
162              "end": {
163                "line": 18,
164                "column": 11
165              }
166            }
167          }
168        ],
169        "indexSignatures": [],
170        "loc": {
171          "start": {
172            "line": 17,
173            "column": 11
174          },
175          "end": {
176            "line": 19,
177            "column": 2
178          }
179        }
180      },
181      "decorators": [],
182      "isAnnotationDeclaration": false,
183      "loc": {
184        "start": {
185          "line": 17,
186          "column": 1
187        },
188        "end": {
189          "line": 19,
190          "column": 2
191        }
192      }
193    }
194  ],
195  "loc": {
196    "start": {
197      "line": 1,
198      "column": 1
199    },
200    "end": {
201      "line": 19,
202      "column": 2
203    }
204  }
205}
206