-1:000000000000 | 0:c065a435c20e |
---|---|
1 // For-of passes one arg to "next". | |
2 | |
3 load(libdir + 'iteration.js') | |
4 | |
5 var log = ''; | |
6 | |
7 function Iter() { | |
8 function next() { | |
9 log += 'n'; | |
10 assertEq(arguments.length, 1) | |
11 assertEq(arguments[0], undefined) | |
12 return { get value() { throw 42; }, done: true } | |
13 } | |
14 | |
15 this[std_iterator] = function () { return this; } | |
16 this.next = next; | |
17 } | |
18 | |
19 for (var x of new Iter()) | |
20 throw 'not reached'; | |
21 | |
22 assertEq(log, 'n'); |