test262/test/language/statements/class/syntax/class-expression-binding-identifier-opt-class-element-list.js
Rick Waldron 29e2990d9b 14.5 Class Definitions
- 14.5.1 Static Semantics: Early Errors
- 14.5.3 Static Semantics: ConstructorMethod
- 14.5.14 Runtime Semantics: ClassDefinitionEvaluation
2015-05-02 14:06:57 -04:00

40 lines
927 B
JavaScript

// Copyright (C) 2015 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 14.5
description: >
ClassExpression[Yield,GeneratorParameter] :
class BindingIdentifier[?Yield]opt ClassTail[?Yield,?GeneratorParameter]
ClassDeclaration:
class BindingIdentifier ClassTail
ClassTail:
... { ClassBodyopt }
ClassBody[Yield] :
ClassElementList[?Yield]
ClassElementList[Yield] :
ClassElement[?Yield]
ClassElementList[?Yield] ClassElement[?Yield]
ClassElement[Yield] :
MethodDefinition[?Yield]
static MethodDefinition[?Yield]
;
---*/
var A = class B {
method() {}
static method() {}
;
}
assert.sameValue(typeof A, "function");
assert.sameValue(typeof A.prototype.method, "function");
assert.sameValue(typeof A.method, "function");
assert.sameValue(typeof B, "undefined");