Home | History | Annotate | Download | only in runtime

Lines Matching full:slot

108         virtual void putWithAttributes(ExecState*, const Identifier& propertyName, JSValue value, unsigned attributes, bool checkReadOnly, PutPropertySlot& slot);
171 void putDirect(const Identifier& propertyName, JSValue value, unsigned attr, bool checkReadOnly, PutPropertySlot& slot);
175 void putDirectFunction(const Identifier& propertyName, JSCell* value, unsigned attr, bool checkReadOnly, PutPropertySlot& slot);
257 void putDirectInternal(const Identifier& propertyName, JSValue value, unsigned attr, bool checkReadOnly, PutPropertySlot& slot, JSCell*);
258 void putDirectInternal(JSGlobalData&, const Identifier& propertyName, JSValue value, unsigned attr, bool checkReadOnly, PutPropertySlot& slot);
349 ALWAYS_INLINE bool JSObject::inlineGetOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
353 fillGetterPropertySlot(slot, location);
355 slot.setValueSlot(this, location, offsetForLocation(location));
361 slot.setValue(prototype());
371 ALWAYS_INLINE bool JSObject::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
373 return inlineGetOwnPropertySlot(exec, propertyName, slot);
376 ALWAYS_INLINE bool JSCell::fastGetOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
379 return asObject(this)->inlineGetOwnPropertySlot(exec, propertyName, slot);
380 return getOwnPropertySlot(exec, propertyName, slot);
385 ALWAYS_INLINE bool JSObject::getPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
389 if (object->fastGetOwnPropertySlot(exec, propertyName, slot))
398 ALWAYS_INLINE bool JSObject::getPropertySlot(ExecState* exec, unsigned propertyName, PropertySlot& slot)
402 if (object->getOwnPropertySlot(exec, propertyName, slot))
413 PropertySlot slot(this);
414 if (const_cast<JSObject*>(this)->getPropertySlot(exec, propertyName, slot))
415 return slot.getValue(exec, propertyName);
422 PropertySlot slot(this);
423 if (const_cast<JSObject*>(this)->getPropertySlot(exec, propertyName, slot))
424 return slot.getValue(exec, propertyName);
429 inline void JSObject::putDirectInternal(const Identifier& propertyName, JSValue value, unsigned attributes, bool checkReadOnly, PutPropertySlot& slot, JSCell* specificFunction)
445 slot.setExistingProperty(this, offset);
458 slot.setNewProperty(this, offset);
473 slot.setNewProperty(this, offset);
487 // Function transitions are not currently cachable, so leave the slot in an uncachable state.
491 slot.setExistingProperty(this, offset);
513 // Function transitions are not currently cachable, so leave the slot in an uncachable state.
515 slot.setNewProperty(this, offset);
518 inline void JSObject::putDirectInternal(JSGlobalData& globalData, const Identifier& propertyName, JSValue value, unsigned attributes, bool checkReadOnly, PutPropertySlot& slot)
523 putDirectInternal(propertyName, value, attributes, checkReadOnly, slot, getJSFunction(globalData, value));
528 PutPropertySlot slot;
529 putDirectInternal(propertyName, value, attributes, false, slot, getJSFunction(globalData, value));
532 inline void JSObject::putDirect(const Identifier& propertyName, JSValue value, unsigned attributes, bool checkReadOnly, PutPropertySlot& slot)
537 putDirectInternal(propertyName, value, attributes, checkReadOnly, slot, 0);
542 PutPropertySlot slot;
543 putDirectInternal(propertyName, value, attributes, false, slot, 0);
546 inline void JSObject::putDirectFunction(const Identifier& propertyName, JSCell* value, unsigned attributes, bool checkReadOnly, PutPropertySlot& slot)
548 putDirectInternal(propertyName, value, attributes, checkReadOnly, slot, value);
553 PutPropertySlot slot;
554 putDirectInternal(propertyName, value, attr, false, slot, value);
589 PropertySlot slot(asValue());
590 return get(exec, propertyName, slot);
593 inline JSValue JSValue::get(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) const
599 if (!prototype->getPropertySlot(exec, propertyName, slot))
601 return slot.getValue(exec, propertyName);
605 if (cell->fastGetOwnPropertySlot(exec, propertyName, slot))
606 return slot.getValue(exec, propertyName);
616 PropertySlot slot(asValue());
617 return get(exec, propertyName, slot);
620 inline JSValue JSValue::get(ExecState* exec, unsigned propertyName, PropertySlot& slot) const
624 if (!prototype->getPropertySlot(exec, propertyName, slot))
626 return slot.getValue(exec, propertyName);
630 if (cell->getOwnPropertySlot(exec, propertyName, slot))
631 return slot.getValue(exec, propertyName);
639 inline void JSValue::put(ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot)
642 synthesizeObject(exec)->put(exec, propertyName, value, slot);
645 asCell()->put(exec, propertyName, value, slot);