Huáng Jùnliàng 28d7442aae Parse async do expressions (#13043)
* parse async do expressions

* add test cases

* update test fixtures

* chore: add syntax-async-do-expressions

* generater support

* fix: do not transform async do expressions

* chore: add asyncDoExpressions to missing plugin helpers

* update ast types

* add more test cases

* throw when asyncDoExpressions is enabled but not doExpressions

* avoid add parentheses for async do expressions

* address review comments

* chore: update parser typings
2021-04-28 18:26:01 +02:00

46 lines
1.6 KiB
JSON

{
"type": "File",
"start":0,"end":23,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}},
"program": {
"type": "Program",
"start":0,"end":23,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}},
"sourceType": "script",
"interpreter": null,
"body": [
{
"type": "ExpressionStatement",
"start":0,"end":23,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}},
"expression": {
"type": "DoExpression",
"start":6,"end":23,"loc":{"start":{"line":1,"column":6},"end":{"line":3,"column":1}},
"async": true,
"body": {
"type": "BlockStatement",
"start":9,"end":23,"loc":{"start":{"line":1,"column":9},"end":{"line":3,"column":1}},
"body": [
{
"type": "ExpressionStatement",
"start":13,"end":21,"loc":{"start":{"line":2,"column":2},"end":{"line":2,"column":10}},
"expression": {
"type": "AwaitExpression",
"start":13,"end":21,"loc":{"start":{"line":2,"column":2},"end":{"line":2,"column":10}},
"argument": {
"type": "NumericLiteral",
"start":19,"end":21,"loc":{"start":{"line":2,"column":8},"end":{"line":2,"column":10}},
"extra": {
"rawValue": 42,
"raw": "42"
},
"value": 42
}
}
}
],
"directives": []
}
}
}
],
"directives": []
}
}