aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4arraydata_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-11-17 14:54:52 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2014-11-22 07:58:59 +0100
commitef73060d05579c0c7ec9f272cc2b3acfb073a5a1 (patch)
treec2f382eea8112ef1a577f68472cae9ebd590c8b7 /src/qml/jsruntime/qv4arraydata_p.h
parentc044e33696170ae64a9f907d0bfb9f3513c2ca67 (diff)
Operate directly on Heap::ArrayData where possible
Change-Id: I87dfb3e9a07673b5c405619eab8b6ee292d5c097 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4arraydata_p.h')
-rw-r--r--src/qml/jsruntime/qv4arraydata_p.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/qml/jsruntime/qv4arraydata_p.h b/src/qml/jsruntime/qv4arraydata_p.h
index 606a34effd..fea57f4690 100644
--- a/src/qml/jsruntime/qv4arraydata_p.h
+++ b/src/qml/jsruntime/qv4arraydata_p.h
@@ -111,6 +111,13 @@ struct SimpleArrayData : public ArrayData {
struct SparseArrayData : public ArrayData {
inline SparseArrayData(ExecutionEngine *engine);
inline ~SparseArrayData();
+
+ uint mappedIndex(uint index) const {
+ SparseArrayNode *n = sparse->findNode(index);
+ if (!n)
+ return UINT_MAX;
+ return n->value;
+ }
};
}
@@ -218,12 +225,7 @@ struct Q_QML_EXPORT SparseArrayData : public ArrayData
return reinterpret_cast<Property *>(arrayData() + n->value);
}
- uint mappedIndex(uint index) const {
- SparseArrayNode *n = sparse()->findNode(index);
- if (!n)
- return UINT_MAX;
- return n->value;
- }
+ uint mappedIndex(uint index) const { return d()->mappedIndex(index); }
static void markObjects(Heap::Base *d, ExecutionEngine *e);