1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "Foo", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 17, 14 "column": 7, 15 "program": "eval_lexically_unbound.js" 16 }, 17 "end": { 18 "line": 17, 19 "column": 10, 20 "program": "eval_lexically_unbound.js" 21 } 22 } 23 }, 24 "superClass": null, 25 "implements": [], 26 "constructor": { 27 "type": "MethodDefinition", 28 "key": { 29 "type": "Identifier", 30 "name": "constructor", 31 "decorators": [], 32 "loc": { 33 "start": { 34 "line": 19, 35 "column": 3, 36 "program": "eval_lexically_unbound.js" 37 }, 38 "end": { 39 "line": 19, 40 "column": 14, 41 "program": "eval_lexically_unbound.js" 42 } 43 } 44 }, 45 "kind": "constructor", 46 "static": false, 47 "optional": false, 48 "computed": false, 49 "value": { 50 "type": "FunctionExpression", 51 "function": { 52 "type": "ScriptFunction", 53 "id": null, 54 "generator": false, 55 "async": false, 56 "expression": false, 57 "params": [], 58 "body": { 59 "type": "BlockStatement", 60 "statements": [ 61 { 62 "type": "ExpressionStatement", 63 "expression": { 64 "type": "AssignmentExpression", 65 "operator": "=", 66 "left": { 67 "type": "MemberExpression", 68 "object": { 69 "type": "ThisExpression", 70 "loc": { 71 "start": { 72 "line": 20, 73 "column": 5, 74 "program": "eval_lexically_unbound.js" 75 }, 76 "end": { 77 "line": 20, 78 "column": 9, 79 "program": "eval_lexically_unbound.js" 80 } 81 } 82 }, 83 "property": { 84 "type": "PrivateIdentifier", 85 "name": "bar", 86 "decorators": [], 87 "loc": { 88 "start": { 89 "line": 20, 90 "column": 10, 91 "program": "eval_lexically_unbound.js" 92 }, 93 "end": { 94 "line": 20, 95 "column": 14, 96 "program": "eval_lexically_unbound.js" 97 } 98 } 99 }, 100 "computed": false, 101 "optional": false, 102 "loc": { 103 "start": { 104 "line": 20, 105 "column": 5, 106 "program": "eval_lexically_unbound.js" 107 }, 108 "end": { 109 "line": 20, 110 "column": 14, 111 "program": "eval_lexically_unbound.js" 112 } 113 } 114 }, 115 "right": { 116 "type": "NumberLiteral", 117 "value": 0, 118 "loc": { 119 "start": { 120 "line": 20, 121 "column": 17, 122 "program": "eval_lexically_unbound.js" 123 }, 124 "end": { 125 "line": 20, 126 "column": 18, 127 "program": "eval_lexically_unbound.js" 128 } 129 } 130 }, 131 "loc": { 132 "start": { 133 "line": 20, 134 "column": 5, 135 "program": "eval_lexically_unbound.js" 136 }, 137 "end": { 138 "line": 20, 139 "column": 18, 140 "program": "eval_lexically_unbound.js" 141 } 142 } 143 }, 144 "loc": { 145 "start": { 146 "line": 20, 147 "column": 5, 148 "program": "eval_lexically_unbound.js" 149 }, 150 "end": { 151 "line": 20, 152 "column": 19, 153 "program": "eval_lexically_unbound.js" 154 } 155 } 156 } 157 ], 158 "loc": { 159 "start": { 160 "line": 19, 161 "column": 17, 162 "program": "eval_lexically_unbound.js" 163 }, 164 "end": { 165 "line": 21, 166 "column": 4, 167 "program": "eval_lexically_unbound.js" 168 } 169 } 170 }, 171 "loc": { 172 "start": { 173 "line": 19, 174 "column": 14, 175 "program": "eval_lexically_unbound.js" 176 }, 177 "end": { 178 "line": 21, 179 "column": 4, 180 "program": "eval_lexically_unbound.js" 181 } 182 } 183 }, 184 "loc": { 185 "start": { 186 "line": 19, 187 "column": 14, 188 "program": "eval_lexically_unbound.js" 189 }, 190 "end": { 191 "line": 21, 192 "column": 4, 193 "program": "eval_lexically_unbound.js" 194 } 195 } 196 }, 197 "overloads": [], 198 "decorators": [], 199 "loc": { 200 "start": { 201 "line": 19, 202 "column": 3, 203 "program": "eval_lexically_unbound.js" 204 }, 205 "end": { 206 "line": 21, 207 "column": 4, 208 "program": "eval_lexically_unbound.js" 209 } 210 } 211 }, 212 "body": [ 213 { 214 "type": "ClassProperty", 215 "key": { 216 "type": "PrivateIdentifier", 217 "name": "bar", 218 "decorators": [], 219 "loc": { 220 "start": { 221 "line": 18, 222 "column": 4, 223 "program": "eval_lexically_unbound.js" 224 }, 225 "end": { 226 "line": 18, 227 "column": 7, 228 "program": "eval_lexically_unbound.js" 229 } 230 } 231 }, 232 "value": { 233 "type": "Identifier", 234 "name": "undefined", 235 "decorators": [], 236 "loc": { 237 "start": { 238 "line": 18, 239 "column": 10, 240 "program": "eval_lexically_unbound.js" 241 }, 242 "end": { 243 "line": 18, 244 "column": 19, 245 "program": "eval_lexically_unbound.js" 246 } 247 } 248 }, 249 "static": false, 250 "readonly": false, 251 "declare": false, 252 "optional": false, 253 "computed": false, 254 "definite": false, 255 "decorators": [], 256 "loc": { 257 "start": { 258 "line": 18, 259 "column": 3, 260 "program": "eval_lexically_unbound.js" 261 }, 262 "end": { 263 "line": 18, 264 "column": 19, 265 "program": "eval_lexically_unbound.js" 266 } 267 } 268 } 269 ], 270 "loc": { 271 "start": { 272 "line": 17, 273 "column": 11, 274 "program": "eval_lexically_unbound.js" 275 }, 276 "end": { 277 "line": 24, 278 "column": 5, 279 "program": "eval_lexically_unbound.js" 280 } 281 } 282 }, 283 "loc": { 284 "start": { 285 "line": 17, 286 "column": 1, 287 "program": "eval_lexically_unbound.js" 288 }, 289 "end": { 290 "line": 24, 291 "column": 5, 292 "program": "eval_lexically_unbound.js" 293 } 294 } 295 }, 296 { 297 "type": "ExpressionStatement", 298 "expression": { 299 "type": "CallExpression", 300 "callee": { 301 "type": "Identifier", 302 "name": "eval", 303 "decorators": [], 304 "loc": { 305 "start": { 306 "line": 24, 307 "column": 1, 308 "program": "eval_lexically_unbound.js" 309 }, 310 "end": { 311 "line": 24, 312 "column": 5, 313 "program": "eval_lexically_unbound.js" 314 } 315 } 316 }, 317 "arguments": [], 318 "optional": false, 319 "loc": { 320 "start": { 321 "line": 24, 322 "column": 1, 323 "program": "eval_lexically_unbound.js" 324 }, 325 "end": { 326 "line": 24, 327 "column": 7, 328 "program": "eval_lexically_unbound.js" 329 } 330 } 331 }, 332 "loc": { 333 "start": { 334 "line": 24, 335 "column": 1, 336 "program": "eval_lexically_unbound.js" 337 }, 338 "end": { 339 "line": 24, 340 "column": 8, 341 "program": "eval_lexically_unbound.js" 342 } 343 } 344 } 345 ], 346 "loc": { 347 "start": { 348 "line": 1, 349 "column": 1, 350 "program": "eval_lexically_unbound.js" 351 }, 352 "end": { 353 "line": 25, 354 "column": 1, 355 "program": "eval_lexically_unbound.js" 356 } 357 } 358} 359