diff options
author | Lars Knoll <lars.knoll@digia.com> | 2014-11-17 11:45:24 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2014-11-22 07:58:36 +0100 |
commit | 544ea314b6a3be4c7d766b737ee9dddf21cdee08 (patch) | |
tree | 4c44be2ae164aeb20d209f0ebe7e914713b48da2 /src/qml/jsruntime/qv4arraydata_p.h | |
parent | 6d2904ce547757fa554cdab6724a088c80abf5ac (diff) |
Move the indexing methods from SimpleArrayData to Heap::SimpleArrayData
Change-Id: I7d126999fb813bd9c0f224f7229d66854079f793
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.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/qml/jsruntime/qv4arraydata_p.h b/src/qml/jsruntime/qv4arraydata_p.h index 1b0589ed95..606a34effd 100644 --- a/src/qml/jsruntime/qv4arraydata_p.h +++ b/src/qml/jsruntime/qv4arraydata_p.h @@ -102,6 +102,10 @@ struct SimpleArrayData : public ArrayData { SimpleArrayData(ExecutionEngine *engine) : ArrayData(engine->simpleArrayDataClass) {} + + uint mappedIndex(uint index) const { return (index + offset) % alloc; } + Value data(uint index) const { return arrayData[mappedIndex(index)]; } + Value &data(uint index) { return arrayData[mappedIndex(index)]; } }; struct SparseArrayData : public ArrayData { @@ -162,9 +166,9 @@ struct Q_QML_EXPORT SimpleArrayData : public ArrayData { V4_ARRAYDATA(SimpleArrayData) - uint mappedIndex(uint index) const { return (index + d()->offset) % d()->alloc; } - Value data(uint index) const { return d()->arrayData[mappedIndex(index)]; } - Value &data(uint index) { return d()->arrayData[mappedIndex(index)]; } + uint mappedIndex(uint index) const { return d()->mappedIndex(index); } + Value data(uint index) const { return d()->data(index); } + Value &data(uint index) { return d()->data(index); } Property *getProperty(uint index) { if (index >= len()) |