aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-09-01 00:47:28 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-02 17:27:36 +0200
commit036d1bcde9096ff71bf042caa14996aa71fae331 (patch)
tree8a1cee6ff3c61dc50319ab936883281f7c7f00e9 /src
parent0dbc19bc8073ec81bcd13cdf0e4c6022d4210b48 (diff)
Inline identifier lookup where it makes sense
Change-Id: I42ac6f4232fec2ce1535a007007542d8cc116433 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/qml/jsruntime/qv4identifiertable.cpp2
-rw-r--r--src/qml/jsruntime/qv4identifiertable_p.h9
2 files changed, 9 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4identifiertable.cpp b/src/qml/jsruntime/qv4identifiertable.cpp
index 07c19e4f8c..618696a124 100644
--- a/src/qml/jsruntime/qv4identifiertable.cpp
+++ b/src/qml/jsruntime/qv4identifiertable.cpp
@@ -135,7 +135,7 @@ String *IdentifierTable::insertString(const QString &s)
}
-Identifier *IdentifierTable::identifier(String *str)
+Identifier *IdentifierTable::identifierImpl(String *str)
{
if (str->identifier)
return str->identifier;
diff --git a/src/qml/jsruntime/qv4identifiertable_p.h b/src/qml/jsruntime/qv4identifiertable_p.h
index 0f9a5921f9..6450a874d2 100644
--- a/src/qml/jsruntime/qv4identifiertable_p.h
+++ b/src/qml/jsruntime/qv4identifiertable_p.h
@@ -68,10 +68,17 @@ public:
String *insertString(const QString &s);
- Identifier *identifier(String *str);
+ Identifier *identifier(String *str) {
+ if (str->identifier)
+ return str->identifier;
+ return identifierImpl(str);
+ }
+
Identifier *identifier(const QString &s);
Identifier *identifier(const char *s, int len);
+ Identifier *identifierImpl(String *str);
+
void mark() {
for (int i = 0; i < alloc; ++i)
if (entries[i])