summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h
diff options
context:
space:
mode:
authorBenjamin Poulain <benjamin.poulain@nokia.com>2009-08-03 14:12:10 (GMT)
committerBenjamin Poulain <benjamin.poulain@nokia.com>2009-08-03 14:18:09 (GMT)
commite520df1f8678bd59adb341fb586f008a7de17fe8 (patch)
treec8cfbf8e651c1e8aa5f9e0f305757b254e9ab6c4 /src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h
parentecb53d192b4a56cd71c251621bec15a509307b23 (diff)
downloadQt-e520df1f8678bd59adb341fb586f008a7de17fe8.zip
Qt-e520df1f8678bd59adb341fb586f008a7de17fe8.tar.gz
Qt-e520df1f8678bd59adb341fb586f008a7de17fe8.tar.bz2
Complete the implementation of QScriptValueIterator with JSCore
This new implementation of QScriptValueIterator passes all the tests. QScriptValueIterator uses an linked list instead of JSC::PropertyNameArray so the list can be modified by ::remove() and to be able to add internal properties for the strings and arrays. Structure::getPropertyNames() has been modified to not show the property from the prototype. Reviewed-by: Kent Hansen
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h')
-rw-r--r--src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h b/src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h
index 6c5e82f..0de03a3 100644
--- a/src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h
+++ b/src/3rdparty/webkit/JavaScriptCore/runtime/Structure.h
@@ -50,6 +50,11 @@ namespace JSC {
class Structure : public RefCounted<Structure> {
public:
+ enum ListedAttribute {
+ NonEnumerable = 1 << 1,
+ Prototype = 1 << 2
+ };
+
friend class JIT;
static PassRefPtr<Structure> create(JSValue prototype, const TypeInfo& typeInfo)
{
@@ -106,7 +111,7 @@ namespace JSC {
return get(propertyName._ustring.rep(), attributes, specificValue);
}
- void getPropertyNames(ExecState*, PropertyNameArray&, JSObject*, bool includeNonEnumerable = false);
+ void getPropertyNames(ExecState*, PropertyNameArray&, JSObject*, unsigned listedAttributes = Prototype);
bool hasGetterSetterProperties() const { return m_hasGetterSetterProperties; }
void setHasGetterSetterProperties(bool hasGetterSetterProperties) { m_hasGetterSetterProperties = hasGetterSetterProperties; }