|
Classes |
| struct | JSObjectMap |
| struct | JSObject |
| struct | JSSharpObjectMap |
Defines |
| #define | OBJ_LOOKUP_PROPERTY(cx, obj, id, objp, propp) (obj)->map->ops->lookupProperty(cx,obj,id,objp,propp) |
| #define | OBJ_DEFINE_PROPERTY(cx, obj, id, value, getter, setter, attrs, propp) (obj)->map->ops->defineProperty(cx,obj,id,value,getter,setter,attrs,propp) |
| #define | OBJ_GET_PROPERTY(cx, obj, id, vp) (obj)->map->ops->getProperty(cx,obj,id,vp) |
| #define | OBJ_SET_PROPERTY(cx, obj, id, vp) (obj)->map->ops->setProperty(cx,obj,id,vp) |
| #define | OBJ_GET_ATTRIBUTES(cx, obj, id, prop, attrsp) (obj)->map->ops->getAttributes(cx,obj,id,prop,attrsp) |
| #define | OBJ_SET_ATTRIBUTES(cx, obj, id, prop, attrsp) (obj)->map->ops->setAttributes(cx,obj,id,prop,attrsp) |
| #define | OBJ_DELETE_PROPERTY(cx, obj, id, rval) (obj)->map->ops->deleteProperty(cx,obj,id,rval) |
| #define | OBJ_DEFAULT_VALUE(cx, obj, hint, vp) (obj)->map->ops->defaultValue(cx,obj,hint,vp) |
| #define | OBJ_ENUMERATE(cx, obj, enum_op, statep, idp) (obj)->map->ops->enumerate(cx,obj,enum_op,statep,idp) |
| #define | OBJ_CHECK_ACCESS(cx, obj, id, mode, vp, attrsp) (obj)->map->ops->checkAccess(cx,obj,id,mode,vp,attrsp) |
| #define | OBJ_THIS_OBJECT(cx, obj) |
| #define | OBJ_DROP_PROPERTY(cx, obj, prop) |
| #define | OBJ_GET_REQUIRED_SLOT(cx, obj, slot) |
| #define | OBJ_SET_REQUIRED_SLOT(cx, obj, slot, v) |
| #define | OBJ_TO_INNER_OBJECT(cx, obj) |
| #define | JSSLOT_PROTO 0 |
| #define | JSSLOT_PARENT 1 |
| #define | JSSLOT_CLASS 2 |
| #define | JSSLOT_PRIVATE 3 |
| #define | JSSLOT_START(clasp) |
| #define | JSSLOT_FREE(clasp) |
| #define | JS_INITIAL_NSLOTS 5 |
| #define | OBJ_CHECK_SLOT(obj, slot) ((void)0) |
| #define | LOCKED_OBJ_GET_SLOT(obj, slot) (OBJ_CHECK_SLOT(obj, slot), (obj)->slots[slot]) |
| #define | LOCKED_OBJ_SET_SLOT(obj, slot, value) (OBJ_CHECK_SLOT(obj, slot), (obj)->slots[slot] = (value)) |
| #define | LOCKED_OBJ_GET_PROTO(obj) JSVAL_TO_OBJECT(LOCKED_OBJ_GET_SLOT(obj, JSSLOT_PROTO)) |
| #define | LOCKED_OBJ_GET_CLASS(obj) ((JSClass *)JSVAL_TO_PRIVATE(LOCKED_OBJ_GET_SLOT(obj, JSSLOT_CLASS))) |
| #define | OBJ_GET_SLOT(cx, obj, slot) LOCKED_OBJ_GET_SLOT(obj,slot) |
| #define | OBJ_SET_SLOT(cx, obj, slot, value) LOCKED_OBJ_SET_SLOT(obj,slot,value) |
| #define | GC_AWARE_GET_SLOT(cx, obj, slot) LOCKED_OBJ_GET_SLOT(obj,slot) |
| #define | OBJ_GET_PROTO(cx, obj) JSVAL_TO_OBJECT(OBJ_GET_SLOT(cx, obj, JSSLOT_PROTO)) |
| #define | OBJ_SET_PROTO(cx, obj, proto) OBJ_SET_SLOT(cx, obj, JSSLOT_PROTO, OBJECT_TO_JSVAL(proto)) |
| #define | OBJ_GET_PARENT(cx, obj) JSVAL_TO_OBJECT(OBJ_GET_SLOT(cx, obj, JSSLOT_PARENT)) |
| #define | OBJ_SET_PARENT(cx, obj, parent) OBJ_SET_SLOT(cx, obj, JSSLOT_PARENT, OBJECT_TO_JSVAL(parent)) |
| #define | OBJ_GET_CLASS(cx, obj) ((JSClass *)JSVAL_TO_PRIVATE(OBJ_GET_SLOT(cx, obj, JSSLOT_CLASS))) |
| #define | MAP_IS_NATIVE(map) |
| #define | OBJ_IS_NATIVE(obj) MAP_IS_NATIVE((obj)->map) |
| #define | JSSLOT_BLOCK_DEPTH (JSSLOT_PRIVATE + 1) |
| #define | OBJ_BLOCK_COUNT(cx, obj) ((obj)->map->freeslot - (JSSLOT_BLOCK_DEPTH + 1)) |
| #define | OBJ_BLOCK_DEPTH(cx, obj) JSVAL_TO_INT(OBJ_GET_SLOT(cx, obj, JSSLOT_BLOCK_DEPTH)) |
| #define | OBJ_SET_BLOCK_DEPTH(cx, obj, depth) OBJ_SET_SLOT(cx, obj, JSSLOT_BLOCK_DEPTH, INT_TO_JSVAL(depth)) |
| #define | SHARP_BIT ((jsatomid) 1) |
| #define | BUSY_BIT ((jsatomid) 2) |
| #define | SHARP_ID_SHIFT 2 |
| #define | IS_SHARP(he) (JS_PTR_TO_UINT32((he)->value) & SHARP_BIT) |
| #define | MAKE_SHARP(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)|SHARP_BIT)) |
| #define | IS_BUSY(he) (JS_PTR_TO_UINT32((he)->value) & BUSY_BIT) |
| #define | MAKE_BUSY(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)|BUSY_BIT)) |
| #define | CLEAR_BUSY(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)&~BUSY_BIT)) |
Functions |
| | JS_FRIEND_DATA (JSObjectOps) js_ObjectOps |
| JSObject * | js_NewWithObject (JSContext *cx, JSObject *proto, JSObject *parent, jsint depth) |
| JSObject * | js_NewBlockObject (JSContext *cx) |
| JSObject * | js_CloneBlockObject (JSContext *cx, JSObject *proto, JSObject *parent, JSStackFrame *fp) |
| JSBool | js_PutBlockObject (JSContext *cx, JSObject *obj) |
| JSHashEntry * | js_EnterSharpObject (JSContext *cx, JSObject *obj, JSIdArray **idap, jschar **sp) |
| void | js_LeaveSharpObject (JSContext *cx, JSIdArray **idap) |
| void | js_GCMarkSharpMap (JSContext *cx, JSSharpObjectMap *map) |
| JSBool | js_obj_toSource (JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) |
| JSBool | js_obj_toString (JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) |
| JSBool | js_HasOwnPropertyHelper (JSContext *cx, JSObject *obj, JSLookupPropOp lookup, uintN argc, jsval *argv, jsval *rval) |
| JSObject * | js_InitBlockClass (JSContext *cx, JSObject *obj) |
| JSObject * | js_InitObjectClass (JSContext *cx, JSObject *obj) |
| void | js_InitObjectMap (JSObjectMap *map, jsrefcount nrefs, JSObjectOps *ops, JSClass *clasp) |
| JSObjectMap * | js_NewObjectMap (JSContext *cx, jsrefcount nrefs, JSObjectOps *ops, JSClass *clasp, JSObject *obj) |
| void | js_DestroyObjectMap (JSContext *cx, JSObjectMap *map) |
| JSObjectMap * | js_HoldObjectMap (JSContext *cx, JSObjectMap *map) |
| JSObjectMap * | js_DropObjectMap (JSContext *cx, JSObjectMap *map, JSObject *obj) |
| JSBool | js_GetClassId (JSContext *cx, JSClass *clasp, jsid *idp) |
| JSObject * | js_NewObject (JSContext *cx, JSClass *clasp, JSObject *proto, JSObject *parent) |
| JSBool | js_GetClassObject (JSContext *cx, JSObject *obj, JSProtoKey key, JSObject **objp) |
| JSBool | js_SetClassObject (JSContext *cx, JSObject *obj, JSProtoKey key, JSObject *cobj) |
| JSBool | js_FindClassObject (JSContext *cx, JSObject *start, jsid id, jsval *vp) |
| JSObject * | js_ConstructObject (JSContext *cx, JSClass *clasp, JSObject *proto, JSObject *parent, uintN argc, jsval *argv) |
| void | js_FinalizeObject (JSContext *cx, JSObject *obj) |
| JSBool | js_AllocSlot (JSContext *cx, JSObject *obj, uint32 *slotp) |
| void | js_FreeSlot (JSContext *cx, JSObject *obj, uint32 slot) |
| JSScopeProperty * | js_AddHiddenProperty (JSContext *cx, JSObject *obj, jsid id, JSPropertyOp getter, JSPropertyOp setter, uint32 slot, uintN attrs, uintN flags, intN shortid) |
| JSBool | js_LookupHiddenProperty (JSContext *cx, JSObject *obj, jsid id, JSObject **objp, JSProperty **propp) |
| JSScopeProperty * | js_AddNativeProperty (JSContext *cx, JSObject *obj, jsid id, JSPropertyOp getter, JSPropertyOp setter, uint32 slot, uintN attrs, uintN flags, intN shortid) |
| JSScopeProperty * | js_ChangeNativePropertyAttrs (JSContext *cx, JSObject *obj, JSScopeProperty *sprop, uintN attrs, uintN mask, JSPropertyOp getter, JSPropertyOp setter) |
| JSBool | js_DefineProperty (JSContext *cx, JSObject *obj, jsid id, jsval value, JSPropertyOp getter, JSPropertyOp setter, uintN attrs, JSProperty **propp) |
| JSBool | js_DefineNativeProperty (JSContext *cx, JSObject *obj, jsid id, jsval value, JSPropertyOp getter, JSPropertyOp setter, uintN attrs, uintN flags, intN shortid, JSProperty **propp) |
| | JS_FRIEND_API (JSBool) js_LookupProperty(JSContext *cx |
| JSBool | js_LookupPropertyWithFlags (JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp, JSProperty **propp) |
| JSObject * | js_FindIdentifierBase (JSContext *cx, jsid id) |
| JSObject * | js_FindVariableScope (JSContext *cx, JSFunction **funp) |
| JSBool | js_GetProperty (JSContext *cx, JSObject *obj, jsid id, jsval *vp) |
| JSBool | js_SetProperty (JSContext *cx, JSObject *obj, jsid id, jsval *vp) |
| JSBool | js_GetAttributes (JSContext *cx, JSObject *obj, jsid id, JSProperty *prop, uintN *attrsp) |
| JSBool | js_SetAttributes (JSContext *cx, JSObject *obj, jsid id, JSProperty *prop, uintN *attrsp) |
| JSBool | js_DeleteProperty (JSContext *cx, JSObject *obj, jsid id, jsval *rval) |
| JSBool | js_DefaultValue (JSContext *cx, JSObject *obj, JSType hint, jsval *vp) |
| JSIdArray * | js_NewIdArray (JSContext *cx, jsint length) |
| JSIdArray * | js_SetIdArrayLength (JSContext *cx, JSIdArray *ida, jsint length) |
| JSBool | js_Enumerate (JSContext *cx, JSObject *obj, JSIterateOp enum_op, jsval *statep, jsid *idp) |
| void | js_MarkNativeIteratorStates (JSContext *cx) |
| JSBool | js_CheckAccess (JSContext *cx, JSObject *obj, jsid id, JSAccessMode mode, jsval *vp, uintN *attrsp) |
| JSBool | js_Call (JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) |
| JSBool | js_Construct (JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) |
| JSBool | js_HasInstance (JSContext *cx, JSObject *obj, jsval v, JSBool *bp) |
| JSBool | js_SetProtoOrParent (JSContext *cx, JSObject *obj, uint32 slot, JSObject *pobj) |
| JSBool | js_IsDelegate (JSContext *cx, JSObject *obj, jsval v, JSBool *bp) |
| JSBool | js_GetClassPrototype (JSContext *cx, JSObject *scope, jsid id, JSObject **protop) |
| JSBool | js_SetClassPrototype (JSContext *cx, JSObject *ctor, JSObject *proto, uintN attrs) |
| JSBool | js_ValueToObject (JSContext *cx, jsval v, JSObject **objp) |
| JSObject * | js_ValueToNonNullObject (JSContext *cx, jsval v) |
| JSBool | js_TryValueOf (JSContext *cx, JSObject *obj, JSType type, jsval *rval) |
| JSBool | js_TryMethod (JSContext *cx, JSObject *obj, JSAtom *atom, uintN argc, jsval *argv, jsval *rval) |
| JSBool | js_XDRObject (JSXDRState *xdr, JSObject **objp) |
| uint32 | js_Mark (JSContext *cx, JSObject *obj, void *arg) |
| void | js_Clear (JSContext *cx, JSObject *obj) |
| jsval | js_GetRequiredSlot (JSContext *cx, JSObject *obj, uint32 slot) |
| JSBool | js_SetRequiredSlot (JSContext *cx, JSObject *obj, uint32 slot, jsval v) |
| JSObject * | js_CheckScopeChainValidity (JSContext *cx, JSObject *scopeobj, const char *caller) |
| JSBool | js_CheckPrincipalsAccess (JSContext *cx, JSObject *scopeobj, JSPrincipals *principals, JSAtom *caller) |
Variables |
| JSClass | js_ObjectClass |
| JSClass | js_WithClass |
| JSClass | js_BlockClass |
| const char | js_watch_str [] |
| const char | js_unwatch_str [] |
| const char | js_hasOwnProperty_str [] |
| const char | js_isPrototypeOf_str [] |
| const char | js_propertyIsEnumerable_str [] |
| const char | js_defineGetter_str [] |
| const char | js_defineSetter_str [] |
| const char | js_lookupGetter_str [] |
| const char | js_lookupSetter_str [] |
| JSObject * | obj |
| JSObject jsid | id |
| JSObject jsid JSObject ** | objp |
| JSObject jsid JSObject JSProperty ** | propp |
| jsid | id |
| jsid JSObject ** | objp |
| jsid JSObject JSObject ** | pobjp |
| jsid JSObject JSObject JSProperty ** | propp |