aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4arraydata.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@theqtcompany.com>2014-11-01 20:56:47 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2014-11-04 20:18:18 +0100
commit878b11e0a94e892c0377bca01b49706c150926ed (patch)
tree1b4a10f016d208a8514b394087ac18e419fcdc17 /src/qml/jsruntime/qv4arraydata.cpp
parent486948817b26da2c62802bb93a0f671715c609d4 (diff)
Let markObjects() operate directly on HeapObjects
This decouples things a bit better and helps moving over to directly store heapobject pointers in other objects. Change-Id: I798f922e018b0a3ca6f8768e4a810187f34d82f6 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4arraydata.cpp')
-rw-r--r--src/qml/jsruntime/qv4arraydata.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/qml/jsruntime/qv4arraydata.cpp b/src/qml/jsruntime/qv4arraydata.cpp
index 12bffef04e..5aaed1a98d 100644
--- a/src/qml/jsruntime/qv4arraydata.cpp
+++ b/src/qml/jsruntime/qv4arraydata.cpp
@@ -213,12 +213,12 @@ void ArrayData::ensureAttributes(Object *o)
}
-void SimpleArrayData::markObjects(Managed *d, ExecutionEngine *e)
+void SimpleArrayData::markObjects(HeapObject *d, ExecutionEngine *e)
{
- SimpleArrayData *dd = static_cast<SimpleArrayData *>(d);
- uint l = dd->len();
+ SimpleArrayData::Data *dd = static_cast<SimpleArrayData::Data *>(d);
+ uint l = dd->len;
for (uint i = 0; i < l; ++i)
- dd->data(i).mark(e);
+ dd->arrayData[i].mark(e);
}
ReturnedValue SimpleArrayData::get(const ArrayData *d, uint index)
@@ -363,12 +363,12 @@ void SparseArrayData::destroy(Managed *d)
delete dd->sparse();
}
-void SparseArrayData::markObjects(Managed *d, ExecutionEngine *e)
+void SparseArrayData::markObjects(HeapObject *d, ExecutionEngine *e)
{
- SparseArrayData *dd = static_cast<SparseArrayData *>(d);
- uint l = dd->alloc();
+ SparseArrayData::Data *dd = static_cast<SparseArrayData::Data *>(d);
+ uint l = dd->alloc;
for (uint i = 0; i < l; ++i)
- dd->arrayData()[i].mark(e);
+ dd->arrayData[i].mark(e);
}
ArrayData *SparseArrayData::reallocate(Object *o, uint n, bool enforceAttributes)