diff -r b72c6db6890b -r 5dc02b23752f src/script/bridge/qscriptdeclarativeobject_p.h --- a/src/script/bridge/qscriptdeclarativeobject_p.h Wed Jun 23 19:07:03 2010 +0300 +++ b/src/script/bridge/qscriptdeclarativeobject_p.h Tue Jul 06 15:10:48 2010 +0300 @@ -48,11 +48,12 @@ class QScriptDeclarativeClassPrivate { public: - QScriptDeclarativeClassPrivate() : engine(0), q_ptr(0), context(0) {} + QScriptDeclarativeClassPrivate() : engine(0), q_ptr(0), context(0), supportsCall(false) {} QScriptEngine *engine; QScriptDeclarativeClass *q_ptr; QScriptContext *context; + bool supportsCall:1; static QScriptDeclarativeClassPrivate *get(QScriptDeclarativeClass *c) { return c->d_ptr.data(); @@ -80,21 +81,22 @@ const JSC::Identifier& propertyName, JSC::JSValue, JSC::PutPropertySlot&); virtual bool deleteProperty(QScriptObject*, JSC::ExecState*, - const JSC::Identifier& propertyName, - bool checkDontDelete = true); - virtual bool getPropertyAttributes(const QScriptObject*, JSC::ExecState*, - const JSC::Identifier&, - unsigned&) const; + const JSC::Identifier& propertyName); virtual void getOwnPropertyNames(QScriptObject*, JSC::ExecState*, JSC::PropertyNameArray&, - bool includeNonEnumerable = false); + JSC::EnumerationMode mode = JSC::ExcludeDontEnumProperties); virtual JSC::CallType getCallData(QScriptObject*, JSC::CallData&); + static JSC::JSValue JSC_HOST_CALL call(JSC::ExecState*, JSC::JSObject*, + JSC::JSValue, const JSC::ArgList&); + virtual JSC::ConstructType getConstructData(QScriptObject*, JSC::ConstructData&); virtual bool hasInstance(QScriptObject*, JSC::ExecState*, JSC::JSValue value, JSC::JSValue proto); + bool compareToObject(QScriptObject *, JSC::ExecState *, JSC::JSObject *); + private: QScriptDeclarativeClass *m_class; QScriptDeclarativeClass::Object *m_object;