Rework array handling for JS objects
authorLars Knoll <lars.knoll@digia.com>
Mon, 16 Dec 2013 08:16:57 +0000 (09:16 +0100)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Thu, 9 Jan 2014 06:47:06 +0000 (07:47 +0100)
commit459c9a2a8840995436e610459216957bc7ebd914
treeef28df2fdbc62bf551088d13850492d2c6a771b1
parent5cf95512af83fc6a0f70d3493be571accaf50d84
Rework array handling for JS objects

Split up ArrayData into two classes, one for regular
arrays, one for sparse arrays and cleanly separate
the two cases. Only create array data on demand.

Change-Id: I9ca8d0b53592174f213ba0f20caf93e77dba690a
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
36 files changed:
src/imports/localstorage/plugin.cpp
src/qml/compiler/qv4isel_masm.cpp
src/qml/jsruntime/jsruntime.pri
src/qml/jsruntime/qv4argumentsobject.cpp
src/qml/jsruntime/qv4arraydata.cpp [new file with mode: 0644]
src/qml/jsruntime/qv4arraydata_p.h [new file with mode: 0644]
src/qml/jsruntime/qv4arrayobject.cpp
src/qml/jsruntime/qv4arrayobject_p.h
src/qml/jsruntime/qv4context.cpp
src/qml/jsruntime/qv4functionobject.cpp
src/qml/jsruntime/qv4jsonobject.cpp
src/qml/jsruntime/qv4lookup.cpp
src/qml/jsruntime/qv4lookup_p.h
src/qml/jsruntime/qv4managed.cpp
src/qml/jsruntime/qv4managed_p.h
src/qml/jsruntime/qv4object.cpp
src/qml/jsruntime/qv4object_p.h
src/qml/jsruntime/qv4objectproto.cpp
src/qml/jsruntime/qv4property_p.h
src/qml/jsruntime/qv4qobjectwrapper.cpp
src/qml/jsruntime/qv4regexpobject.cpp
src/qml/jsruntime/qv4runtime.cpp
src/qml/jsruntime/qv4runtime_p.h
src/qml/jsruntime/qv4sequenceobject.cpp
src/qml/jsruntime/qv4serialize.cpp
src/qml/jsruntime/qv4string.cpp
src/qml/jsruntime/qv4string_p.h
src/qml/jsruntime/qv4stringobject.cpp
src/qml/qml/qqmllistwrapper.cpp
src/qml/qml/qqmllocale.cpp
src/qml/qml/v8/qv8engine.cpp
src/qml/types/qqmldelegatemodel.cpp
src/qml/types/qqmllistmodel.cpp
src/quick/items/context2d/qquickcontext2d.cpp
src/quick/util/qquickglobal.cpp
tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp