diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2009-06-15 09:06:43 (GMT) |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2009-06-15 09:31:31 (GMT) |
commit | c411f16870f112c3407c28c22b617f613a82cff4 (patch) | |
tree | 29a1bcd590c8b31af2aab445bfe8a978dc5bf582 /src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp | |
parent | 3d77b56b32a0c53ec0bbfaa07236fedb900ff336 (diff) | |
download | Qt-c411f16870f112c3407c28c22b617f613a82cff4.zip Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.gz Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.bz2 |
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit-4.6-snapshot-15062009 ( 65232bf00dc494ebfd978f998c88f58d18ecce1e )
Diffstat (limited to 'src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp')
-rw-r--r-- | src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp | 222 |
1 files changed, 222 insertions, 0 deletions
diff --git a/src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp b/src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp new file mode 100644 index 0000000..e1316b7 --- /dev/null +++ b/src/3rdparty/webkit/WebCore/generated/JSClientRectList.cpp @@ -0,0 +1,222 @@ +/* + This file is part of the WebKit open source project. + This file has been generated by generate-bindings.pl. DO NOT MODIFY! + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "config.h" + +#include "JSClientRectList.h" + +#include <wtf/GetPtr.h> + +#include <runtime/PropertyNameArray.h> +#include "ClientRect.h" +#include "ClientRectList.h" +#include "ExceptionCode.h" +#include "JSClientRect.h" + +#include <runtime/Error.h> +#include <runtime/JSNumberCell.h> + +using namespace JSC; + +namespace WebCore { + +ASSERT_CLASS_FITS_IN_CELL(JSClientRectList); + +/* Hash table */ + +static const HashTableValue JSClientRectListTableValues[3] = +{ + { "length", DontDelete|ReadOnly, (intptr_t)jsClientRectListLength, (intptr_t)0 }, + { "constructor", DontEnum|ReadOnly, (intptr_t)jsClientRectListConstructor, (intptr_t)0 }, + { 0, 0, 0, 0 } +}; + +static const HashTable JSClientRectListTable = +#if ENABLE(PERFECT_HASH_SIZE) + { 15, JSClientRectListTableValues, 0 }; +#else + { 5, 3, JSClientRectListTableValues, 0 }; +#endif + +/* Hash table for constructor */ + +static const HashTableValue JSClientRectListConstructorTableValues[1] = +{ + { 0, 0, 0, 0 } +}; + +static const HashTable JSClientRectListConstructorTable = +#if ENABLE(PERFECT_HASH_SIZE) + { 0, JSClientRectListConstructorTableValues, 0 }; +#else + { 1, 0, JSClientRectListConstructorTableValues, 0 }; +#endif + +class JSClientRectListConstructor : public DOMObject { +public: + JSClientRectListConstructor(ExecState* exec) + : DOMObject(JSClientRectListConstructor::createStructure(exec->lexicalGlobalObject()->objectPrototype())) + { + putDirect(exec->propertyNames().prototype, JSClientRectListPrototype::self(exec, exec->lexicalGlobalObject()), None); + } + virtual bool getOwnPropertySlot(ExecState*, const Identifier&, PropertySlot&); + virtual const ClassInfo* classInfo() const { return &s_info; } + static const ClassInfo s_info; + + static PassRefPtr<Structure> createStructure(JSValue proto) + { + return Structure::create(proto, TypeInfo(ObjectType, ImplementsHasInstance)); + } +}; + +const ClassInfo JSClientRectListConstructor::s_info = { "ClientRectListConstructor", 0, &JSClientRectListConstructorTable, 0 }; + +bool JSClientRectListConstructor::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) +{ + return getStaticValueSlot<JSClientRectListConstructor, DOMObject>(exec, &JSClientRectListConstructorTable, this, propertyName, slot); +} + +/* Hash table for prototype */ + +static const HashTableValue JSClientRectListPrototypeTableValues[2] = +{ + { "item", DontDelete|Function, (intptr_t)jsClientRectListPrototypeFunctionItem, (intptr_t)1 }, + { 0, 0, 0, 0 } +}; + +static const HashTable JSClientRectListPrototypeTable = +#if ENABLE(PERFECT_HASH_SIZE) + { 0, JSClientRectListPrototypeTableValues, 0 }; +#else + { 2, 1, JSClientRectListPrototypeTableValues, 0 }; +#endif + +const ClassInfo JSClientRectListPrototype::s_info = { "ClientRectListPrototype", 0, &JSClientRectListPrototypeTable, 0 }; + +JSObject* JSClientRectListPrototype::self(ExecState* exec, JSGlobalObject* globalObject) +{ + return getDOMPrototype<JSClientRectList>(exec, globalObject); +} + +bool JSClientRectListPrototype::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) +{ + return getStaticFunctionSlot<JSObject>(exec, &JSClientRectListPrototypeTable, this, propertyName, slot); +} + +const ClassInfo JSClientRectList::s_info = { "ClientRectList", 0, &JSClientRectListTable, 0 }; + +JSClientRectList::JSClientRectList(PassRefPtr<Structure> structure, PassRefPtr<ClientRectList> impl) + : DOMObject(structure) + , m_impl(impl) +{ +} + +JSClientRectList::~JSClientRectList() +{ + forgetDOMObject(*Heap::heap(this)->globalData(), m_impl.get()); +} + +JSObject* JSClientRectList::createPrototype(ExecState* exec, JSGlobalObject* globalObject) +{ + return new (exec) JSClientRectListPrototype(JSClientRectListPrototype::createStructure(globalObject->objectPrototype())); +} + +bool JSClientRectList::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot) +{ + const HashEntry* entry = JSClientRectListTable.entry(exec, propertyName); + if (entry) { + slot.setCustom(this, entry->propertyGetter()); + return true; + } + bool ok; + unsigned index = propertyName.toUInt32(&ok, false); + if (ok && index < static_cast<ClientRectList*>(impl())->length()) { + slot.setCustomIndex(this, index, indexGetter); + return true; + } + return getStaticValueSlot<JSClientRectList, Base>(exec, &JSClientRectListTable, this, propertyName, slot); +} + +bool JSClientRectList::getOwnPropertySlot(ExecState* exec, unsigned propertyName, PropertySlot& slot) +{ + if (propertyName < static_cast<ClientRectList*>(impl())->length()) { + slot.setCustomIndex(this, propertyName, indexGetter); + return true; + } + return getOwnPropertySlot(exec, Identifier::from(exec, propertyName), slot); +} + +JSValue jsClientRectListLength(ExecState* exec, const Identifier&, const PropertySlot& slot) +{ + UNUSED_PARAM(exec); + ClientRectList* imp = static_cast<ClientRectList*>(static_cast<JSClientRectList*>(asObject(slot.slotBase()))->impl()); + return jsNumber(exec, imp->length()); +} + +JSValue jsClientRectListConstructor(ExecState* exec, const Identifier&, const PropertySlot& slot) +{ + return static_cast<JSClientRectList*>(asObject(slot.slotBase()))->getConstructor(exec); +} +void JSClientRectList::getPropertyNames(ExecState* exec, PropertyNameArray& propertyNames) +{ + for (unsigned i = 0; i < static_cast<ClientRectList*>(impl())->length(); ++i) + propertyNames.add(Identifier::from(exec, i)); + Base::getPropertyNames(exec, propertyNames); +} + +JSValue JSClientRectList::getConstructor(ExecState* exec) +{ + return getDOMConstructor<JSClientRectListConstructor>(exec); +} + +JSValue JSC_HOST_CALL jsClientRectListPrototypeFunctionItem(ExecState* exec, JSObject*, JSValue thisValue, const ArgList& args) +{ + UNUSED_PARAM(args); + if (!thisValue.isObject(&JSClientRectList::s_info)) + return throwError(exec, TypeError); + JSClientRectList* castedThisObj = static_cast<JSClientRectList*>(asObject(thisValue)); + ClientRectList* imp = static_cast<ClientRectList*>(castedThisObj->impl()); + int index = args.at(0).toInt32(exec); + if (index < 0) { + setDOMException(exec, INDEX_SIZE_ERR); + return jsUndefined(); + } + + + JSC::JSValue result = toJS(exec, WTF::getPtr(imp->item(index))); + return result; +} + + +JSValue JSClientRectList::indexGetter(ExecState* exec, const Identifier&, const PropertySlot& slot) +{ + JSClientRectList* thisObj = static_cast<JSClientRectList*>(asObject(slot.slotBase())); + return toJS(exec, static_cast<ClientRectList*>(thisObj->impl())->item(slot.index())); +} +JSC::JSValue toJS(JSC::ExecState* exec, ClientRectList* object) +{ + return getDOMObjectWrapper<JSClientRectList>(exec, object); +} +ClientRectList* toClientRectList(JSC::JSValue value) +{ + return value.isObject(&JSClientRectList::s_info) ? static_cast<JSClientRectList*>(asObject(value))->impl() : 0; +} + +} |