summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Varga <pvarga@inf.u-szeged.hu>2011-06-22 10:17:42 +0200
committerJedrzej Nowacki <jedrzej.nowacki@nokia.com>2011-06-22 10:17:42 +0200
commit76d56a9fe409a345e446b2113c634fb6c57d267c (patch)
treed6dd6f971b7389fe5ac4b84c113862ff92720ec8
parent65bff648ce5af00b11dcdd60679d4cde1d985dc9 (diff)
Remove QSOGO::getOwnPropertyNames method
Replace the usages of this function by proper V8 API call: Object::GetOwnPropertyNames. Merge-request: 4 Reviewed-by: Jedrzej Nowacki <jedrzej.nowacki@nokia.com>
-rw-r--r--src/script/api/qscriptclass.cpp2
-rw-r--r--src/script/api/qscriptengine_impl_p.h9
-rw-r--r--src/script/api/qscriptengine_p.h1
-rw-r--r--src/script/api/qscriptoriginalglobalobject_p.h15
-rw-r--r--src/script/api/qscriptvalueiterator.cpp4
5 files changed, 3 insertions, 28 deletions
diff --git a/src/script/api/qscriptclass.cpp b/src/script/api/qscriptclass.cpp
index 3d9a7ed..e8d858c 100644
--- a/src/script/api/qscriptclass.cpp
+++ b/src/script/api/qscriptclass.cpp
@@ -207,7 +207,7 @@ v8::Handle<v8::Array> QScriptClassObject::enumerate()
}
v8::HandleScope handleScope;
- v8::Handle<v8::Array> originalNames = engine->getOwnPropertyNames(m_original);
+ v8::Handle<v8::Array> originalNames = m_original->GetOwnPropertyNames();
v8::Handle<v8::Array> names;
uint32_t idx = 0;
if (m_scriptclass) {
diff --git a/src/script/api/qscriptengine_impl_p.h b/src/script/api/qscriptengine_impl_p.h
index c58441f..d3dc599 100644
--- a/src/script/api/qscriptengine_impl_p.h
+++ b/src/script/api/qscriptengine_impl_p.h
@@ -68,15 +68,6 @@ inline QScriptEnginePrivate::operator v8::Handle<v8::Context>()
/*!
\internal
- returns all property names of an object (same as ECMA getOwnPropertyNames)
-*/
-inline v8::Local<v8::Array> QScriptEnginePrivate::getOwnPropertyNames(v8::Handle<v8::Object> object) const
-{
- return m_originalGlobalObject.getOwnPropertyNames(object);
-}
-
-/*!
- \internal
\note property can be index (v8::Integer) or a property (v8::String) name, according to ECMA script
property would be converted to a string.
*/
diff --git a/src/script/api/qscriptengine_p.h b/src/script/api/qscriptengine_p.h
index 08d1ff7..5e006b4 100644
--- a/src/script/api/qscriptengine_p.h
+++ b/src/script/api/qscriptengine_p.h
@@ -148,7 +148,6 @@ public:
inline v8::Handle<v8::Value> makeJSValue(qsreal value);
inline v8::Handle<v8::Value> makeJSValue(QScriptValue::SpecialValue value);
inline v8::Handle<v8::Value> makeJSValue(const QString& value);
- inline v8::Local<v8::Array> getOwnPropertyNames(v8::Handle<v8::Object> object) const;
inline QScriptValue::PropertyFlags getPropertyFlags(v8::Handle<v8::Object> object, v8::Handle<v8::Value> property, const QScriptValue::ResolveFlags& mode);
inline v8::Local<v8::Value> getOwnProperty(v8::Handle<v8::Object> object, v8::Handle<v8::Value> property) const;
inline v8::Local<v8::Value> getOwnProperty(v8::Handle<v8::Object> object, uint32_t index) const;
diff --git a/src/script/api/qscriptoriginalglobalobject_p.h b/src/script/api/qscriptoriginalglobalobject_p.h
index f6f48b9..9ab2aa1 100644
--- a/src/script/api/qscriptoriginalglobalobject_p.h
+++ b/src/script/api/qscriptoriginalglobalobject_p.h
@@ -51,7 +51,6 @@ public:
inline QScriptOriginalGlobalObject(const QScriptEnginePrivate *engine, v8::Handle<v8::Context> context);
inline void destroy();
- inline v8::Local<v8::Array> getOwnPropertyNames(v8::Handle<v8::Object> object) const;
inline QScriptValue::PropertyFlags getPropertyFlags(v8::Handle<v8::Object> object, v8::Handle<v8::Value> property, const QScriptValue::ResolveFlags& mode);
inline v8::Local<v8::Value> getOwnProperty(v8::Handle<v8::Object> object, v8::Handle<v8::Value> property) const;
inline void installArgFunctionOnOrgStringPrototype(v8::Handle<v8::Function> arg);
@@ -66,7 +65,6 @@ private:
v8::Persistent<v8::Object> m_stringConstructor;
v8::Persistent<v8::Value> m_stringPrototype;
v8::Persistent<v8::Function> m_ownPropertyDescriptor;
- v8::Persistent<v8::Function> m_ownPropertyNames;
v8::Persistent<v8::Object> m_globalObject;
v8::Persistent<v8::Function> m_defineGetter;
v8::Persistent<v8::Function> m_defineSetter;
@@ -94,11 +92,6 @@ QScriptOriginalGlobalObject::QScriptOriginalGlobalObject(const QScriptEnginePriv
Q_ASSERT(!ownPropertyDescriptor.IsEmpty());
m_ownPropertyDescriptor = v8::Persistent<v8::Function>::New(v8::Local<v8::Function>::Cast(ownPropertyDescriptor));
}
- { // Initialize m_ownPropertyNames.
- v8::Local<v8::Value> ownPropertyNames = objectConstructor->Get(v8::String::New("getOwnPropertyNames"));
- Q_ASSERT(!ownPropertyNames.IsEmpty());
- m_ownPropertyNames = v8::Persistent<v8::Function>::New(v8::Local<v8::Function>::Cast(ownPropertyNames));
- }
{
//initialize m_defineGetter and m_defineSetter
v8::Local<v8::Value> defineGetter = objectConstructor->Get(v8::String::New("__defineGetter__"));
@@ -153,20 +146,12 @@ inline void QScriptOriginalGlobalObject::destroy()
m_stringConstructor.Dispose();
m_stringPrototype.Dispose();
m_ownPropertyDescriptor.Dispose();
- m_ownPropertyNames.Dispose();
m_globalObject.Dispose();
m_defineGetter.Dispose();
m_defineSetter.Dispose();
// After this line this instance is unusable.
}
-inline v8::Local<v8::Array> QScriptOriginalGlobalObject::getOwnPropertyNames(v8::Handle<v8::Object> object) const
-{
- Q_ASSERT(!object.IsEmpty());
- v8::Handle<v8::Value> argv[] = {object};
- return v8::Local<v8::Array>::Cast(m_ownPropertyNames->Call(m_globalObject, /* argc */ 1, argv));
-}
-
inline QScriptValue::PropertyFlags QScriptOriginalGlobalObject::getPropertyFlags(v8::Handle<v8::Object> object, v8::Handle<v8::Value> property, const QScriptValue::ResolveFlags& mode)
{
Q_ASSERT(object->IsObject());
diff --git a/src/script/api/qscriptvalueiterator.cpp b/src/script/api/qscriptvalueiterator.cpp
index de0c316..c9bcbd3 100644
--- a/src/script/api/qscriptvalueiterator.cpp
+++ b/src/script/api/qscriptvalueiterator.cpp
@@ -142,9 +142,9 @@ inline QScriptValueIteratorPrivate::QScriptValueIteratorPrivate(const QScriptVal
&& data->scriptClass()
&& (m_classIterator = data->scriptClass()->userCallback()->newIterator(QScriptValuePrivate::get(value)))) {
// we need to wrap custom iterator.
- names = engine->getOwnPropertyNames(data->original());
+ names = data->original()->GetOwnPropertyNames();
} else
- names = engine->getOwnPropertyNames(obj);
+ names = obj->GetOwnPropertyNames();
uint32_t count = names->Length();
Local<String> name;