mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-29 18:53:58 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // This file was procedurally generated from the following sources:
 | |
| // - src/accessor-names/computed.case
 | |
| // - src/accessor-names/default/cls-expr-inst.template
 | |
| /*---
 | |
| description: Computed values as accessor property names (AssignmentExpression) (Class expression, instance method)
 | |
| esid: sec-runtime-semantics-classdefinitionevaluation
 | |
| features: [class]
 | |
| flags: [generated]
 | |
| 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.
 | |
| 
 | |
| 
 | |
|     12.2.6.7 Runtime Semantics: Evaluation
 | |
| 
 | |
|     [...]
 | |
| 
 | |
|     ComputedPropertyName : [ AssignmentExpression ]
 | |
| 
 | |
|     1. Let exprValue be the result of evaluating AssignmentExpression.
 | |
|     2. Let propName be ? GetValue(exprValue).
 | |
|     3. Return ? ToPropertyKey(propName).
 | |
| ---*/
 | |
| var _;
 | |
| 
 | |
| 
 | |
| var stringSet;
 | |
| 
 | |
| var C = class {
 | |
|   get [_ = 'str' + 'ing']() { return 'get string'; }
 | |
|   set [_ = 'str' + 'ing'](param) { stringSet = param; }
 | |
| };
 | |
| 
 | |
| assert.sameValue(C.prototype['string'], 'get string');
 | |
| 
 | |
| C.prototype['string'] = 'set string';
 | |
| assert.sameValue(stringSet, 'set string');
 |