browser.js |
|
0 |
grammar-class-body-ctor-no-heritage.js |
---
description: A constructor is valid without a super call in the constructor and heritage (class declaration)
esid: prod-ClassElement
features: [class]
flags: [generated]
info: |
ClassTail : ClassHeritageopt { ClassBody }
It is a Syntax Error if ClassHeritage is not present and the following algorithm evaluates to true:
1. Let constructor be ConstructorMethod of ClassBody.
2. If constructor is empty, return false.
3. Return HasDirectSuper of constructor.
--- |
763 |
grammar-field-accessor.js |
---
description: Valid accessor FieldDefinition, ClassElementName, PropertyName Syntax (class declaration)
esid: prod-ClassElement
features: [decorators, class]
flags: [generated]
info: |
FieldDefinition[Yield, Await] :
ClassElementName[?Yield, ?Await] Initializer[+In, ?Yield, ?Await]opt
accessor [no LineTerminator here] ClassElementName[?Yield, ?Await] Initializer[+In, ?Yield, ?Await]opt
--- |
917 |
grammar-field-classelementname-initializer-alt.js |
---
description: FieldDefinition, ClassElementName, PropertyName = Initializer Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-public, class]
flags: [generated]
info: |
ClassElement :
...
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
Initializer :
= AssignmentExpression
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart ::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart ::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue ::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1685 |
grammar-field-classelementname-initializer.js |
---
description: FieldDefinition, ClassElementName, PropertyName = Initializer Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-public, class]
flags: [generated]
info: |
ClassElement :
...
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
Initializer :
= AssignmentExpression
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart ::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart ::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue ::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1564 |
grammar-field-identifier-alt.js |
---
description: Valid FieldDefinition, ClassElementName, PropertyName Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-public, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
StringLiteral
NumericLiteral
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart ::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart ::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue ::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1671 |
grammar-field-identifier.js |
---
description: Valid FieldDefinition, ClassElementName, PropertyName Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-public, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
StringLiteral
NumericLiteral
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart ::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart ::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue ::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1550 |
grammar-field-named-get-followed-by-generator-asi.js |
---
description: ASI between a field named "get" and a generator method
esid: prod-ClassElement
features: [class-fields-public, class-static-fields-public, class, generators]
info: |
ClassElement :
MethodDefinition
FieldDefinition ;
static FieldDefinition ;
;
MethodDefinition :
GeneratorMethod
get ClassElementName () { FunctionBody }
GeneratorMethod :
ClassElementName ( UniqueFormalParameters ) { GeneratorBody }
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
StringLiteral
NumericLiteral
--- |
1352 |
grammar-field-named-set-followed-by-generator-asi.js |
---
description: ASI between a field named "set" and a generator method
esid: prod-ClassElement
features: [class-fields-public, class]
info: |
ClassElement :
MethodDefinition
FieldDefinition ;
static FieldDefinition ;
;
MethodDefinition :
GeneratorMethod
set ClassElementName ( PropertySetParameterList ) { FunctionBody }
GeneratorMethod :
ClassElementName ( UniqueFormalParameters ) { GeneratorBody }
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PropertyName :
LiteralPropertyName
ComputedPropertyName
LiteralPropertyName :
IdentifierName
StringLiteral
NumericLiteral
--- |
1340 |
grammar-fields-multi-line.js |
---
description: Valid multi-line, multi-field (class declaration)
esid: prod-ClassElement
features: [class-fields-public, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
--- |
638 |
grammar-privatemeth-duplicate-get-set.js |
---
description: It's valid if a class contains a private getter and a private setter with the same name (class declaration)
esid: prod-ClassElement
features: [class-methods-private, class]
flags: [generated]
info: |
Static Semantics: Early Errors
ClassBody : ClassElementList
It is a Syntax Error if PrivateBoundNames of ClassBody contains any duplicate entries, unless the name is used once for a getter and once for a setter and in no other entries.
--- |
756 |
grammar-privatemeth-duplicate-meth-nestedclassmeth.js |
---
description: It's valid if a nested class shadows a private method (class declaration)
esid: prod-ClassElement
features: [class-methods-private, class]
flags: [generated]
info: |
Static Semantics: Early Errors
ClassBody : ClassElementList
It is a Syntax Error if PrivateBoundNames of ClassBody contains any duplicate entries, unless the name is used once for a getter and once for a setter and in no other entries.
--- |
773 |
grammar-privatename-classelementname-initializer-alt.js |
---
description: Valid PrivateName = Initializer Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-private, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PrivateName ::
# IdentifierName
Initializer :
= AssignmentExpression
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1630 |
grammar-privatename-classelementname-initializer.js |
---
description: Valid PrivateName = Initializer Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-private, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PrivateName ::
# IdentifierName
Initializer :
= AssignmentExpression
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1509 |
grammar-privatename-identifier.js |
---
description: Valid PrivateName Syntax (class declaration)
esid: prod-ClassElement
features: [class-fields-private, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PrivateName ::
# IdentifierName
IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeIDStart
$
_
\ UnicodeEscapeSequence
IdentifierPart::
UnicodeIDContinue
$
\ UnicodeEscapeSequence
<ZWNJ> <ZWJ>
UnicodeIDStart::
any Unicode code point with the Unicode property "ID_Start"
UnicodeIDContinue::
any Unicode code point with the Unicode property "ID_Continue"
NOTE 3
The sets of code points with Unicode properties "ID_Start" and
"ID_Continue" include, respectively, the code points with Unicode
properties "Other_ID_Start" and "Other_ID_Continue".
--- |
1405 |
grammar-privatename-no-initializer-with-method.js |
---
description: SyntaxError (class declaration)
esid: prod-ClassElement
features: [class-fields-private, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PrivateName ::
# IdentifierName
--- |
691 |
grammar-privatenames-multi-line.js |
---
description: SyntaxError (class declaration)
esid: prod-ClassElement
features: [class-fields-private, class]
flags: [generated]
info: |
ClassElement :
MethodDefinition
static MethodDefinition
FieldDefinition ;
;
FieldDefinition :
ClassElementName Initializer _opt
ClassElementName :
PropertyName
PrivateName
PrivateName ::
# IdentifierName
--- |
672 |
grammar-special-prototype-accessor-meth-valid.js |
---
description: Accessor Methods can be named "prototype" (class declaration)
esid: prod-ClassElement
features: [class]
flags: [generated]
includes: [propertyHelper.js]
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage_opt { ClassBody_opt }
[...]
6. Let proto be OrdinaryObjectCreate(protoParent).
[...]
14. Perform MakeConstructor(F, false, proto).
[...]
20. For each ClassElement m in order from methods, do
a. If IsStatic of m is false, then
i. Let status be PropertyDefinitionEvaluation of m with arguments proto and false.
[...]
Runtime Semantics: PropertyDefinitionEvaluation
With parameters object and enumerable.
MethodDefinition : get PropertyName ( ) { FunctionBody }
[...]
9. Let desc be the PropertyDescriptor { [[Get]]: closure, [[Enumerable]]: enumerable, [[Configurable]]: true }.
10. Return ? DefinePropertyOrThrow(object, propKey, desc).
MethodDefinition : set PropertyName ( PropertySetParameterList ) { FunctionBody }
[...]
8. Let desc be the PropertyDescriptor { [[Set]]: closure, [[Enumerable]]: enumerable, [[Configurable]]: true }.
9. Return ? DefinePropertyOrThrow(object, propKey, desc).
--- |
1852 |
grammar-special-prototype-async-gen-meth-valid.js |
---
description: Async Generator Methods can be named "prototype" (class declaration)
esid: prod-ClassElement
features: [async-iteration, class]
flags: [generated]
includes: [propertyHelper.js]
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage_opt { ClassBody_opt }
[...]
6. Let proto be OrdinaryObjectCreate(protoParent).
[...]
14. Perform MakeConstructor(F, false, proto).
[...]
20. For each ClassElement m in order from methods, do
a. If IsStatic of m is false, then
i. Let status be PropertyDefinitionEvaluation of m with arguments proto and false.
[...]
Runtime Semantics: PropertyDefinitionEvaluation
With parameters object and enumerable.
AsyncGeneratorMethod : async * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody }
[...]
10. Let desc be PropertyDescriptor { [[Value]]: closure, [[Writable]]: true, [[Enumerable]]: enumerable, [[Configurable]]: true }.
11. Return ? DefinePropertyOrThrow(object, propKey, desc).
--- |
1602 |
grammar-special-prototype-async-meth-valid.js |
---
description: Async Methods can be named "prototype" (class declaration)
esid: prod-ClassElement
features: [async-functions, class]
flags: [generated]
includes: [propertyHelper.js]
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage_opt { ClassBody_opt }
[...]
6. Let proto be OrdinaryObjectCreate(protoParent).
[...]
14. Perform MakeConstructor(F, false, proto).
[...]
20. For each ClassElement m in order from methods, do
a. If IsStatic of m is false, then
i. Let status be PropertyDefinitionEvaluation of m with arguments proto and false.
[...]
Runtime Semantics: PropertyDefinitionEvaluation
With parameters object and enumerable.
AsyncMethod : async PropertyName ( UniqueFormalParameters ) { AsyncFunctionBody }
[...]
8. Let desc be the PropertyDescriptor { [[Value]]: closure, [[Writable]]: true, [[Enumerable]]: enumerable, [[Configurable]]: true }.
9. Return ? DefinePropertyOrThrow(object, propKey, desc).
--- |
1576 |
grammar-special-prototype-gen-meth-valid.js |
---
description: Generator Methods can be named "prototype" (class declaration)
esid: prod-ClassElement
features: [generators, class]
flags: [generated]
includes: [propertyHelper.js]
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage_opt { ClassBody_opt }
[...]
6. Let proto be OrdinaryObjectCreate(protoParent).
[...]
14. Perform MakeConstructor(F, false, proto).
[...]
20. For each ClassElement m in order from methods, do
a. If IsStatic of m is false, then
i. Let status be PropertyDefinitionEvaluation of m with arguments proto and false.
[...]
Runtime Semantics: PropertyDefinitionEvaluation
With parameters object and enumerable.
GeneratorMethod : * PropertyName ( UniqueFormalParameters ) { GeneratorBody }
[...]
10. Let desc be the PropertyDescriptor { [[Value]]: closure, [[Writable]]: true, [[Enumerable]]: enumerable, [[Configurable]]: true }.
11. Return ? DefinePropertyOrThrow(object, propKey, desc).
--- |
1567 |
grammar-special-prototype-meth-valid.js |
---
description: Methods can be named "prototype" (class declaration)
esid: prod-ClassElement
features: [class]
flags: [generated]
includes: [propertyHelper.js]
info: |
Runtime Semantics: ClassDefinitionEvaluation
ClassTail : ClassHeritage_opt { ClassBody_opt }
[...]
6. Let proto be OrdinaryObjectCreate(protoParent).
[...]
14. Perform MakeConstructor(F, false, proto).
[...]
20. For each ClassElement m in order from methods, do
a. If IsStatic of m is false, then
i. Let status be PropertyDefinitionEvaluation of m with arguments proto and false.
[...]
Runtime Semantics: PropertyDefinitionEvaluation
With parameters object and enumerable.
MethodDefinition : PropertyName ( UniqueFormalParameters ) { FunctionBody }
[...]
3. Let desc be the PropertyDescriptor { [[Value]]: methodDef.[[Closure]], [[Writable]]: true, [[Enumerable]]: enumerable, [[Configurable]]: true }.
4. Return ? DefinePropertyOrThrow(object, methodDef.[[Key]], desc).
--- |
1560 |
grammar-static-ctor-accessor-meth-valid.js |
---
description: Static Accessor Methods can be named constructor (class declaration)
esid: prod-ClassElement
features: [class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is not "constructor" and HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "constructor" and SpecialMethod of MethodDefinition is true.
ClassElement : static MethodDefinition
It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "prototype".
--- |
1226 |
grammar-static-ctor-async-gen-meth-valid.js |
---
description: Static Async Generator Methods can be named constructor (class declaration)
esid: prod-ClassElement
features: [async-iteration, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is not "constructor" and HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "constructor" and SpecialMethod of MethodDefinition is true.
ClassElement : static MethodDefinition
It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "prototype".
--- |
1224 |
grammar-static-ctor-async-meth-valid.js |
---
description: Static Methods can be named constructor (class declaration)
esid: prod-ClassElement
features: [async-functions, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is not "constructor" and HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "constructor" and SpecialMethod of MethodDefinition is true.
ClassElement : static MethodDefinition
It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "prototype".
--- |
1202 |
grammar-static-ctor-gen-meth-valid.js |
---
description: Static Generator Methods can be named constructor (class declaration)
esid: prod-ClassElement
features: [generators, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is not "constructor" and HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "constructor" and SpecialMethod of MethodDefinition is true.
ClassElement : static MethodDefinition
It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "prototype".
--- |
1201 |
grammar-static-ctor-meth-valid.js |
---
description: Static Methods can be named constructor (class declaration)
esid: prod-ClassElement
features: [class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is not "constructor" and HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "constructor" and SpecialMethod of MethodDefinition is true.
ClassElement : static MethodDefinition
It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
It is a Syntax Error if PropName of MethodDefinition is "prototype".
--- |
1173 |
grammar-static-private-async-gen-meth-prototype.js |
---
description: Static Async Generator Private Methods can be named "#prototype" (class declaration)
esid: prod-ClassElement
features: [async-iteration, class-static-methods-private, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : static MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is "prototype"
--- |
693 |
grammar-static-private-async-meth-prototype.js |
---
description: Static Async Private Methods can be named "#prototype" (class declaration)
esid: prod-ClassElement
features: [async-functions, class-static-methods-private, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : static MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is "prototype"
--- |
677 |
grammar-static-private-gen-meth-prototype.js |
---
description: Static Generator Private Methods can be named "#prototype" (class declaration)
esid: prod-ClassElement
features: [generators, class-static-methods-private, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : static MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is "prototype"
--- |
670 |
grammar-static-private-meth-prototype.js |
---
description: Static Private Methods can be named "#prototype" (class declaration)
esid: prod-ClassElement
features: [class-static-methods-private, class]
flags: [generated]
info: |
Class Definitions / Static Semantics: Early Errors
ClassElement : static MethodDefinition
It is a Syntax Error if PropName of MethodDefinition is "prototype"
--- |
642 |
shell.js |
|
0 |