This article needs a technical review. How you can help.
Obsolete since JavaScript 1.8.5
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.
JSReserveSlotsOp
is the type of the JSClass.reserveSlots
.
Syntax
typedef uint32 (* JSReserveSlotsOp)(JSContext *cx, JSObject *obj);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
The JS context in which the new object is being created. |
obj |
JSObject * |
The new object. |
Description
Warning: JSAPI applications should not use this hook. A class cannot freely use a reserveSlots
hook to reserve a different number of slots for each object. Rather, within a JSRuntime
, every call to the same reserveSlots
hook must return the same value (excepting a few internal classes such as Function, Call, and Block).
JSClass
hooks
JSClass
offers the following hook:
-
The
JSClass.reserveSlots
callback is called each time a new object is created.The optional
JSClass.reserveSlots
hook allows a class to make computed per-instance object slots reservations, in addition to or instead of usingJSCLASS_HAS_RESERVED_SLOTS(n)
in theJSClass.flags
initializer to reserve a constant-per-class number of slots. Implementations of this hook should return the number of slots to reserve, not including any reserved by usingJSCLASS_HAS_RESERVED_SLOTS(n)
inJSClass.flags
.