• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "VariableDeclaration",
6      "declarations": [
7        {
8          "type": "VariableDeclarator",
9          "id": {
10            "type": "Identifier",
11            "name": "a",
12            "typeAnnotation": {
13              "type": "TSNumberKeyword",
14              "loc": {
15                "start": {
16                  "line": 17,
17                  "column": 8,
18                  "program": "test-ts-non-null-expression.ts"
19                },
20                "end": {
21                  "line": 17,
22                  "column": 14,
23                  "program": "test-ts-non-null-expression.ts"
24                }
25              }
26            },
27            "decorators": [],
28            "loc": {
29              "start": {
30                "line": 17,
31                "column": 5,
32                "program": "test-ts-non-null-expression.ts"
33              },
34              "end": {
35                "line": 17,
36                "column": 6,
37                "program": "test-ts-non-null-expression.ts"
38              }
39            }
40          },
41          "init": {
42            "type": "NumberLiteral",
43            "value": 1,
44            "loc": {
45              "start": {
46                "line": 17,
47                "column": 17,
48                "program": "test-ts-non-null-expression.ts"
49              },
50              "end": {
51                "line": 17,
52                "column": 18,
53                "program": "test-ts-non-null-expression.ts"
54              }
55            }
56          },
57          "loc": {
58            "start": {
59              "line": 17,
60              "column": 5,
61              "program": "test-ts-non-null-expression.ts"
62            },
63            "end": {
64              "line": 17,
65              "column": 18,
66              "program": "test-ts-non-null-expression.ts"
67            }
68          }
69        }
70      ],
71      "kind": "var",
72      "loc": {
73        "start": {
74          "line": 17,
75          "column": 1,
76          "program": "test-ts-non-null-expression.ts"
77        },
78        "end": {
79          "line": 17,
80          "column": 19,
81          "program": "test-ts-non-null-expression.ts"
82        }
83      }
84    },
85    {
86      "type": "ExpressionStatement",
87      "expression": {
88        "type": "UpdateExpression",
89        "operator": "++",
90        "prefix": false,
91        "argument": {
92          "type": "TSNonNullExpression",
93          "expression": {
94            "type": "Identifier",
95            "name": "a",
96            "decorators": [],
97            "loc": {
98              "start": {
99                "line": 18,
100                "column": 1,
101                "program": "test-ts-non-null-expression.ts"
102              },
103              "end": {
104                "line": 18,
105                "column": 2,
106                "program": "test-ts-non-null-expression.ts"
107              }
108            }
109          },
110          "loc": {
111            "start": {
112              "line": 18,
113              "column": 1,
114              "program": "test-ts-non-null-expression.ts"
115            },
116            "end": {
117              "line": 18,
118              "column": 3,
119              "program": "test-ts-non-null-expression.ts"
120            }
121          }
122        },
123        "loc": {
124          "start": {
125            "line": 18,
126            "column": 1,
127            "program": "test-ts-non-null-expression.ts"
128          },
129          "end": {
130            "line": 18,
131            "column": 5,
132            "program": "test-ts-non-null-expression.ts"
133          }
134        }
135      },
136      "loc": {
137        "start": {
138          "line": 18,
139          "column": 1,
140          "program": "test-ts-non-null-expression.ts"
141        },
142        "end": {
143          "line": 18,
144          "column": 6,
145          "program": "test-ts-non-null-expression.ts"
146        }
147      }
148    },
149    {
150      "type": "ExpressionStatement",
151      "expression": {
152        "type": "UpdateExpression",
153        "operator": "--",
154        "prefix": false,
155        "argument": {
156          "type": "TSNonNullExpression",
157          "expression": {
158            "type": "Identifier",
159            "name": "a",
160            "decorators": [],
161            "loc": {
162              "start": {
163                "line": 19,
164                "column": 1,
165                "program": "test-ts-non-null-expression.ts"
166              },
167              "end": {
168                "line": 19,
169                "column": 2,
170                "program": "test-ts-non-null-expression.ts"
171              }
172            }
173          },
174          "loc": {
175            "start": {
176              "line": 19,
177              "column": 1,
178              "program": "test-ts-non-null-expression.ts"
179            },
180            "end": {
181              "line": 19,
182              "column": 3,
183              "program": "test-ts-non-null-expression.ts"
184            }
185          }
186        },
187        "loc": {
188          "start": {
189            "line": 19,
190            "column": 1,
191            "program": "test-ts-non-null-expression.ts"
192          },
193          "end": {
194            "line": 19,
195            "column": 5,
196            "program": "test-ts-non-null-expression.ts"
197          }
198        }
199      },
200      "loc": {
201        "start": {
202          "line": 19,
203          "column": 1,
204          "program": "test-ts-non-null-expression.ts"
205        },
206        "end": {
207          "line": 19,
208          "column": 6,
209          "program": "test-ts-non-null-expression.ts"
210        }
211      }
212    },
213    {
214      "type": "ExpressionStatement",
215      "expression": {
216        "type": "UpdateExpression",
217        "operator": "--",
218        "prefix": true,
219        "argument": {
220          "type": "TSNonNullExpression",
221          "expression": {
222            "type": "Identifier",
223            "name": "a",
224            "decorators": [],
225            "loc": {
226              "start": {
227                "line": 20,
228                "column": 3,
229                "program": "test-ts-non-null-expression.ts"
230              },
231              "end": {
232                "line": 20,
233                "column": 4,
234                "program": "test-ts-non-null-expression.ts"
235              }
236            }
237          },
238          "loc": {
239            "start": {
240              "line": 20,
241              "column": 3,
242              "program": "test-ts-non-null-expression.ts"
243            },
244            "end": {
245              "line": 20,
246              "column": 5,
247              "program": "test-ts-non-null-expression.ts"
248            }
249          }
250        },
251        "loc": {
252          "start": {
253            "line": 20,
254            "column": 1,
255            "program": "test-ts-non-null-expression.ts"
256          },
257          "end": {
258            "line": 20,
259            "column": 5,
260            "program": "test-ts-non-null-expression.ts"
261          }
262        }
263      },
264      "loc": {
265        "start": {
266          "line": 20,
267          "column": 1,
268          "program": "test-ts-non-null-expression.ts"
269        },
270        "end": {
271          "line": 20,
272          "column": 6,
273          "program": "test-ts-non-null-expression.ts"
274        }
275      }
276    },
277    {
278      "type": "ExpressionStatement",
279      "expression": {
280        "type": "UpdateExpression",
281        "operator": "++",
282        "prefix": true,
283        "argument": {
284          "type": "TSNonNullExpression",
285          "expression": {
286            "type": "Identifier",
287            "name": "a",
288            "decorators": [],
289            "loc": {
290              "start": {
291                "line": 21,
292                "column": 3,
293                "program": "test-ts-non-null-expression.ts"
294              },
295              "end": {
296                "line": 21,
297                "column": 4,
298                "program": "test-ts-non-null-expression.ts"
299              }
300            }
301          },
302          "loc": {
303            "start": {
304              "line": 21,
305              "column": 3,
306              "program": "test-ts-non-null-expression.ts"
307            },
308            "end": {
309              "line": 21,
310              "column": 5,
311              "program": "test-ts-non-null-expression.ts"
312            }
313          }
314        },
315        "loc": {
316          "start": {
317            "line": 21,
318            "column": 1,
319            "program": "test-ts-non-null-expression.ts"
320          },
321          "end": {
322            "line": 21,
323            "column": 5,
324            "program": "test-ts-non-null-expression.ts"
325          }
326        }
327      },
328      "loc": {
329        "start": {
330          "line": 21,
331          "column": 1,
332          "program": "test-ts-non-null-expression.ts"
333        },
334        "end": {
335          "line": 21,
336          "column": 6,
337          "program": "test-ts-non-null-expression.ts"
338        }
339      }
340    },
341    {
342      "type": "ExpressionStatement",
343      "expression": {
344        "type": "AssignmentExpression",
345        "operator": "=",
346        "left": {
347          "type": "Identifier",
348          "name": "a",
349          "decorators": [],
350          "loc": {
351            "start": {
352              "line": 22,
353              "column": 1,
354              "program": "test-ts-non-null-expression.ts"
355            },
356            "end": {
357              "line": 22,
358              "column": 2,
359              "program": "test-ts-non-null-expression.ts"
360            }
361          }
362        },
363        "right": {
364          "type": "BinaryExpression",
365          "operator": "+",
366          "left": {
367            "type": "TSNonNullExpression",
368            "expression": {
369              "type": "Identifier",
370              "name": "a",
371              "decorators": [],
372              "loc": {
373                "start": {
374                  "line": 22,
375                  "column": 5,
376                  "program": "test-ts-non-null-expression.ts"
377                },
378                "end": {
379                  "line": 22,
380                  "column": 6,
381                  "program": "test-ts-non-null-expression.ts"
382                }
383              }
384            },
385            "loc": {
386              "start": {
387                "line": 22,
388                "column": 5,
389                "program": "test-ts-non-null-expression.ts"
390              },
391              "end": {
392                "line": 22,
393                "column": 7,
394                "program": "test-ts-non-null-expression.ts"
395              }
396            }
397          },
398          "right": {
399            "type": "Identifier",
400            "name": "a",
401            "decorators": [],
402            "loc": {
403              "start": {
404                "line": 22,
405                "column": 10,
406                "program": "test-ts-non-null-expression.ts"
407              },
408              "end": {
409                "line": 22,
410                "column": 11,
411                "program": "test-ts-non-null-expression.ts"
412              }
413            }
414          },
415          "loc": {
416            "start": {
417              "line": 22,
418              "column": 5,
419              "program": "test-ts-non-null-expression.ts"
420            },
421            "end": {
422              "line": 22,
423              "column": 11,
424              "program": "test-ts-non-null-expression.ts"
425            }
426          }
427        },
428        "loc": {
429          "start": {
430            "line": 22,
431            "column": 1,
432            "program": "test-ts-non-null-expression.ts"
433          },
434          "end": {
435            "line": 22,
436            "column": 11,
437            "program": "test-ts-non-null-expression.ts"
438          }
439        }
440      },
441      "loc": {
442        "start": {
443          "line": 22,
444          "column": 1,
445          "program": "test-ts-non-null-expression.ts"
446        },
447        "end": {
448          "line": 22,
449          "column": 12,
450          "program": "test-ts-non-null-expression.ts"
451        }
452      }
453    }
454  ],
455  "loc": {
456    "start": {
457      "line": 1,
458      "column": 1,
459      "program": "test-ts-non-null-expression.ts"
460    },
461    "end": {
462      "line": 22,
463      "column": 12,
464      "program": "test-ts-non-null-expression.ts"
465    }
466  }
467}
468