computed.js (1209B)
1 // This file was procedurally generated from the following sources: 2 // - src/accessor-names/computed.case 3 // - src/accessor-names/default/cls-expr-inst.template 4 /*--- 5 description: Computed values as accessor property names (AssignmentExpression) (Class expression, instance method) 6 esid: sec-runtime-semantics-classdefinitionevaluation 7 features: [class] 8 flags: [generated] 9 info: | 10 [...] 11 21. For each ClassElement m in order from methods 12 a. If IsStatic of m is false, then 13 i. Let status be the result of performing PropertyDefinitionEvaluation 14 for m with arguments proto and false. 15 16 17 12.2.6.7 Runtime Semantics: Evaluation 18 19 [...] 20 21 ComputedPropertyName : [ AssignmentExpression ] 22 23 1. Let exprValue be the result of evaluating AssignmentExpression. 24 2. Let propName be ? GetValue(exprValue). 25 3. Return ? ToPropertyKey(propName). 26 ---*/ 27 var _; 28 29 30 var stringSet; 31 32 var C = class { 33 get [_ = 'str' + 'ing']() { return 'get string'; } 34 set [_ = 'str' + 'ing'](param) { stringSet = param; } 35 }; 36 37 assert.sameValue(C.prototype['string'], 'get string'); 38 39 C.prototype['string'] = 'set string'; 40 assert.sameValue(stringSet, 'set string'); 41 42 reportCompare(0, 0);