-
-
- OptionalExpression[Yield, Await]
-
- MemberExpression[Yield, Await] (member-expression.js)
-
- PrimaryExpression[?Yield, ?Await]
-
- this
-
- IdentifierReference[?Yield, ?Await]
-
- Identifier
-
- Literal
-
- ArrayLiteral[?Yield, ?Await]
-
- ObjectLiteral[?Yield, ?Await]
-
- FunctionExpression
-
- ClassExpression[?Yield, ?Await]
-
- GeneratorExpression
-
- AsyncFunctionExpression
-
- AsyncGeneratorExpression
-
- RegularExpressionLiteral
-
- TemplateLiteral[?Yield, ?Await, ~Tagged]
-
- CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
-
- MemberExpression[?Yield, ?Await][Expression[+In, ?Yield, ?Await]]
-
- MemberExpression[?Yield, ?Await].IdentifierName
-
- MemberExpression[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]
-
- SuperProperty[?Yield, ?Await]
-
- MetaProperty
-
- newMemberExpression[?Yield, ?Await]Arguments[?Yield, ?Await]
-
- CallExpression[Yield, Await] (call-expression.js)
-
- CoverCallExpressionAndAsyncArrowHead[?Yield, ?Await]
-
- SuperCall[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await]Arguments[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await][Expression[+In, ?Yield, ?Await]]
-
- CallExpression[?Yield, ?Await].IdentifierName
-
- CallExpression[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]
-
- OptionalExpression[Yield, Await]
-
- MemberExpression[?Yield, ?Await]OptionalChain[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await]OptionalChain[?Yield, ?Await]
-
- OptionalExpression[no LineTerminator here]++ (invalid) (update-expression.js)
-
- OptionalExpression[no LineTerminator here]-- (invalid) (update-expression.js)
-
- ++OptionalExpression[?Yield, ?Await] (invalid) (update-expression.js)
-
- --OptionalExpression[?Yield, ?]Await] (invalid) (update-expression.js)
-
-
-
- ConditionalExpression[?In, ?Yield, ?Await]
-
- ArrowFunction[?In, ?Yield, ?Await]
-
- AsyncArrowFunction[?In, ?Yield, ?Await]
-
- OptionalExpression[Yield?, Await?] = AssignmentExpression[?In, ?Yield, ?Await] (invalid)
-
- OptionalExpression AssignmentOperatorAssignmentExpression[?In, ?Yield, ?Await] (invalid)
-
-
- OptionalExpression[?Yield, ?Await]
-
-
- doStatement[?Yield, ?Await, ?Return] while(Expression[+In, ?Yield, ?Await]);
-
- while(Expression[+In, ?Yield, ?Await]) Statement[?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(varVariableDeclarationList[~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]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(varForBinding[?Yield, ?Await]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(ForDeclaration[?Yield, ?Await]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for([lookahead ≠ let]LeftHandSideExpression[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(varForBinding[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(ForDeclaration[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
-
-
- extends OptionalExpression[?Yield, ?Await]
-
-
-
- OptionalExpression[Yield, Await]
-
- MemberExpression[Yield, Await] (async-member-expression.js)
-
- PrimaryExpression[?Yield, ?Await]
-
- this
-
- IdentifierReference[?Yield, ?Await]
-
- Identifier
-
- await Identifier
-
- Literal
-
- ArrayLiteral[?Yield, ?Await]
-
- ObjectLiteral[?Yield, ?Await]
-
- FunctionExpression
-
- ClassExpression[?Yield, ?Await]
-
- GeneratorExpression
-
- AsyncFunctionExpression
-
- AsyncGeneratorExpression
-
- RegularExpressionLiteral
-
- TemplateLiteral[?Yield, ?Await, ~Tagged]
-
- CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
-
- MemberExpression[?Yield, ?Await][Expression[+In, ?Yield, ?Await]]
-
- MemberExpression[?Yield, ?Await].IdentifierName
-
- MemberExpression[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]
-
- SuperProperty[?Yield, ?Await]
-
- MetaProperty
-
- newMemberExpression[?Yield, ?Await]Arguments[?Yield, ?Await]
-
- CallExpression[Yield, Await] (async-call-expression.js)
-
- CoverCallExpressionAndAsyncArrowHead[?Yield, ?Await]
-
- SuperCall[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await]Arguments[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await][Expression[+In, ?Yield, ?Await]]
-
- CallExpression[?Yield, ?Await].IdentifierName
-
- CallExpression[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]
-
- OptionalExpression[Yield, Await]
-
- MemberExpression[?Yield, ?Await]OptionalChain[?Yield, ?Await]
-
- CallExpression[?Yield, ?Await]OptionalChain[?Yield, ?Await]
-
- OptionalExpression[no LineTerminator here]++ (invalid) (async-update-expression.js)
-
- OptionalExpression[no LineTerminator here]-- (invalid) (async-update-expression.js)
-
- ++OptionalExpression[?Yield, ?Await] (invalid) (async-update-expression.js)
-
- --OptionalExpression[?Yield, ?]Await] (invalid) (async-update-expression.js)
-
-
-
- ConditionalExpression[?In, ?Yield, ?Await]
-
- ArrowFunction[?In, ?Yield, ?Await]
-
- AsyncArrowFunction[?In, ?Yield, ?Await]
-
- OptionalExpression[Yield?, Await?] = AssignmentExpression[?In, ?Yield, ?Await] (invalid)
-
- OptionalExpression AssignmentOperatorAssignmentExpression[?In, ?Yield, ?Await] (invalid)
-
-
- OptionalExpression[?Yield, ?Await]
-
-
- doStatement[?Yield, ?Await, ?Return] while(Expression[+In, ?Yield, ?Await]);
-
- while(Expression[+In, ?Yield, ?Await]) Statement[?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(varVariableDeclarationList[~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]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(varForBinding[?Yield, ?Await]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(ForDeclaration[?Yield, ?Await]inExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for([lookahead ≠ let]LeftHandSideExpression[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(varForBinding[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- for(ForDeclaration[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- [+Await]forawait([lookahead ≠ let]LeftHandSideExpression[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- [+Await]forawait(varForBinding[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
- [+Await]forawait(ForDeclaration[?Yield, ?Await]ofAssignmentExpression[+In, ?Yield, ?Await])Statement[?Yield, ?Await, ?Return]
-
-
-
- OptionalExpression[Yield, Await]
-
- MemberExpression[Yield, Await] (iterator-member-expression.js)
-
- PrimaryExpression[?Yield, ?Await]
-
- this
-
- IdentifierReference[?Yield, ?Await]
-
- yield Identifier
-
-
-
- [+Yield]YieldExpression[?In, ?Await]
-
-
- ?.[Expression]
-
- OptionalChain[OptionalExpression]
-
- ?.IdentifierName
-
- ?.Arguments
-
- ?.TemplateLiteral
-
- OptionalChain[Expression]
-
- OptionalChain.IdentifierName
-
- OptionalChain Arguments
-
- OptionalChain[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]
-
- ?.[Expression]
-
- ?.IdentifierName
-
- ?.Arguments
-
- ?.TemplateLiteral
-
- OptionalChain[Expression]
-
- OptionalChain[OptionalExpression]
-
- OptionalChain.IdentifierName
-
- OptionalChain Arguments
-
- OptionalChain[?Yield, ?Await]TemplateLiteral[?Yield, ?Await, +Tagged]