Package org.htmlunit.corejs.javascript
Class ScriptRuntime.IdEnumeration
java.lang.Object
org.htmlunit.corejs.javascript.ScriptRuntime.IdEnumeration
- All Implemented Interfaces:
Serializable
- Enclosing class:
ScriptRuntime
This is the enumeration needed by the for..in statement.
See ECMA 12.6.3.
IdEnumeration maintains a ObjToIntMap to make sure a given id is enumerated only once across multiple objects in a prototype chain.
XXX - ECMA delete doesn't hide properties in the prototype, but js/ref does. This means that the js/ref for..in can avoid maintaining a hash table and instead perform lookups to see if a given property has already been enumerated.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) Object
(package private) boolean
(package private) int
(package private) Object[]
(package private) int
(package private) Scriptable
(package private) Scriptable
private static final long
(package private) ObjToIntMap
-
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
obj
Scriptable obj -
ids
Object[] ids -
used
ObjToIntMap used -
currentId
Object currentId -
index
int index -
enumType
int enumType -
enumNumbers
boolean enumNumbers -
iterator
Scriptable iterator
-
-
Constructor Details
-
IdEnumeration
private IdEnumeration()
-