src/jdk/nashorn/internal/runtime/arrays/ArrayLikeIterator.java
Print this page
*** 24,33 ****
--- 24,34 ----
*/
package jdk.nashorn.internal.runtime.arrays;
import java.util.Iterator;
+ import jdk.nashorn.api.scripting.ScriptObjectMirror;
import jdk.nashorn.internal.runtime.JSType;
import jdk.nashorn.internal.runtime.ScriptObject;
/**
* Superclass for array iterators
*** 123,132 ****
--- 124,137 ----
obj = JSType.toScriptObject(obj);
if (obj instanceof ScriptObject) {
return new MapIterator((ScriptObject)obj, includeUndefined);
}
+ if (obj instanceof ScriptObjectMirror) {
+ return new ScriptObjectMirrorIterator((ScriptObjectMirror)obj, includeUndefined);
+ }
+
return new EmptyArrayLikeIterator();
}
/**
* ArrayLikeIterator factory (reverse order)
*** 144,153 ****
--- 149,162 ----
obj = JSType.toScriptObject(obj);
if (obj instanceof ScriptObject) {
return new ReverseMapIterator((ScriptObject)obj, includeUndefined);
}
+ if (obj instanceof ScriptObjectMirror) {
+ return new ReverseScriptObjectMirrorIterator((ScriptObjectMirror)obj, includeUndefined);
+ }
+
assert !obj.getClass().isArray();
return new EmptyArrayLikeIterator();
}