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