tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

yield-as-statement.js (1237B)


      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 statement within generator function bodies.
      7 features: [generators]
      8 es6id: 14.4
      9 ---*/
     10 
     11 var iter, result;
     12 var obj = {
     13  *g1() { yield; },
     14  *g2() { yield 1; }
     15 };
     16 
     17 iter = obj.g1();
     18 result = iter.next();
     19 assert.sameValue(
     20  result.value, undefined, 'Without right-hand-side: first result `value`'
     21 );
     22 assert.sameValue(
     23  result.done, false, 'Without right-hand-side: first result `done` flag'
     24 );
     25 result = iter.next();
     26 assert.sameValue(
     27  result.value, undefined, 'Without right-hand-side: second result `value`'
     28 );
     29 assert.sameValue(
     30  result.done, true, 'Without right-hand-eside: second result `done` flag'
     31 );
     32 
     33 iter = obj.g2();
     34 result = iter.next();
     35 assert.sameValue(
     36  result.value, 1, 'With right-hand-side: first result `value`'
     37 );
     38 assert.sameValue(
     39  result.done, false, 'With right-hand-side: first result `done` flag'
     40 );
     41 result = iter.next();
     42 assert.sameValue(
     43  result.value, undefined, 'With right-hand-side: second result `value`'
     44 );
     45 assert.sameValue(
     46  result.done, true, 'With right-hand-eside: second result `done` flag'
     47 );
     48 
     49 reportCompare(0, 0);