void JSProxy::getGenericPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode) { JSProxy* thisObject = jsCast<JSProxy*>(object); // Get *all* of the property names, not just the generic ones, since we skipped the structure // ones above. thisObject->target()->methodTable(exec->vm())->getPropertyNames(thisObject->target(), exec, propertyNames, mode); }
void JSProxy::visitChildren(JSCell* cell, SlotVisitor& visitor) { JSProxy* thisObject = jsCast<JSProxy*>(cell); ASSERT_GC_OBJECT_INHERITS(thisObject, &s_info); COMPILE_ASSERT(StructureFlags & OverridesVisitChildren, OverridesVisitChildrenWithoutSettingFlag); ASSERT(thisObject->structure()->typeInfo().overridesVisitChildren()); Base::visitChildren(thisObject, visitor); visitor.append(&thisObject->m_target); }
bool JSProxy::deleteProperty(JSCell* cell, ExecState* exec, PropertyName propertyName) { JSProxy* thisObject = jsCast<JSProxy*>(cell); return thisObject->target()->methodTable(exec->vm())->deleteProperty(thisObject->target(), exec, propertyName); }
bool JSProxy::defineOwnProperty(JSObject* object, ExecState* exec, PropertyName propertyName, const PropertyDescriptor& descriptor, bool shouldThrow) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable(exec->vm())->defineOwnProperty(thisObject->target(), exec, propertyName, descriptor, shouldThrow); }
bool JSProxy::putByIndex(JSCell* cell, ExecState* exec, unsigned propertyName, JSValue value, bool shouldThrow) { JSProxy* thisObject = jsCast<JSProxy*>(cell); return thisObject->target()->methodTable(exec->vm())->putByIndex(thisObject->target(), exec, propertyName, value, shouldThrow); }
bool JSProxy::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot& slot) { JSProxy* thisObject = jsCast<JSProxy*>(cell); return thisObject->target()->methodTable(exec->vm())->put(thisObject->target(), exec, propertyName, value, slot); }
bool JSProxy::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned propertyName, PropertySlot& slot) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable(exec->vm())->getOwnPropertySlotByIndex(thisObject->target(), exec, propertyName, slot); }
JSValue JSProxy::getPrototype(JSObject* object, ExecState* exec) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable(exec->vm())->getPrototype(thisObject->target(), exec); }
void JSProxy::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode) { JSProxy* thisObject = jsCast<JSProxy*>(object); thisObject->target()->methodTable(exec->vm())->getOwnPropertyNames(thisObject->target(), exec, propertyNames, mode); }
uint32_t JSProxy::getEnumerableLength(ExecState* exec, JSObject* object) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable(exec->vm())->getEnumerableLength(exec, thisObject->target()); }
bool JSProxy::preventExtensions(JSObject* object, ExecState* exec) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable(exec->vm())->preventExtensions(thisObject->target(), exec); }
void JSProxy::putDirectVirtual(JSObject* object, ExecState* exec, PropertyName propertyName, JSValue value, unsigned attributes) { JSProxy* thisObject = jsCast<JSProxy*>(object); thisObject->target()->putDirectVirtual(thisObject->target(), exec, propertyName, value, attributes); }
bool JSProxy::getOwnPropertyDescriptor(JSObject* object, ExecState* exec, PropertyName propertyName, PropertyDescriptor& descriptor) { JSProxy* thisObject = jsCast<JSProxy*>(object); return thisObject->target()->methodTable()->getOwnPropertyDescriptor(thisObject->target(), exec, propertyName, descriptor); }
bool JSProxy::getOwnPropertySlot(JSCell* cell, ExecState* exec, PropertyName propertyName, PropertySlot& slot) { JSProxy* thisObject = jsCast<JSProxy*>(cell); return thisObject->target()->methodTable()->getOwnPropertySlot(thisObject->target(), exec, propertyName, slot); }
bool JSProxy::deletePropertyByIndex(JSCell* cell, ExecState* exec, unsigned propertyName) { JSProxy* thisObject = jsCast<JSProxy*>(cell); return thisObject->target()->methodTable()->deletePropertyByIndex(thisObject->target(), exec, propertyName); }