// Nested for-of loops can use the same generator-iterator. | |
function range(n) { | |
for (var i = 0; i < n; i++) | |
yield i; | |
} | |
var r = range(10); | |
for (var a of r) | |
for (var b of r) | |
for (var c of r) | |
for (var d of r) | |
; | |
assertEq(a, 0); | |
assertEq(b, 1); | |
assertEq(c, 2); | |
assertEq(d, 9); |