src/script/bridge/qscriptdeclarativeobject_p.h
changeset 30 5dc02b23752f
parent 18 2f34d5167611
--- 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;