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": 16 14 }, 15 "end": { 16 "line": 17, 17 "column": 19 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": 10 95 }, 96 "end": { 97 "line": 20, 98 "column": 2 99 } 100 } 101 }, 102 "body": [ 103 { 104 "type": "MethodDefinition", 105 "key": { 106 "type": "Identifier", 107 "name": "a", 108 "loc": { 109 "start": { 110 "line": 18, 111 "column": 5 112 }, 113 "end": { 114 "line": 18, 115 "column": 6 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": 6 136 }, 137 "end": { 138 "line": 18, 139 "column": 9 140 } 141 } 142 }, 143 "loc": { 144 "start": { 145 "line": 18, 146 "column": 6 147 }, 148 "end": { 149 "line": 18, 150 "column": 9 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": 9 165 } 166 } 167 }, 168 { 169 "type": "MethodDefinition", 170 "key": { 171 "type": "Identifier", 172 "name": "a", 173 "loc": { 174 "start": { 175 "line": 19, 176 "column": 14 177 }, 178 "end": { 179 "line": 19, 180 "column": 15 181 } 182 } 183 }, 184 "kind": "method", 185 "abstract": true, 186 "static": false, 187 "optional": false, 188 "computed": false, 189 "value": { 190 "type": "FunctionExpression", 191 "function": { 192 "type": "ScriptFunction", 193 "id": null, 194 "generator": false, 195 "async": false, 196 "expression": false, 197 "params": [], 198 "loc": { 199 "start": { 200 "line": 19, 201 "column": 15 202 }, 203 "end": { 204 "line": 19, 205 "column": 18 206 } 207 } 208 }, 209 "loc": { 210 "start": { 211 "line": 19, 212 "column": 15 213 }, 214 "end": { 215 "line": 19, 216 "column": 18 217 } 218 } 219 }, 220 "overloads": [], 221 "decorators": [], 222 "annotations": [], 223 "loc": { 224 "start": { 225 "line": 19, 226 "column": 5 227 }, 228 "end": { 229 "line": 19, 230 "column": 18 231 } 232 } 233 } 234 ], 235 "indexSignatures": [], 236 "loc": { 237 "start": { 238 "line": 17, 239 "column": 20 240 }, 241 "end": { 242 "line": 20, 243 "column": 2 244 } 245 } 246 }, 247 "decorators": [], 248 "isAnnotationDeclaration": false, 249 "loc": { 250 "start": { 251 "line": 17, 252 "column": 10 253 }, 254 "end": { 255 "line": 20, 256 "column": 2 257 } 258 } 259 } 260 ], 261 "loc": { 262 "start": { 263 "line": 1, 264 "column": 1 265 }, 266 "end": { 267 "line": 20, 268 "column": 2 269 } 270 } 271} 272