mirror of
https://github.com/tc39/test262.git
synced 2025-07-28 16:34:27 +02:00
Generate tests
This commit is contained in:
parent
2e82d31eac
commit
8d4c5f502f
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await [];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,82 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await function() {};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,77 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await foo;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await '';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,72 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await { function() {} };
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await /1/;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await ``;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/block.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in a block.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
await this;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await []) {};
|
@ -0,0 +1,74 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await function() {}) {};
|
@ -0,0 +1,69 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await foo) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await 1) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await '') {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await await await await await await await await await await await await await await await 'await') {};
|
@ -0,0 +1,65 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await new Promise(function(res, rej) { res(1); })) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await null) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await { function() {} }) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await /1/) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await ``) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/export-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in export ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export class C extends fn(await this) {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await [];
|
@ -0,0 +1,70 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await function() {};
|
@ -0,0 +1,65 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
export default await foo;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await 1;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await '';
|
@ -0,0 +1,60 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await await await await await await await await await await await await await await await 'await';
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await new Promise(function(res, rej) { res(1); });
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await null;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await { function() {} };
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await /1/;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await ``;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/export-dflt-assign-expr.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in export default AssignmentExpression)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default [lookahead ∉ { function, async [no LineTerminator here] function, class }] AssignmentExpression [+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export default await this;
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await []) {};
|
@ -0,0 +1,74 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await function() {}) {};
|
@ -0,0 +1,69 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await foo) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await 1) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await '') {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await await await await await await await await await await await await await await await 'await') {};
|
@ -0,0 +1,65 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await new Promise(function(res, rej) { res(1); })) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await null) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await { function() {} }) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await /1/) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await ``) {};
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/export-dflt-class-decl.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in export default ClassDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, class]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
ClassDeclaration[Yield, Await, Default]:
|
||||
classBindingIdentifier[?Yield, ?Await] ClassTail[?Yield, ?Await]
|
||||
[+Default] class ClassTail[?Yield, ?Await]
|
||||
|
||||
ClassTail[Yield, Await]:
|
||||
ClassHeritage[?Yield, ?Await]_opt { ClassBody[?Yield, ?Await]_opt }
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
function fn() {
|
||||
return function() {};
|
||||
}
|
||||
// extends CallExpression with arguments
|
||||
export default class extends fn(await this) {};
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await [];
|
||||
export const y = await [];
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await function() {};
|
||||
export const y = await function() {};
|
@ -0,0 +1,62 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
export let x = await foo;
|
||||
export const y = await foo;
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await 1;
|
||||
export const y = await 1;
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await '';
|
||||
export const y = await '';
|
@ -0,0 +1,57 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await await await await await await await await await await await await await await await 'await';
|
||||
export const y = await await await await await await await await await await await await await await await 'await';
|
@ -0,0 +1,58 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await new Promise(function(res, rej) { res(1); });
|
||||
export const y = await new Promise(function(res, rej) { res(1); });
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await null;
|
||||
export const y = await null;
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await { function() {} };
|
||||
export const y = await { function() {} };
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await /1/;
|
||||
export const y = await /1/;
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await ``;
|
||||
export const y = await ``;
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/export-lex-declaration.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in export LexicalDeclaration)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
Declaration[Yield, Await]:
|
||||
HoistableDeclaration[?Yield, ?Await, ~Default]
|
||||
ClassDeclaration[?Yield, ?Await, ~Default]
|
||||
LexicalDeclaration[+In, ?Yield, ?Await]
|
||||
|
||||
LexicalDeclaration[In, Yield, Await]:
|
||||
LetOrConstBindingList[?In, ?Yield, ?Await];
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export let x = await this;
|
||||
export const y = await this;
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await [];
|
||||
export var { x = await [] } = {};
|
@ -0,0 +1,70 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await function() {};
|
||||
export var { x = await function() {} } = {};
|
@ -0,0 +1,65 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
export var name1 = await foo;
|
||||
export var { x = await foo } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await 1;
|
||||
export var { x = await 1 } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await '';
|
||||
export var { x = await '' } = {};
|
@ -0,0 +1,60 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await await await await await await await await await await await await await await await 'await';
|
||||
export var { x = await await await await await await await await await await await await await await await 'await' } = {};
|
@ -0,0 +1,61 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await new Promise(function(res, rej) { res(1); });
|
||||
export var { x = await new Promise(function(res, rej) { res(1); }) } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await null;
|
||||
export var { x = await null } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await { function() {} };
|
||||
export var { x = await { function() {} } } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await /1/;
|
||||
export var { x = await /1/ } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await ``;
|
||||
export var { x = await `` } = {};
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/export-var-init.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in export var BindingIdentifier Await_initializer)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
ExportDeclaration:
|
||||
export * FromClause ;
|
||||
export ExportClause FromClause ;
|
||||
export ExportClause ;
|
||||
export VariableStatement[~Yield, +Await]
|
||||
export Declaration[~Yield, +Await]
|
||||
export defaultHoistableDeclaration[~Yield, +Await, +Default]
|
||||
export defaultClassDeclaration[~Yield, +Await, +Default]
|
||||
export default[lookahead ∉ { function, async [no LineTerminator here] function, class }]AssignmentExpression[+In, ~Yield, ~Await];
|
||||
|
||||
VariableStatement[Yield, Await]:
|
||||
var VariableDeclarationList[+In, ?Yield, ?Await];
|
||||
|
||||
VariableDeclarationList[In, Yield, Await]:
|
||||
VariableDeclaration[?In, ?Yield, ?Await]
|
||||
VariableDeclarationList[?In, ?Yield, ?Await] , VariableDeclaration[?In, ?Yield, ?Await]
|
||||
|
||||
VariableDeclaration[In, Yield, Await]:
|
||||
BindingIdentifier[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]opt
|
||||
BindingPattern[?Yield, ?Await] Initializer[?In, ?Yield, ?Await]
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
export var name1 = await this;
|
||||
export var { x = await this } = {};
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
@ -0,0 +1,68 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await '']) {
|
||||
await '';
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await '']) {
|
||||
await '';
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await '']) {
|
||||
await '';
|
||||
break;
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await await await await await await await await await await await await await await await 'await']) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await await await await await await await await await await await await await await await 'await']) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await await await await await await await await await await await await await await await 'await']) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
@ -0,0 +1,64 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await new Promise(function(res, rej) { res(1); })]) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await new Promise(function(res, rej) { res(1); })]) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await new Promise(function(res, rej) { res(1); })]) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await null]) {
|
||||
await null;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await null]) {
|
||||
await null;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await null]) {
|
||||
await null;
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await { function() {} }]) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await { function() {} }]) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await { function() {} }]) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await /1/]) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await /1/]) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await /1/]) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await ``]) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await ``]) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await ``]) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/for-await-expr.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in for await statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await, async-iteration]
|
||||
flags: [generated, module]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
[+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
[+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// [+Await]for await ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (binding of [await this]) {
|
||||
await this;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (var binding of [await this]) {
|
||||
await this;
|
||||
break;
|
||||
}
|
||||
|
||||
// [+Await]for await ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for await (let binding of [await this]) {
|
||||
await this;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await [] ; await []; await [] ) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await []; await [] ) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await []; await [] ) {
|
||||
await [];
|
||||
break;
|
||||
}
|
@ -0,0 +1,79 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await function() {} ; await function() {}; await function() {} ) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await function() {}; await function() {} ) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await function() {}; await function() {} ) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
@ -0,0 +1,74 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await foo ; await foo; await foo ) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await foo; await foo ) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await foo; await foo ) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await 1 ; await 1; await 1 ) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await 1; await 1 ) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await 1; await 1 ) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-string.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await '' ; await ''; await '' ) {
|
||||
await '';
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await ''; await '' ) {
|
||||
await '';
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await ''; await '' ) {
|
||||
await '';
|
||||
break;
|
||||
}
|
@ -0,0 +1,69 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-nested.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: Nested AwaitExpressions (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
TryStatement[Yield, Await, Return]:
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
|
||||
|
||||
...
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await await await await await await await await await await await await await await await 'await' ; await await await await await await await await await await await await await await await 'await'; await await await await await await await await await await await await await await await 'await' ) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await await await await await await await await await await await await await await await 'await'; await await await await await await await await await await await await await await await 'await' ) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await await await await await await await await await await await await await await await 'await'; await await await await await await await await await await await await await await await 'await' ) {
|
||||
await await await await await await await await await await await await await await await 'await';
|
||||
break;
|
||||
}
|
@ -0,0 +1,70 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-new-expr.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression new MemberExpression (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
LeftHandSideExpression[Yield, Await]:
|
||||
NewExpression[?Yield, ?Await]
|
||||
CallExpression[?Yield, ?Await]
|
||||
|
||||
NewExpression[Yield, Await]:
|
||||
MemberExpression[?Yield, ?Await]
|
||||
new NewExpression[?Yield, ?Await]
|
||||
|
||||
MemberExpression[Yield, Await]:
|
||||
...
|
||||
new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await new Promise(function(res, rej) { res(1); }) ; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
|
||||
await new Promise(function(res, rej) { res(1); });
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-null.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NullLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await null ; await null; await null ) {
|
||||
await null;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await null; await null ) {
|
||||
await null;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await null; await null ) {
|
||||
await null;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-obj-literal.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ObjectLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await { function() {} } ; await { function() {} }; await { function() {} } ) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await { function() {} }; await { function() {} } ) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await { function() {} }; await { function() {} } ) {
|
||||
await { function() {} };
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-regexp.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression RegularExpressionLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await /1/ ; await /1/; await /1/ ) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await /1/; await /1/ ) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await /1/; await /1/ ) {
|
||||
await /1/;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-template-literal.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression TemplateLiteral (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await `` ; await ``; await `` ) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await ``; await `` ) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await ``; await `` ) {
|
||||
await ``;
|
||||
break;
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-this.case
|
||||
// - src/top-level-await/syntax/for-expr.template
|
||||
/*---
|
||||
description: AwaitExpression this (Valid syntax for top level await in for statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
// for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( await this ; await this; await this ) {
|
||||
await this;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var binding; await this; await this ) {
|
||||
await this;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( let binding; await this; await this ) {
|
||||
await this;
|
||||
break;
|
||||
}
|
@ -0,0 +1,75 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-array-literal.case
|
||||
// - src/top-level-await/syntax/for-in-expr.template
|
||||
/*---
|
||||
description: AwaitExpression ArrayLiteral (Valid syntax for top level await in for-in statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let []Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (binding in [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (var binding in [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (let binding in [await []]) {
|
||||
await [];
|
||||
break;
|
||||
}
|
@ -0,0 +1,81 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-func-expression.case
|
||||
// - src/top-level-await/syntax/for-in-expr.template
|
||||
/*---
|
||||
description: AwaitExpression StringLiteral (Valid syntax for top level await in for-in statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let []Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
ExpressionStatement[Yield, Await]:
|
||||
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||||
Expression[+In, ?Yield, ?Await];
|
||||
|
||||
...
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (binding in [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (var binding in [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (let binding in [await function() {}]) {
|
||||
await function() {};
|
||||
break;
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-identifier.case
|
||||
// - src/top-level-await/syntax/for-in-expr.template
|
||||
/*---
|
||||
description: AwaitExpression IdentifierReference (Valid syntax for top level await in for-in statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let []Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
var foo = 1;
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (binding in [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (var binding in [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (let binding in [await foo]) {
|
||||
await foo;
|
||||
break;
|
||||
}
|
@ -0,0 +1,75 @@
|
||||
// This file was procedurally generated from the following sources:
|
||||
// - src/top-level-await/await-expr-literal-number.case
|
||||
// - src/top-level-await/syntax/for-in-expr.template
|
||||
/*---
|
||||
description: AwaitExpression NumberLiteral (Valid syntax for top level await in for-in statements.)
|
||||
esid: prod-AwaitExpression
|
||||
features: [top-level-await]
|
||||
flags: [generated]
|
||||
info: |
|
||||
ModuleItem:
|
||||
StatementListItem[~Yield, +Await, ~Return]
|
||||
|
||||
...
|
||||
|
||||
IterationStatement[Yield, Await, Return]:
|
||||
...
|
||||
for ( [ lookahead ≠ let []Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
...
|
||||
|
||||
...
|
||||
|
||||
UnaryExpression[Yield, Await]
|
||||
[+Await]AwaitExpression[?Yield]
|
||||
|
||||
AwaitExpression[Yield]:
|
||||
await UnaryExpression[?Yield, +Await]
|
||||
|
||||
...
|
||||
|
||||
|
||||
PrimaryExpression[Yield, Await]:
|
||||
this
|
||||
IdentifierReference[?Yield, ?Await]
|
||||
Literal
|
||||
ArrayLiteral[?Yield, ?Await]
|
||||
ObjectLiteral[?Yield, ?Await]
|
||||
FunctionExpression
|
||||
ClassExpression[?Yield, ?Await]
|
||||
GeneratorExpression
|
||||
AsyncFunctionExpression
|
||||
AsyncGeneratorExpression
|
||||
RegularExpressionLiteral
|
||||
TemplateLiteral[?Yield, ?Await, ~Tagged]
|
||||
CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
var binding;
|
||||
|
||||
// for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (binding in [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (var binding in [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
||||
|
||||
// for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
|
||||
for (let binding in [await 1]) {
|
||||
await 1;
|
||||
break;
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user