|
1 // All iterators of the same collection type share their immediate prototype. |
|
2 // Those prototype objects in turn inherit directly from Iterator.prototype. |
|
3 |
|
4 load(libdir + "iteration.js"); |
|
5 |
|
6 function test(obj0, obj1) { |
|
7 var iter0 = obj0[std_iterator](), iter1 = obj1[std_iterator](); |
|
8 var proto = Object.getPrototypeOf(iter0); |
|
9 assertEq(Object.getPrototypeOf(iter1), proto); |
|
10 assertEq(Object.getPrototypeOf(proto), Iterator.prototype); |
|
11 } |
|
12 |
|
13 test([], [1]); |
|
14 test(Map(), Map([[1, 1]])); |
|
15 test(Set(), Set([1])); |