JSEnumerateOp is the type of the JSClass.enumerate callback.
Syntax
typedef bool (* JSEnumerateOp)(JSContext *cx, JS::HandleObject obj);
| Name | Type | Description |
|---|---|---|
cx |
JSContext * |
Pointer to the JS context in which the enumeration is taking place. |
obj |
JS::HandleObject |
Pointer to the object to be enumerated. |
Description
JSEnumerateOp is called just before an object is enumerated (via a for...in statement, an array comprehension, or a call to JS_Enumerate). It should define any remaining lazy properties that should be enumerable but are not yet defined in obj. This hook does not implement iteration: once the properties are defined, the JavaScript engine can enumerate them.
JSClass hooks
JSClass offers following hook:
- The
JSClass.enumeratehook is for classes that implement lazy properties usingJSClass.resolve.