accessor-name-inst |
|
|
accessor-name-inst-computed-in.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
es6id: 14.5.14
description: >
AssignmentExpression may contain `in` keyword regardless of outer context
info: |
[...]
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments proto and false.
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1123 |
accessor-name-inst-computed-yield-expr.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: >
The `yield` keyword behaves as a YieldExpression within a generator function
info: |
[...]
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments proto and false.
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
features: [generators]
--- |
1150 |
accessor-name-static |
|
|
accessor-name-static-computed-in.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
es6id: 14.5.14
description: >
AssignmentExpression may contain `in` keyword regardless of outer context
info: |
[...]
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
[...]
b. Else,
a. Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments F and false.
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1143 |
accessor-name-static-computed-yield-expr.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: >
The `yield` keyword behaves as a YieldExpression within a generator function
info: |
[...]
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
[...]
b. Else,
a. Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments F and false.
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
features: [generators]
--- |
1170 |
async-gen-method |
|
|
async-gen-method-static |
|
|
async-method |
|
|
async-method-static |
|
|
browser.js |
|
0 |
class-name-ident-await-escaped-module.js |
---
esid: sec-class-definitions
description: >
`await` with escape sequence is a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if the goal symbol of the syntactic grammar is Module
and the StringValue of IdentifierName is "await".
negative:
phase: parse
type: SyntaxError
flags: [module]
--- |
629 |
class-name-ident-await-escaped.js |
---
esid: sec-class-definitions
description: >
`await` with escape sequence is a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if the goal symbol of the syntactic grammar is Module
and the StringValue of IdentifierName is "await".
--- |
533 |
class-name-ident-await-module.js |
---
esid: sec-class-definitions
description: >
`await` is a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
IdentifierReference : yield
It is a Syntax Error if the goal symbol of the syntactic grammar is Module.
negative:
phase: parse
type: SyntaxError
flags: [module]
--- |
531 |
class-name-ident-await.js |
---
esid: sec-class-definitions
description: >
`await` is a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
IdentifierReference : yield
It is a Syntax Error if the goal symbol of the syntactic grammar is Module.
--- |
435 |
class-name-ident-let-escaped.js |
---
esid: sec-class-definitions
description: >
`let` with escape sequence is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
800 |
class-name-ident-let.js |
---
esid: sec-class-definitions
description: >
`let` is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
774 |
class-name-ident-static-escaped.js |
---
esid: sec-class-definitions
description: >
`static` with escape sequence is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
806 |
class-name-ident-static.js |
---
esid: sec-class-definitions
description: >
`static` is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
780 |
class-name-ident-yield-escaped.js |
---
esid: sec-class-definitions
description: >
`yield` with escape sequence is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
804 |
class-name-ident-yield.js |
---
esid: sec-class-definitions
description: >
`yield` is not a valid class-name identifier.
info: |
12.1.1 Static Semantics: Early Errors
IdentifierReference : yield
It is a Syntax Error if the code matched by this production is contained in strict mode code.
10.2.1 Strict Mode Code
All parts of a ClassDeclaration or a ClassExpression are strict mode code.
negative:
phase: parse
type: SyntaxError
--- |
635 |
constructor-this-tdz-during-initializers.js |
---
esid: sec-super-keyword-runtime-semantics-evaluation
description: >
`this` is bound in the constructor of derived classes immediately before running initializers
info: |
[...]
6. Let result be ? Construct(func, argList, newTarget).
[...]
10. Perform ? thisER.BindThisValue(result).
11. Perform ? InitializeInstanceFields(result, F).
[...]
features: [class-fields-public]
--- |
1135 |
cpn-class-expr-accessors-computed-property-name-from-additive-expression-add.js |
---
description: Computed property name from additive expression "add" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1474 |
cpn-class-expr-accessors-computed-property-name-from-additive-expression-subtract.js |
---
description: Computed property name from additive expression "subtract" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1484 |
cpn-class-expr-accessors-computed-property-name-from-arrow-function-expression.js |
---
description: Computed property name from arrow function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1513 |
cpn-class-expr-accessors-computed-property-name-from-assignment-expression-assignment.js |
---
description: Computed property name from assignment expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1515 |
cpn-class-expr-accessors-computed-property-name-from-assignment-expression-bitwise-or.js |
---
description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1538 |
cpn-class-expr-accessors-computed-property-name-from-assignment-expression-coalesce.js |
---
description: Computed property name from assignment expression coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1579 |
cpn-class-expr-accessors-computed-property-name-from-assignment-expression-logical-and.js |
---
description: Computed property name from assignment expression logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1582 |
cpn-class-expr-accessors-computed-property-name-from-assignment-expression-logical-or.js |
---
description: Computed property name from assignment expression logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1580 |
cpn-class-expr-accessors-computed-property-name-from-async-arrow-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1584 |
cpn-class-expr-accessors-computed-property-name-from-await-expression.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, top-level-await]
flags: [generated, async, module]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1566 |
cpn-class-expr-accessors-computed-property-name-from-condition-expression-false.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1568 |
cpn-class-expr-accessors-computed-property-name-from-condition-expression-true.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1555 |
cpn-class-expr-accessors-computed-property-name-from-decimal-e-notational-literal.js |
---
description: Computed property name from decimal e notational literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1470 |
cpn-class-expr-accessors-computed-property-name-from-decimal-literal.js |
---
description: Computed property name from decimal literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1432 |
cpn-class-expr-accessors-computed-property-name-from-exponetiation-expression.js |
---
description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1503 |
cpn-class-expr-accessors-computed-property-name-from-expression-coalesce.js |
---
description: Computed property name from coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1505 |
cpn-class-expr-accessors-computed-property-name-from-expression-logical-and.js |
---
description: Computed property name from logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1507 |
cpn-class-expr-accessors-computed-property-name-from-expression-logical-or.js |
---
description: Computed property name from logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1505 |
cpn-class-expr-accessors-computed-property-name-from-function-declaration.js |
---
description: Computed property name from function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1446 |
cpn-class-expr-accessors-computed-property-name-from-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1572 |
cpn-class-expr-accessors-computed-property-name-from-generator-function-declaration.js |
---
description: Computed property name from generator function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1479 |
cpn-class-expr-accessors-computed-property-name-from-identifier.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1446 |
cpn-class-expr-accessors-computed-property-name-from-integer-e-notational-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1421 |
cpn-class-expr-accessors-computed-property-name-from-integer-separators.js |
---
description: Computed property name from integer with separators (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1811 |
cpn-class-expr-accessors-computed-property-name-from-math.js |
---
description: Computed property name from math (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1766 |
cpn-class-expr-accessors-computed-property-name-from-multiplicative-expression-div.js |
---
description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1489 |
cpn-class-expr-accessors-computed-property-name-from-multiplicative-expression-mult.js |
---
description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1492 |
cpn-class-expr-accessors-computed-property-name-from-null.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1486 |
cpn-class-expr-accessors-computed-property-name-from-numeric-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1408 |
cpn-class-expr-accessors-computed-property-name-from-string-literal.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1462 |
cpn-class-expr-accessors-computed-property-name-from-yield-expression.js |
---
description: Computed property name from yield expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1555 |
cpn-class-expr-computed-property-name-from-additive-expression-add.js |
---
description: Computed property name from additive expression "add" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1198 |
cpn-class-expr-computed-property-name-from-additive-expression-subtract.js |
---
description: Computed property name from additive expression "subtract" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1208 |
cpn-class-expr-computed-property-name-from-arrow-function-expression.js |
---
description: Computed property name from arrow function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1213 |
cpn-class-expr-computed-property-name-from-assignment-expression-assignment.js |
---
description: Computed property name from assignment expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1239 |
cpn-class-expr-computed-property-name-from-assignment-expression-bitwise-or.js |
---
description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1256 |
cpn-class-expr-computed-property-name-from-assignment-expression-coalesce.js |
---
description: Computed property name from assignment expression coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1291 |
cpn-class-expr-computed-property-name-from-assignment-expression-logical-and.js |
---
description: Computed property name from assignment expression logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1294 |
cpn-class-expr-computed-property-name-from-assignment-expression-logical-or.js |
---
description: Computed property name from assignment expression logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1292 |
cpn-class-expr-computed-property-name-from-async-arrow-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1254 |
cpn-class-expr-computed-property-name-from-await-expression.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, top-level-await]
flags: [generated, async, module]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1278 |
cpn-class-expr-computed-property-name-from-condition-expression-false.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1244 |
cpn-class-expr-computed-property-name-from-condition-expression-true.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1237 |
cpn-class-expr-computed-property-name-from-decimal-e-notational-literal.js |
---
description: Computed property name from decimal e notational literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1200 |
cpn-class-expr-computed-property-name-from-decimal-literal.js |
---
description: Computed property name from decimal literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1168 |
cpn-class-expr-computed-property-name-from-exponetiation-expression.js |
---
description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1221 |
cpn-class-expr-computed-property-name-from-expression-coalesce.js |
---
description: Computed property name from coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1223 |
cpn-class-expr-computed-property-name-from-expression-logical-and.js |
---
description: Computed property name from logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1225 |
cpn-class-expr-computed-property-name-from-expression-logical-or.js |
---
description: Computed property name from logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1223 |
cpn-class-expr-computed-property-name-from-function-declaration.js |
---
description: Computed property name from function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1182 |
cpn-class-expr-computed-property-name-from-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1242 |
cpn-class-expr-computed-property-name-from-generator-function-declaration.js |
---
description: Computed property name from generator function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1215 |
cpn-class-expr-computed-property-name-from-identifier.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1174 |
cpn-class-expr-computed-property-name-from-integer-e-notational-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1169 |
cpn-class-expr-computed-property-name-from-integer-separators.js |
---
description: Computed property name from integer with separators (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1335 |
cpn-class-expr-computed-property-name-from-math.js |
---
description: Computed property name from math (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1318 |
cpn-class-expr-computed-property-name-from-multiplicative-expression-div.js |
---
description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1213 |
cpn-class-expr-computed-property-name-from-multiplicative-expression-mult.js |
---
description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1216 |
cpn-class-expr-computed-property-name-from-null.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1186 |
cpn-class-expr-computed-property-name-from-numeric-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1156 |
cpn-class-expr-computed-property-name-from-string-literal.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1178 |
cpn-class-expr-computed-property-name-from-yield-expression.js |
---
description: Computed property name from yield expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1267 |
cpn-class-expr-fields-computed-property-name-from-additive-expression-add.js |
---
description: Computed property name from additive expression "add" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1213 |
cpn-class-expr-fields-computed-property-name-from-additive-expression-subtract.js |
---
description: Computed property name from additive expression "subtract" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1223 |
cpn-class-expr-fields-computed-property-name-from-arrow-function-expression.js |
---
description: Computed property name from arrow function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1228 |
cpn-class-expr-fields-computed-property-name-from-assignment-expression-assignment.js |
---
description: Computed property name from assignment expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1254 |
cpn-class-expr-fields-computed-property-name-from-assignment-expression-bitwise-or.js |
---
description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1271 |
cpn-class-expr-fields-computed-property-name-from-assignment-expression-coalesce.js |
---
description: Computed property name from assignment expression coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1306 |
cpn-class-expr-fields-computed-property-name-from-assignment-expression-logical-and.js |
---
description: Computed property name from assignment expression logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1309 |
cpn-class-expr-fields-computed-property-name-from-assignment-expression-logical-or.js |
---
description: Computed property name from assignment expression logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1307 |
cpn-class-expr-fields-computed-property-name-from-async-arrow-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1269 |
cpn-class-expr-fields-computed-property-name-from-await-expression.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, top-level-await, class-fields-public, class-static-fields-public]
flags: [generated, async, module]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1293 |
cpn-class-expr-fields-computed-property-name-from-condition-expression-false.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1259 |
cpn-class-expr-fields-computed-property-name-from-condition-expression-true.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1252 |
cpn-class-expr-fields-computed-property-name-from-decimal-e-notational-literal.js |
---
description: Computed property name from decimal e notational literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1215 |
cpn-class-expr-fields-computed-property-name-from-decimal-literal.js |
---
description: Computed property name from decimal literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1183 |
cpn-class-expr-fields-computed-property-name-from-exponetiation-expression.js |
---
description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1236 |
cpn-class-expr-fields-computed-property-name-from-expression-coalesce.js |
---
description: Computed property name from coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1238 |
cpn-class-expr-fields-computed-property-name-from-expression-logical-and.js |
---
description: Computed property name from logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1240 |
cpn-class-expr-fields-computed-property-name-from-expression-logical-or.js |
---
description: Computed property name from logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1238 |
cpn-class-expr-fields-computed-property-name-from-function-declaration.js |
---
description: Computed property name from function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1197 |
cpn-class-expr-fields-computed-property-name-from-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1257 |
cpn-class-expr-fields-computed-property-name-from-generator-function-declaration.js |
---
description: Computed property name from generator function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1230 |
cpn-class-expr-fields-computed-property-name-from-identifier.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1189 |
cpn-class-expr-fields-computed-property-name-from-integer-e-notational-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1184 |
cpn-class-expr-fields-computed-property-name-from-integer-separators.js |
---
description: Computed property name from integer with separators (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1350 |
cpn-class-expr-fields-computed-property-name-from-math.js |
---
description: Computed property name from math (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1333 |
cpn-class-expr-fields-computed-property-name-from-multiplicative-expression-div.js |
---
description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1228 |
cpn-class-expr-fields-computed-property-name-from-multiplicative-expression-mult.js |
---
description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1231 |
cpn-class-expr-fields-computed-property-name-from-null.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1201 |
cpn-class-expr-fields-computed-property-name-from-numeric-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1171 |
cpn-class-expr-fields-computed-property-name-from-string-literal.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1193 |
cpn-class-expr-fields-computed-property-name-from-yield-expression.js |
---
description: Computed property name from yield expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1282 |
cpn-class-expr-fields-methods-computed-property-name-from-additive-expression-add.js |
---
description: Computed property name from additive expression "add" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1277 |
cpn-class-expr-fields-methods-computed-property-name-from-additive-expression-subtract.js |
---
description: Computed property name from additive expression "subtract" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1287 |
cpn-class-expr-fields-methods-computed-property-name-from-arrow-function-expression.js |
---
description: Computed property name from arrow function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1292 |
cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-assignment.js |
---
description: Computed property name from assignment expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1318 |
cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-bitwise-or.js |
---
description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1335 |
cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-coalesce.js |
---
description: Computed property name from assignment expression coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1370 |
cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-logical-and.js |
---
description: Computed property name from assignment expression logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1373 |
cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-logical-or.js |
---
description: Computed property name from assignment expression logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1371 |
cpn-class-expr-fields-methods-computed-property-name-from-async-arrow-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1333 |
cpn-class-expr-fields-methods-computed-property-name-from-await-expression.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, top-level-await, class-fields-public, class-static-fields-public]
flags: [generated, async, module]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1357 |
cpn-class-expr-fields-methods-computed-property-name-from-condition-expression-false.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1323 |
cpn-class-expr-fields-methods-computed-property-name-from-condition-expression-true.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1316 |
cpn-class-expr-fields-methods-computed-property-name-from-decimal-e-notational-literal.js |
---
description: Computed property name from decimal e notational literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1279 |
cpn-class-expr-fields-methods-computed-property-name-from-decimal-literal.js |
---
description: Computed property name from decimal literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1247 |
cpn-class-expr-fields-methods-computed-property-name-from-exponetiation-expression.js |
---
description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1300 |
cpn-class-expr-fields-methods-computed-property-name-from-expression-coalesce.js |
---
description: Computed property name from coalesce (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1302 |
cpn-class-expr-fields-methods-computed-property-name-from-expression-logical-and.js |
---
description: Computed property name from logical and (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1304 |
cpn-class-expr-fields-methods-computed-property-name-from-expression-logical-or.js |
---
description: Computed property name from logical or (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1302 |
cpn-class-expr-fields-methods-computed-property-name-from-function-declaration.js |
---
description: Computed property name from function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1261 |
cpn-class-expr-fields-methods-computed-property-name-from-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1321 |
cpn-class-expr-fields-methods-computed-property-name-from-generator-function-declaration.js |
---
description: Computed property name from generator function (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1294 |
cpn-class-expr-fields-methods-computed-property-name-from-identifier.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1253 |
cpn-class-expr-fields-methods-computed-property-name-from-integer-e-notational-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1248 |
cpn-class-expr-fields-methods-computed-property-name-from-integer-separators.js |
---
description: Computed property name from integer with separators (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1414 |
cpn-class-expr-fields-methods-computed-property-name-from-math.js |
---
description: Computed property name from math (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1397 |
cpn-class-expr-fields-methods-computed-property-name-from-multiplicative-expression-div.js |
---
description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1292 |
cpn-class-expr-fields-methods-computed-property-name-from-multiplicative-expression-mult.js |
---
description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1295 |
cpn-class-expr-fields-methods-computed-property-name-from-null.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1265 |
cpn-class-expr-fields-methods-computed-property-name-from-numeric-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1235 |
cpn-class-expr-fields-methods-computed-property-name-from-string-literal.js |
---
description: Computed property name from string literal (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1257 |
cpn-class-expr-fields-methods-computed-property-name-from-yield-expression.js |
---
description: Computed property name from yield expression (ComputedPropertyName in ClassExpression)
esid: prod-ComputedPropertyName
features: [computed-property-names, class-fields-public, class-static-fields-public]
flags: [generated]
info: |
ClassExpression:
classBindingIdentifier opt ClassTail
ClassTail:
ClassHeritage opt { ClassBody opt }
ClassBody:
ClassElementList
ClassElementList:
ClassElement
ClassElement:
MethodDefinition
MethodDefinition:
PropertyName ...
get PropertyName ...
set PropertyName ...
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
1346 |
decorator |
|
|
dstr |
|
|
elements |
|
|
gen-method |
|
|
gen-method-length-dflt.js |
---
es6id: 14.1.6
description: >
Default parameters' effect on function length
info: |
Function length is counted by the non initialized parameters in the left.
9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope)
[...]
2. Let len be the ExpectedArgumentCount of ParameterList.
3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]:
len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}).
[...]
FormalsList : FormalParameter
1. If HasInitializer of FormalParameter is true return 0
2. Return 1.
FormalsList : FormalsList , FormalParameter
1. Let count be the ExpectedArgumentCount of FormalsList.
2. If HasInitializer of FormalsList is true or HasInitializer of
FormalParameter is true, return count.
3. Return count+1.
features: [generators, default-parameters]
includes: [propertyHelper.js]
--- |
1706 |
gen-method-param-dflt-yield.js |
---
esid: sec-generator-function-definitions
es6id: 14.4
description: >
YieldExpression cannot be used within the FormalParameters of a generator
function
info: |
GeneratorMethod[Yield]:
PropertyName[?Yield] ( StrictFormalParameters[Yield] ) { GeneratorBody }
YieldExpression cannot be used within the FormalParameters of a generator
function because any expressions that are part of FormalParameters are
evaluated before the resulting generator object is in a resumable state.
features: [generators, default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
817 |
gen-method-static |
|
|
getter-param-dflt.js |
---
esid: sec-method-definitions
es6id: 14.3
description: >
Get accessor method may not have a formal parameter (regardless of the
presence of an initializer)
info: |
Syntax
MethodDefinition[Yield] :
get PropertyName[?Yield] ( ) { FunctionBody }
features: [default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
570 |
heritage-arrow-function.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
description: >
Throw a TypeError exception if IsConstructor(superclass) is false (arrow)
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage { ClassBody }
...
5. Else,
Set the running execution context's LexicalEnvironment to classScope.
Let superclassRef be the result of evaluating ClassHeritage.
Set the running execution context's LexicalEnvironment to env.
Let superclass be ? GetValue(superclassRef).
If superclass is null, then
Let protoParent be null.
Let constructorParent be %Function.prototype%.
Else if IsConstructor(superclass) is false, throw a TypeError exception.
...
features: [class]
--- |
1003 |
heritage-async-arrow-function.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
description: >
Throw a TypeError exception if IsConstructor(superclass) is false (async arrow)
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage { ClassBody }
...
5. Else,
Set the running execution context's LexicalEnvironment to classScope.
Let superclassRef be the result of evaluating ClassHeritage.
Set the running execution context's LexicalEnvironment to env.
Let superclass be ? GetValue(superclassRef).
If superclass is null, then
Let protoParent be null.
Let constructorParent be %Function.prototype%.
Else if IsConstructor(superclass) is false, throw a TypeError exception.
...
features: [class]
--- |
1015 |
ident-name-method-def-break-escaped.js |
---
description: break is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-case-escaped.js |
---
description: case is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
ident-name-method-def-catch-escaped.js |
---
description: catch is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-class-escaped.js |
---
description: class is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-const-escaped.js |
---
description: const is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-continue-escaped.js |
---
description: continue is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1060 |
ident-name-method-def-debugger-escaped.js |
---
description: debugger is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1060 |
ident-name-method-def-default-escaped-ext.js |
---
description: default is a valid identifier name, using extended escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1069 |
ident-name-method-def-default-escaped.js |
---
description: default is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1056 |
ident-name-method-def-default.js |
---
description: default is a valid identifier name (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1029 |
ident-name-method-def-delete-escaped.js |
---
description: delete is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-do-escaped.js |
---
description: do is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1036 |
ident-name-method-def-else-escaped.js |
---
description: else is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
ident-name-method-def-enum-escaped.js |
---
description: enum is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
ident-name-method-def-export-escaped.js |
---
description: export is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-extends-escaped-ext.js |
---
description: extends is a valid identifier name, using extended escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1069 |
ident-name-method-def-extends-escaped.js |
---
description: extends is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1056 |
ident-name-method-def-extends.js |
---
description: extends is a valid identifier name (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1029 |
ident-name-method-def-finally-escaped.js |
---
description: finally is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1056 |
ident-name-method-def-for-escaped.js |
---
description: for is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1040 |
ident-name-method-def-function-escaped.js |
---
description: function is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1060 |
ident-name-method-def-if-escaped.js |
---
description: if is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1036 |
ident-name-method-def-implements-escaped.js |
---
description: implements is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1082 |
ident-name-method-def-import-escaped.js |
---
description: import is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-in-escaped.js |
---
description: in is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1036 |
ident-name-method-def-instanceof-escaped.js |
---
description: instanceof is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1068 |
ident-name-method-def-interface-escaped.js |
---
description: interface is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1078 |
ident-name-method-def-let-escaped.js |
---
description: let is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1054 |
ident-name-method-def-new-escaped.js |
---
description: new is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1040 |
ident-name-method-def-package-escaped.js |
---
description: package is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1070 |
ident-name-method-def-private-escaped.js |
---
description: private is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1070 |
ident-name-method-def-protected-escaped.js |
---
description: protected is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1078 |
ident-name-method-def-public-escaped.js |
---
description: public is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1066 |
ident-name-method-def-return-escaped.js |
---
description: return is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-static-escaped.js |
---
description: static is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1066 |
ident-name-method-def-super-escaped.js |
---
description: super is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-switch-escaped.js |
---
description: switch is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-this-escaped.js |
---
description: this is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
ident-name-method-def-throw-escaped.js |
---
description: throw is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-try-escaped.js |
---
description: try is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1040 |
ident-name-method-def-typeof-escaped.js |
---
description: typeof is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1052 |
ident-name-method-def-var-escaped.js |
---
description: var is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1040 |
ident-name-method-def-void-escaped.js |
---
description: void is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
ident-name-method-def-while-escaped.js |
---
description: while is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1048 |
ident-name-method-def-with-escaped.js |
---
description: with is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
features: [class]
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1044 |
method |
|
|
method-length-dflt.js |
---
es6id: 14.1.6
description: >
Default parameters' effect on function length
info: |
Function length is counted by the non initialized parameters in the left.
9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope)
[...]
2. Let len be the ExpectedArgumentCount of ParameterList.
3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]:
len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}).
[...]
FormalsList : FormalParameter
1. If HasInitializer of FormalParameter is true return 0
2. Return 1.
FormalsList : FormalsList , FormalParameter
1. Let count be the ExpectedArgumentCount of FormalsList.
2. If HasInitializer of FormalsList is true or HasInitializer of
FormalParameter is true, return count.
3. Return count+1.
features: [default-parameters]
includes: [propertyHelper.js]
--- |
1690 |
method-param-dflt-yield.js |
---
esid: sec-method-definitions
es6id: 14.3
description: >
YieldExpression cannot be used within the FormalParameters of a class method
info: |
MethodDefinition[Yield] :
PropertyName[?Yield] ( StrictFormalParameters ) { FunctionBody }
features: [generators, default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
562 |
method-static |
|
|
name.js |
---
esid: sec-class-definitions-runtime-semantics-evaluation
description: Assignment of function `name` attribute
info: |
ClassExpression : class ClassTail
1. Let value be ? ClassDefinitionEvaluation of ClassTail with arguments
undefined and "".
...
4. Return value.
ClassExpression : class BindingIdentifier ClassTail
1. Let className be StringValue of BindingIdentifier.
2. Let value be ? ClassDefinitionEvaluation of ClassTail with arguments
className and className.
...
4. Return value.
14.6.13 Runtime Semantics: ClassDefinitionEvaluation
...
12. Let constructorInfo be DefineMethod of constructor with arguments proto,
className as the optional name argument, and constructorParent.
...
14.3.7 Runtime Semantics: DefineMethod
...
7. Let closure be FunctionCreate(kind, UniqueFormalParameters, FunctionBody,
scope, name, prototype).
...
includes: [propertyHelper.js]
--- |
1628 |
params-dflt-gen-meth-args-unmapped.js |
---
description: Referencing the arguments object from a default parameter (class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [generators, default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing
PropertyDefinitionEvaluation for m with arguments proto and
false.
[...]
14.4.13 Runtime Semantics: PropertyDefinitionEvaluation
GeneratorMethod :
PropertyName ( StrictFormalParameters ) { GeneratorBody }
1. Let propKey be the result of evaluating PropertyName.
2. ReturnIfAbrupt(propKey).
3. If the function code for this GeneratorMethod is strict mode code,
let strict be true. Otherwise let strict be false.
4. Let scope be the running execution context's LexicalEnvironment.
5. Let closure be GeneratorFunctionCreate(Method,
StrictFormalParameters, GeneratorBody, scope, strict).
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3561 |
params-dflt-gen-meth-ref-arguments.js |
---
description: Referencing the arguments object from a default parameter (class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [generators, default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing
PropertyDefinitionEvaluation for m with arguments proto and
false.
[...]
14.4.13 Runtime Semantics: PropertyDefinitionEvaluation
GeneratorMethod :
PropertyName ( StrictFormalParameters ) { GeneratorBody }
1. Let propKey be the result of evaluating PropertyName.
2. ReturnIfAbrupt(propKey).
3. If the function code for this GeneratorMethod is strict mode code,
let strict be true. Otherwise let strict be false.
4. Let scope be the running execution context's LexicalEnvironment.
5. Let closure be GeneratorFunctionCreate(Method,
StrictFormalParameters, GeneratorBody, scope, strict).
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3130 |
params-dflt-gen-meth-static-args-unmapped.js |
---
description: Referencing the arguments object from a default parameter (static class expression generator method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [generators, default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
b. Else,
Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments F and false.
[...]
14.4.13 Runtime Semantics: PropertyDefinitionEvaluation
GeneratorMethod :
PropertyName ( StrictFormalParameters ) { GeneratorBody }
1. Let propKey be the result of evaluating PropertyName.
2. ReturnIfAbrupt(propKey).
3. If the function code for this GeneratorMethod is strict mode code,
let strict be true. Otherwise let strict be false.
4. Let scope be the running execution context's LexicalEnvironment.
5. Let closure be GeneratorFunctionCreate(Method,
StrictFormalParameters, GeneratorBody, scope, strict).
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3563 |
params-dflt-gen-meth-static-ref-arguments.js |
---
description: Referencing the arguments object from a default parameter (static class expression generator method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [generators, default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
b. Else,
Let status be the result of performing PropertyDefinitionEvaluation
for m with arguments F and false.
[...]
14.4.13 Runtime Semantics: PropertyDefinitionEvaluation
GeneratorMethod :
PropertyName ( StrictFormalParameters ) { GeneratorBody }
1. Let propKey be the result of evaluating PropertyName.
2. ReturnIfAbrupt(propKey).
3. If the function code for this GeneratorMethod is strict mode code,
let strict be true. Otherwise let strict be false.
4. Let scope be the running execution context's LexicalEnvironment.
5. Let closure be GeneratorFunctionCreate(Method,
StrictFormalParameters, GeneratorBody, scope, strict).
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3133 |
params-dflt-meth-args-unmapped.js |
---
description: Referencing the arguments object from a default parameter (class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing
PropertyDefinitionEvaluation for m with arguments proto and
false.
[...]
14.3.8 Runtime Semantics: DefineMethod
MethodDefinition : PropertyName ( StrictFormalParameters ) { FunctionBody }
[...]
6. Let closure be FunctionCreate(kind, StrictFormalParameters, FunctionBody,
scope, strict). If functionPrototype was passed as a parameter then pass its
value as the functionPrototype optional argument of FunctionCreate.
[...]
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3361 |
params-dflt-meth-ref-arguments.js |
---
description: Referencing the arguments object from a default parameter (class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
i. Let status be the result of performing
PropertyDefinitionEvaluation for m with arguments proto and
false.
[...]
14.3.8 Runtime Semantics: DefineMethod
MethodDefinition : PropertyName ( StrictFormalParameters ) { FunctionBody }
[...]
6. Let closure be FunctionCreate(kind, StrictFormalParameters, FunctionBody,
scope, strict). If functionPrototype was passed as a parameter then pass its
value as the functionPrototype optional argument of FunctionCreate.
[...]
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
2930 |
params-dflt-meth-static-args-unmapped.js |
---
description: Referencing the arguments object from a default parameter (static class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
b. Else,
Let status be the result of performing PropertyDefinitionEvaluation for
m with arguments F and false.
[...]
14.3.8 Runtime Semantics: DefineMethod
MethodDefinition : PropertyName ( StrictFormalParameters ) { FunctionBody }
[...]
6. Let closure be FunctionCreate(kind, StrictFormalParameters, FunctionBody,
scope, strict). If functionPrototype was passed as a parameter then pass its
value as the functionPrototype optional argument of FunctionCreate.
[...]
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
3354 |
params-dflt-meth-static-ref-arguments.js |
---
description: Referencing the arguments object from a default parameter (static class expression method)
esid: sec-class-definitions-runtime-semantics-evaluation
es6id: 14.5.16
features: [default-parameters]
info: |
ClassExpression : class BindingIdentifieropt ClassTail
1. If BindingIdentifieropt is not present, let className be undefined.
2. Else, let className be StringValue of BindingIdentifier.
3. Let value be the result of ClassDefinitionEvaluation of ClassTail
with argument className.
[...]
14.5.14 Runtime Semantics: ClassDefinitionEvaluation
21. For each ClassElement m in order from methods
a. If IsStatic of m is false, then
b. Else,
Let status be the result of performing PropertyDefinitionEvaluation for
m with arguments F and false.
[...]
14.3.8 Runtime Semantics: DefineMethod
MethodDefinition : PropertyName ( StrictFormalParameters ) { FunctionBody }
[...]
6. Let closure be FunctionCreate(kind, StrictFormalParameters, FunctionBody,
scope, strict). If functionPrototype was passed as a parameter then pass its
value as the functionPrototype optional argument of FunctionCreate.
[...]
9.2.1 [[Call]] ( thisArgument, argumentsList)
[...]
7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
[...]
9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
[...]
9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
[...]
23. Let iteratorRecord be Record {[[iterator]]:
CreateListIterator(argumentsList), [[done]]: false}.
24. If hasDuplicates is true, then
[...]
25. Else,
b. Let formalStatus be IteratorBindingInitialization for formals with
iteratorRecord and env as arguments.
[...]
14.1.19 Runtime Semantics: IteratorBindingInitialization
FormalsList : FormalsList , FormalParameter
1. Let status be the result of performing IteratorBindingInitialization for
FormalsList using iteratorRecord and environment as the arguments.
2. ReturnIfAbrupt(status).
3. Return the result of performing IteratorBindingInitialization for
FormalParameter using iteratorRecord and environment as the arguments.
--- |
2923 |
poisoned-underscore-proto.js |
---
esid: prod-ClassExpression
description: >
ClassExpression should directly set [[Prototype]] internal slot.
info: |
ClassDefinitionEvaluation
[...]
7. Let proto be ObjectCreate(protoParent).
ObjectCreate ( proto [ , internalSlotsList ] )
[...]
4. Set obj.[[Prototype]] to proto.
features: [class, __proto__]
--- |
697 |
private-getter-brand-check-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1417 |
private-getter-brand-check-multiple-evaluations-of-class-eval.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1403 |
private-getter-brand-check-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1359 |
private-getter-brand-check-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1472 |
private-getter-brand-check-multiple-evaluations-of-class-realm-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
--- |
1605 |
private-getter-brand-check-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different brand (private getter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
flags: [noStrict]
--- |
1591 |
private-method-brand-check-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1417 |
private-method-brand-check-multiple-evaluations-of-class-eval.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1403 |
private-method-brand-check-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1344 |
private-method-brand-check-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1472 |
private-method-brand-check-multiple-evaluations-of-class-realm-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
--- |
1604 |
private-method-brand-check-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different brand (private method)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
flags: [noStrict]
--- |
1589 |
private-setter-brand-check-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1463 |
private-setter-brand-check-multiple-evaluations-of-class-eval.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
flags: [noStrict]
--- |
1449 |
private-setter-brand-check-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1392 |
private-setter-brand-check-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private]
--- |
1518 |
private-setter-brand-check-multiple-evaluations-of-class-realm-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
--- |
1650 |
private-setter-brand-check-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different brand (private setter)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
11. Let proto be ObjectCreate(protoParent).
...
31. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that the P's [[Kind]] field is either "method" or "accessor",
a. Set F.[[PrivateBrand]] to proto.
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-methods-private, cross-realm]
flags: [noStrict]
--- |
1637 |
private-static-field-multiple-evaluations-of-class-direct-eval.js |
---
description: Every new evaluation of a class creates a different Private Name (private static field)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassElementName : PrivateIdentifier
1. Let privateIdentifier be StringValue of PrivateIdentifier.
2. Let privateName be NewPrivateName(privateIdentifier).
3. Let scope be the running execution context's PrivateEnvironment.
4. Let scopeEnvRec be scope's EnvironmentRecord.
5. Perform ! scopeEnvRec.InitializeBinding(privateIdentifier, privateName).
6. Return privateName.
ClassTail : ClassHeritage { ClassBody }
...
27. Let staticFields be a new empty List.
28. For each ClassElement e in order from elements,
a. If IsStatic of e is false, then
...
b. Else,
i. Let field be the result of performing PropertyDefinitionEvaluation for m ClassElementEvaluation for e with arguments F and false.
c. If field is an abrupt completion, then
...
d. If field is not empty,
i. If IsStatic of e is false, append field to instanceFields.
ii. Otherwise, append field to staticFields.
...
34. For each item fieldRecord in order from staticFields,
a. Perform ? DefineField(F, field).
...
DefineField(receiver, fieldRecord)
...
8. If fieldName is a Private Name,
a. Perform ? PrivateFieldAdd(fieldName, receiver, initValue).
features: [class, class-static-fields-private]
flags: [noStrict]
--- |
2174 |
private-static-field-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different Private Name (private static field)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassElementName : PrivateIdentifier
1. Let privateIdentifier be StringValue of PrivateIdentifier.
2. Let privateName be NewPrivateName(privateIdentifier).
3. Let scope be the running execution context's PrivateEnvironment.
4. Let scopeEnvRec be scope's EnvironmentRecord.
5. Perform ! scopeEnvRec.InitializeBinding(privateIdentifier, privateName).
6. Return privateName.
ClassTail : ClassHeritage { ClassBody }
...
27. Let staticFields be a new empty List.
28. For each ClassElement e in order from elements,
a. If IsStatic of e is false, then
...
b. Else,
i. Let field be the result of performing PropertyDefinitionEvaluation for m ClassElementEvaluation for e with arguments F and false.
c. If field is an abrupt completion, then
...
d. If field is not empty,
i. If IsStatic of e is false, append field to instanceFields.
ii. Otherwise, append field to staticFields.
...
34. For each item fieldRecord in order from staticFields,
a. Perform ? DefineField(F, field).
...
DefineField(receiver, fieldRecord)
...
8. If fieldName is a Private Name,
a. Perform ? PrivateFieldAdd(fieldName, receiver, initValue).
features: [class, class-static-fields-private]
flags: [noStrict]
--- |
2188 |
private-static-field-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different Private Name (private static field)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassElementName : PrivateIdentifier
1. Let privateIdentifier be StringValue of PrivateIdentifier.
2. Let privateName be NewPrivateName(privateIdentifier).
3. Let scope be the running execution context's PrivateEnvironment.
4. Let scopeEnvRec be scope's EnvironmentRecord.
5. Perform ! scopeEnvRec.InitializeBinding(privateIdentifier, privateName).
6. Return privateName.
ClassTail : ClassHeritage { ClassBody }
...
27. Let staticFields be a new empty List.
28. For each ClassElement e in order from elements,
a. If IsStatic of e is false, then
...
b. Else,
i. Let field be the result of performing PropertyDefinitionEvaluation for m ClassElementEvaluation for e with arguments F and false.
c. If field is an abrupt completion, then
...
d. If field is not empty,
i. If IsStatic of e is false, append field to instanceFields.
ii. Otherwise, append field to staticFields.
...
34. For each item fieldRecord in order from staticFields,
a. Perform ? DefineField(F, field).
...
DefineField(receiver, fieldRecord)
...
8. If fieldName is a Private Name,
a. Perform ? PrivateFieldAdd(fieldName, receiver, initValue).
features: [class, class-static-fields-private]
--- |
2107 |
private-static-field-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different Private Name (private static field)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassElementName : PrivateIdentifier
1. Let privateIdentifier be StringValue of PrivateIdentifier.
2. Let privateName be NewPrivateName(privateIdentifier).
3. Let scope be the running execution context's PrivateEnvironment.
4. Let scopeEnvRec be scope's EnvironmentRecord.
5. Perform ! scopeEnvRec.InitializeBinding(privateIdentifier, privateName).
6. Return privateName.
ClassTail : ClassHeritage { ClassBody }
...
27. Let staticFields be a new empty List.
28. For each ClassElement e in order from elements,
a. If IsStatic of e is false, then
...
b. Else,
i. Let field be the result of performing PropertyDefinitionEvaluation for m ClassElementEvaluation for e with arguments F and false.
c. If field is an abrupt completion, then
...
d. If field is not empty,
i. If IsStatic of e is false, append field to instanceFields.
ii. Otherwise, append field to staticFields.
...
34. For each item fieldRecord in order from staticFields,
a. Perform ? DefineField(F, field).
...
DefineField(receiver, fieldRecord)
...
8. If fieldName is a Private Name,
a. Perform ? PrivateFieldAdd(fieldName, receiver, initValue).
features: [class, class-static-fields-private]
--- |
2228 |
private-static-field-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different Private Name (private static field)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassElementName : PrivateIdentifier
1. Let privateIdentifier be StringValue of PrivateIdentifier.
2. Let privateName be NewPrivateName(privateIdentifier).
3. Let scope be the running execution context's PrivateEnvironment.
4. Let scopeEnvRec be scope's EnvironmentRecord.
5. Perform ! scopeEnvRec.InitializeBinding(privateIdentifier, privateName).
6. Return privateName.
ClassTail : ClassHeritage { ClassBody }
...
27. Let staticFields be a new empty List.
28. For each ClassElement e in order from elements,
a. If IsStatic of e is false, then
...
b. Else,
i. Let field be the result of performing PropertyDefinitionEvaluation for m ClassElementEvaluation for e with arguments F and false.
c. If field is an abrupt completion, then
...
d. If field is not empty,
i. If IsStatic of e is false, append field to instanceFields.
ii. Otherwise, append field to staticFields.
...
34. For each item fieldRecord in order from staticFields,
a. Perform ? DefineField(F, field).
...
DefineField(receiver, fieldRecord)
...
8. If fieldName is a Private Name,
a. Perform ? PrivateFieldAdd(fieldName, receiver, initValue).
features: [class, class-static-fields-private, cross-realm]
flags: [noStrict]
--- |
2354 |
private-static-getter-multiple-evaluations-of-class-direct-eval.js |
---
description: Every new evaluation of a class creates a different Private Name (private static getter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1629 |
private-static-getter-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different Private Name (private static getter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1643 |
private-static-getter-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different Private Name (private static getter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1566 |
private-static-getter-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different Private Name (private static getter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1683 |
private-static-getter-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different Private Name (private static getter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private, cross-realm]
flags: [noStrict]
--- |
1809 |
private-static-method-brand-check-multiple-evaluations-of-class-direct-eval.js |
---
description: Every new evaluation of a class creates a different brand (private static methods)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1598 |
private-static-method-brand-check-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different brand (private static methods)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1612 |
private-static-method-brand-check-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different brand (private static methods)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1531 |
private-static-method-brand-check-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different brand (private static methods)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1652 |
private-static-method-brand-check-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different brand (private static methods)
esid: sec-privatefieldget
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private, cross-realm]
flags: [noStrict]
--- |
1784 |
private-static-setter-multiple-evaluations-of-class-direct-eval.js |
---
description: Every new evaluation of a class creates a different Private Name (private static setter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1643 |
private-static-setter-multiple-evaluations-of-class-eval-indirect.js |
---
description: Every new evaluation of a class creates a different Private Name (private static setter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
flags: [noStrict]
--- |
1658 |
private-static-setter-multiple-evaluations-of-class-factory.js |
---
description: Every new evaluation of a class creates a different Private Name (private static setter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1581 |
private-static-setter-multiple-evaluations-of-class-function-ctor.js |
---
description: Every new evaluation of a class creates a different Private Name (private static setter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private]
--- |
1697 |
private-static-setter-multiple-evaluations-of-class-realm.js |
---
description: Every new evaluation of a class creates a different Private Name (private static setter)
esid: sec-runtime-semantics-evaluate-name
info: |
ClassTail : ClassHeritage { ClassBody }
...
19. Let F be constructorInfo.[[Closure]].
20. If ClassHeritage_opt is present and protoParent is not null, then set F.[[ConstructorKind]] to "derived".
21. Perform MakeConstructor(F, false, proto).
22. Perform MakeClassConstructor(F).
...
33. If PrivateBoundIdentifiers of ClassBody contains a Private Name P such that P's [[Kind]] field is either "method" or "accessor" and P's [[Brand]] is F,
a. PrivateBrandAdd(F, F).
...
PrivateBrandCheck(O, P)
1. If O.[[PrivateBrands]] does not contain an entry e such that SameValue(e, P.[[Brand]]) is true,
a. Throw a TypeError exception.
features: [class, class-static-methods-private, cross-realm]
flags: [noStrict]
--- |
1823 |
restricted-properties.js |
---
description: >
Functions created using ClassExpression syntactic form do not
have own properties "caller" or "arguments", but inherit them from
%FunctionPrototype%.
es6id: 16.1
--- |
1369 |
scope-gen-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1196 |
scope-gen-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1232 |
scope-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1165 |
scope-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1202 |
scope-name-lex-close.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
description: Removal of lexical environment for class "name"
info: |
[...]
22. Set the running execution context's LexicalEnvironment to lex.
[...]
--- |
565 |
scope-name-lex-open-heritage.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
description: >
Creation of new lexical environment for the class "name" (with a heritage)
info: |
1. Let lex be the LexicalEnvironment of the running execution context.
2. Let classScope be NewDeclarativeEnvironment(lex).
3. Let classScopeEnvRec be classScope's EnvironmentRecord.
4. If className is not undefined, then
a. Perform classScopeEnvRec.CreateImmutableBinding(className, true).
5. If ClassHeritageopt is not present, then
[...]
6. Else,
a. Set the running execution context's LexicalEnvironment to classScope.
[...]
--- |
1389 |
scope-name-lex-open-no-heritage.js |
---
esid: sec-runtime-semantics-classdefinitionevaluation
description: >
Creation of new lexical environment for the class "name" (without a
heritage)
info: |
1. Let lex be the LexicalEnvironment of the running execution context.
2. Let classScope be NewDeclarativeEnvironment(lex).
3. Let classScopeEnvRec be classScope's EnvironmentRecord.
4. If className is not undefined, then
a. Perform classScopeEnvRec.CreateImmutableBinding(className, true).
5. If ClassHeritageopt is not present, then
[...]
6. Else,
a. Set the running execution context's LexicalEnvironment to classScope.
[...]
11. Set the running execution context's LexicalEnvironment to classScope.
--- |
1323 |
scope-setter-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1174 |
scope-setter-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1216 |
scope-static-gen-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1193 |
scope-static-gen-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1230 |
scope-static-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1162 |
scope-static-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1199 |
scope-static-setter-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1171 |
scope-static-setter-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1213 |
setter-length-dflt.js |
---
es6id: 14.1.6
description: >
Default parameters' effect on function length
info: |
Function length is counted by the non initialized parameters in the left.
9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope)
[...]
2. Let len be the ExpectedArgumentCount of ParameterList.
3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]:
len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}).
[...]
FormalsList : FormalParameter
1. If HasInitializer of FormalParameter is true return 0
2. Return 1.
FormalsList : FormalsList , FormalParameter
1. Let count be the ExpectedArgumentCount of FormalsList.
2. If HasInitializer of FormalsList is true or HasInitializer of
FormalParameter is true, return count.
3. Return count+1.
features: [default-parameters]
includes: [propertyHelper.js]
--- |
1267 |
shell.js |
|
0 |
static-gen-method-param-dflt-yield.js |
---
esid: sec-generator-function-definitions
es6id: 14.4
description: >
YieldExpression cannot be used within the FormalParameters of a generator
function
info: |
GeneratorMethod[Yield]:
PropertyName[?Yield] ( StrictFormalParameters[Yield] ) { GeneratorBody }
YieldExpression cannot be used within the FormalParameters of a generator
function because any expressions that are part of FormalParameters are
evaluated before the resulting generator object is in a resumable state.
features: [generators, default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
824 |
static-init-await-binding.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: The `await` keyword is disallowed as a BindingIdentifier
info: |
ClassStaticBlockBody : ClassStaticBlockStatementList
[...]
- It is a Syntax Error if ContainsAwait of ClassStaticBlockStatementList is true.
features: [class-static-block]
negative:
phase: parse
type: SyntaxError
--- |
610 |
static-init-await-reference.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: The `await` keyword is interpreted as a IdentifierReference in method parameter lists
info: |
ClassStaticBlockBody : ClassStaticBlockStatementList
[...]
- It is a Syntax Error if ContainsAwait of ClassStaticBlockStatementList is true.
features: [class-static-block]
--- |
782 |
static-method-length-dflt.js |
---
es6id: 14.1.6
description: >
Default parameters' effect on function length
info: |
Function length is counted by the non initialized parameters in the left.
9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope)
[...]
2. Let len be the ExpectedArgumentCount of ParameterList.
3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]:
len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}).
[...]
FormalsList : FormalParameter
1. If HasInitializer of FormalParameter is true return 0
2. Return 1.
FormalsList : FormalsList , FormalParameter
1. Let count be the ExpectedArgumentCount of FormalsList.
2. If HasInitializer of FormalsList is true or HasInitializer of
FormalParameter is true, return count.
3. Return count+1.
features: [default-parameters]
includes: [propertyHelper.js]
--- |
1678 |
static-method-param-dflt-yield.js |
---
esid: sec-method-definitions
es6id: 14.3
description: >
YieldExpression cannot be used within the FormalParameters of a class method
info: |
MethodDefinition[Yield] :
PropertyName[?Yield] ( StrictFormalParameters ) { FunctionBody }
features: [generators, default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
569 |
subclass-builtins |
|
|