diff options
author | Aaron Kennedy <aaron.kennedy@nokia.com> | 2011-06-14 11:52:30 +1000 |
---|---|---|
committer | Aaron Kennedy <aaron.kennedy@nokia.com> | 2011-06-14 11:52:30 +1000 |
commit | 49cc32e6c91b0ebe935810f3d5d581e6e8dfcc46 (patch) | |
tree | d60553b9c17c424a264333ff2183d0db39d40ab2 /src/declarative/qml/qdeclarativepropertycache_p.h | |
parent | 797be6d11b0bfe6c46b4e69cd6933990925b6093 (diff) |
Add QHashedV8String to improve lookup performance
Also inline QV8QObjectWrapper::getProperty() which significantly
improves context lookups which contain a lot of QObject property
lookup misses.
Diffstat (limited to 'src/declarative/qml/qdeclarativepropertycache_p.h')
-rw-r--r-- | src/declarative/qml/qdeclarativepropertycache_p.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/declarative/qml/qdeclarativepropertycache_p.h b/src/declarative/qml/qdeclarativepropertycache_p.h index 87005eb8f4..b97c48b777 100644 --- a/src/declarative/qml/qdeclarativepropertycache_p.h +++ b/src/declarative/qml/qdeclarativepropertycache_p.h @@ -158,7 +158,7 @@ public: static Data create(const QMetaObject *, const QString &); - inline Data *property(v8::Handle<v8::String>) const; + inline Data *property(const QHashedV8String &) const; Data *property(const QString &) const; Data *property(int) const; Data *method(int) const; @@ -169,7 +169,7 @@ public: inline QDeclarativeEngine *qmlEngine() const; static Data *property(QDeclarativeEngine *, QObject *, const QString &, Data &); - static Data *property(QDeclarativeEngine *, QObject *, v8::Handle<v8::String>, Data &); + static Data *property(QDeclarativeEngine *, QObject *, const QHashedV8String &, Data &); protected: virtual void clear(); @@ -250,7 +250,7 @@ QDeclarativeEngine *QDeclarativePropertyCache::qmlEngine() const return engine; } -QDeclarativePropertyCache::Data *QDeclarativePropertyCache::property(v8::Handle<v8::String> str) const +QDeclarativePropertyCache::Data *QDeclarativePropertyCache::property(const QHashedV8String &str) const { QDeclarativePropertyCache::RData **rv = stringCache.value(str); return rv?*rv:0; |