methods-gen-yield-as-generator-method-binding-identifier.js (866B)
1 // Copyright (C) 2013 the V8 project authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 description: > 6 `yield` is a valid BindingIdentifier for GeneratorMethods outside of 7 strict mode. 8 features: [generators] 9 es6id: 12.1.1 10 ---*/ 11 12 var iter, result; 13 class A { 14 *yield() { (yield 3) + (yield 4); } 15 } 16 17 iter = A.prototype.yield(); 18 19 result = iter.next(); 20 assert.sameValue(result.value, 3, 'First result `value`'); 21 assert.sameValue(result.done, false, 'First result `done` flag'); 22 23 result = iter.next(); 24 assert.sameValue(result.value, 4, 'Second result `value`'); 25 assert.sameValue(result.done, false, 'Second result `done` flag'); 26 27 result = iter.next(); 28 assert.sameValue(result.value, undefined, 'Third result `value`'); 29 assert.sameValue(result.done, true, 'Third result `done` flag'); 30 31 reportCompare(0, 0);