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.
JSClass.reserveSlots callback is called each time a new object is created.
typedef uint32 (*JSReserveSlotsOp)(JSContext *cx, JSObject *obj);
||The JS context in which the new object is being created.|
||The new object.|
JSClass.reserveSlots hook allows a class to make computed per-instance object slots reservations, in addition to or instead of using
JSCLASS_HAS_RESERVED_SLOTS(n) in the
JSClass.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 using
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).