cpn-class-expr-accessors-computed-property-name-from-math.js (1766B)
1 // This file was procedurally generated from the following sources: 2 // - src/computed-property-names/computed-property-name-from-math.case 3 // - src/computed-property-names/evaluation/class-expression-accessors.template 4 /*--- 5 description: Computed property name from math (ComputedPropertyName in ClassExpression) 6 esid: prod-ComputedPropertyName 7 features: [computed-property-names, exponentiation] 8 flags: [generated] 9 info: | 10 ClassExpression: 11 classBindingIdentifier opt ClassTail 12 13 ClassTail: 14 ClassHeritage opt { ClassBody opt } 15 16 ClassBody: 17 ClassElementList 18 19 ClassElementList: 20 ClassElement 21 22 ClassElement: 23 MethodDefinition 24 25 MethodDefinition: 26 PropertyName ... 27 get PropertyName ... 28 set PropertyName ... 29 30 PropertyName: 31 ComputedPropertyName 32 33 ComputedPropertyName: 34 [ AssignmentExpression ] 35 ---*/ 36 37 38 let C = class { 39 get [1 + 2 - 3 * 4 / 5 ** 6]() { 40 return 2.999232; 41 } 42 43 set [1 + 2 - 3 * 4 / 5 ** 6](v) { 44 return 2.999232; 45 } 46 47 static get [1 + 2 - 3 * 4 / 5 ** 6]() { 48 return 2.999232; 49 } 50 51 static set [1 + 2 - 3 * 4 / 5 ** 6](v) { 52 return 2.999232; 53 } 54 }; 55 56 let c = new C(); 57 58 assert.sameValue( 59 c[1 + 2 - 3 * 4 / 5 ** 6], 60 2.999232 61 ); 62 assert.sameValue( 63 c[1 + 2 - 3 * 4 / 5 ** 6] = 2.999232, 64 2.999232 65 ); 66 67 assert.sameValue( 68 C[1 + 2 - 3 * 4 / 5 ** 6], 69 2.999232 70 ); 71 assert.sameValue( 72 C[1 + 2 - 3 * 4 / 5 ** 6] = 2.999232, 73 2.999232 74 ); 75 assert.sameValue( 76 c[String(1 + 2 - 3 * 4 / 5 ** 6)], 77 2.999232 78 ); 79 assert.sameValue( 80 c[String(1 + 2 - 3 * 4 / 5 ** 6)] = 2.999232, 81 2.999232 82 ); 83 84 assert.sameValue( 85 C[String(1 + 2 - 3 * 4 / 5 ** 6)], 86 2.999232 87 ); 88 assert.sameValue( 89 C[String(1 + 2 - 3 * 4 / 5 ** 6)] = 2.999232, 90 2.999232 91 ); 92 93 reportCompare(0, 0);