
JSObjectOps is not a supported API. Details of the API may change from one release to the next. This documentation should be considered SpiderMonkey internals documentation, not API documentation. See
bug 408416
.
The JSObjectOps.setProto and setParent callbacks implement the JS_SetPrototype and JS_SetParent functions. These callbacks share the same type, JSSetObjectSlotOp.
typedef JSBool (*JSSetObjectSlotOp)(JSContext *cx, JSObject *obj, uint32 slot, JSObject *pobj);
| Name | Type | Description |
|---|---|---|
cx |
JSContext * |
Pointer to the JS context in which the object's prototype or parent is being modified. |
obj |
JSObject * |
The object whose prototype or parent is being modified. |
slot |
uint32 |
The index of the slot being modified: JSSLOT_PROTO for the JSObjectOps.setProto callback, and JSSLOT_PARENT for the JSObjectOps.setParent callback. |
pobj |
JSObject * |
The new prototype or parent object. |
These hooks must check for cycles without deadlocking, and otherwise take special steps. See js_SetPrototype or js_SetParent in js/src/jsobj.c
for an example.
Page last modified 15:11, 26 Mar 2008 by Jorend