62
static const HashTable JSHTMLHtmlElementConstructorTable =
58
static JSC_CONST_HASHTABLE HashTable JSHTMLHtmlElementConstructorTable =
63
59
#if ENABLE(PERFECT_HASH_SIZE)
64
60
{ 0, JSHTMLHtmlElementConstructorTableValues, 0 };
66
62
{ 1, 0, JSHTMLHtmlElementConstructorTableValues, 0 };
69
class JSHTMLHtmlElementConstructor : public DOMObject {
65
class JSHTMLHtmlElementConstructor : public DOMConstructorObject {
71
JSHTMLHtmlElementConstructor(ExecState* exec)
72
: DOMObject(JSHTMLHtmlElementConstructor::createStructure(exec->lexicalGlobalObject()->objectPrototype()))
67
JSHTMLHtmlElementConstructor(ExecState* exec, JSDOMGlobalObject* globalObject)
68
: DOMConstructorObject(JSHTMLHtmlElementConstructor::createStructure(globalObject->objectPrototype()), globalObject)
74
putDirect(exec->propertyNames().prototype, JSHTMLHtmlElementPrototype::self(exec, exec->lexicalGlobalObject()), None);
70
putDirect(exec->propertyNames().prototype, JSHTMLHtmlElementPrototype::self(exec, globalObject), None);
76
72
virtual bool getOwnPropertySlot(ExecState*, const Identifier&, PropertySlot&);
73
virtual bool getOwnPropertyDescriptor(ExecState*, const Identifier&, PropertyDescriptor&);
77
74
virtual const ClassInfo* classInfo() const { return &s_info; }
78
75
static const ClassInfo s_info;
80
static PassRefPtr<Structure> createStructure(JSValuePtr proto)
77
static PassRefPtr<Structure> createStructure(JSValue proto)
82
79
return Structure::create(proto, TypeInfo(ObjectType, ImplementsHasInstance));
90
87
return getStaticValueSlot<JSHTMLHtmlElementConstructor, DOMObject>(exec, &JSHTMLHtmlElementConstructorTable, this, propertyName, slot);
90
bool JSHTMLHtmlElementConstructor::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
92
return getStaticValueDescriptor<JSHTMLHtmlElementConstructor, DOMObject>(exec, &JSHTMLHtmlElementConstructorTable, this, propertyName, descriptor);
93
95
/* Hash table for prototype */
95
97
static const HashTableValue JSHTMLHtmlElementPrototypeTableValues[1] =
114
116
const ClassInfo JSHTMLHtmlElement::s_info = { "HTMLHtmlElement", &JSHTMLElement::s_info, &JSHTMLHtmlElementTable, 0 };
116
JSHTMLHtmlElement::JSHTMLHtmlElement(PassRefPtr<Structure> structure, PassRefPtr<HTMLHtmlElement> impl)
117
: JSHTMLElement(structure, impl)
118
JSHTMLHtmlElement::JSHTMLHtmlElement(NonNullPassRefPtr<Structure> structure, JSDOMGlobalObject* globalObject, PassRefPtr<HTMLHtmlElement> impl)
119
: JSHTMLElement(structure, globalObject, impl)
128
130
return getStaticValueSlot<JSHTMLHtmlElement, Base>(exec, &JSHTMLHtmlElementTable, this, propertyName, slot);
131
JSValuePtr jsHTMLHtmlElementVersion(ExecState* exec, const Identifier&, const PropertySlot& slot)
133
HTMLHtmlElement* imp = static_cast<HTMLHtmlElement*>(static_cast<JSHTMLHtmlElement*>(asObject(slot.slotBase()))->impl());
133
bool JSHTMLHtmlElement::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
135
return getStaticValueDescriptor<JSHTMLHtmlElement, Base>(exec, &JSHTMLHtmlElementTable, this, propertyName, descriptor);
138
JSValue jsHTMLHtmlElementVersion(ExecState* exec, const Identifier&, const PropertySlot& slot)
140
JSHTMLHtmlElement* castedThis = static_cast<JSHTMLHtmlElement*>(asObject(slot.slotBase()));
142
HTMLHtmlElement* imp = static_cast<HTMLHtmlElement*>(castedThis->impl());
134
143
return jsString(exec, imp->version());
137
JSValuePtr jsHTMLHtmlElementConstructor(ExecState* exec, const Identifier&, const PropertySlot& slot)
146
JSValue jsHTMLHtmlElementConstructor(ExecState* exec, const Identifier&, const PropertySlot& slot)
139
return static_cast<JSHTMLHtmlElement*>(asObject(slot.slotBase()))->getConstructor(exec);
148
JSHTMLHtmlElement* domObject = static_cast<JSHTMLHtmlElement*>(asObject(slot.slotBase()));
149
return JSHTMLHtmlElement::getConstructor(exec, domObject->globalObject());
141
void JSHTMLHtmlElement::put(ExecState* exec, const Identifier& propertyName, JSValuePtr value, PutPropertySlot& slot)
151
void JSHTMLHtmlElement::put(ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot)
143
153
lookupPut<JSHTMLHtmlElement, Base>(exec, propertyName, value, &JSHTMLHtmlElementTable, this, slot);
146
void setJSHTMLHtmlElementVersion(ExecState* exec, JSObject* thisObject, JSValuePtr value)
156
void setJSHTMLHtmlElementVersion(ExecState* exec, JSObject* thisObject, JSValue value)
148
158
HTMLHtmlElement* imp = static_cast<HTMLHtmlElement*>(static_cast<JSHTMLHtmlElement*>(thisObject)->impl());
149
159
imp->setVersion(valueToStringWithNullCheck(exec, value));
152
JSValuePtr JSHTMLHtmlElement::getConstructor(ExecState* exec)
162
JSValue JSHTMLHtmlElement::getConstructor(ExecState* exec, JSGlobalObject* globalObject)
154
return getDOMConstructor<JSHTMLHtmlElementConstructor>(exec);
164
return getDOMConstructor<JSHTMLHtmlElementConstructor>(exec, static_cast<JSDOMGlobalObject*>(globalObject));