aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@theqtcompany.com>2014-11-01 23:50:32 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2014-11-08 16:39:32 +0100
commitc2da8abde56d2010d3e7cb234570079f06d8a441 (patch)
treee3185e7f99c66130d615e855af3435ba102d51a4 /src/qml/jsruntime
parentda2396478f04aa66d521e53ff24488e72c87d895 (diff)
Move Object::Data into the Heap namespace
Change-Id: I9d30081f71b83bc86f5e5714e23396b18c4d54c5 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime')
-rw-r--r--src/qml/jsruntime/qv4argumentsobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4argumentsobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4arraybuffer.cpp2
-rw-r--r--src/qml/jsruntime/qv4arraybuffer_p.h2
-rw-r--r--src/qml/jsruntime/qv4context.cpp4
-rw-r--r--src/qml/jsruntime/qv4context_p.h2
-rw-r--r--src/qml/jsruntime/qv4dataview.cpp2
-rw-r--r--src/qml/jsruntime/qv4dataview_p.h2
-rw-r--r--src/qml/jsruntime/qv4dateobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4dateobject_p.h6
-rw-r--r--src/qml/jsruntime/qv4errorobject.cpp8
-rw-r--r--src/qml/jsruntime/qv4errorobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4functionobject.cpp8
-rw-r--r--src/qml/jsruntime/qv4functionobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4jsonobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4jsonobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4managed_p.h13
-rw-r--r--src/qml/jsruntime/qv4mathobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4mathobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4object.cpp6
-rw-r--r--src/qml/jsruntime/qv4object_p.h45
-rw-r--r--src/qml/jsruntime/qv4objectiterator_p.h6
-rw-r--r--src/qml/jsruntime/qv4qobjectwrapper.cpp4
-rw-r--r--src/qml/jsruntime/qv4qobjectwrapper_p.h4
-rw-r--r--src/qml/jsruntime/qv4regexpobject.cpp6
-rw-r--r--src/qml/jsruntime/qv4regexpobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4script.cpp8
-rw-r--r--src/qml/jsruntime/qv4script_p.h6
-rw-r--r--src/qml/jsruntime/qv4sequenceobject.cpp6
-rw-r--r--src/qml/jsruntime/qv4stringobject.cpp4
-rw-r--r--src/qml/jsruntime/qv4stringobject_p.h2
-rw-r--r--src/qml/jsruntime/qv4typedarray.cpp2
-rw-r--r--src/qml/jsruntime/qv4typedarray_p.h6
-rw-r--r--src/qml/jsruntime/qv4variantobject.cpp4
-rw-r--r--src/qml/jsruntime/qv4variantobject_p.h2
35 files changed, 99 insertions, 81 deletions
diff --git a/src/qml/jsruntime/qv4argumentsobject.cpp b/src/qml/jsruntime/qv4argumentsobject.cpp
index 209d99fea0..4734c9e7cb 100644
--- a/src/qml/jsruntime/qv4argumentsobject.cpp
+++ b/src/qml/jsruntime/qv4argumentsobject.cpp
@@ -39,7 +39,7 @@ using namespace QV4;
DEFINE_OBJECT_VTABLE(ArgumentsObject);
ArgumentsObject::Data::Data(CallContext *context)
- : Object::Data(context->d()->strictMode ? context->d()->engine->strictArgumentsObjectClass : context->d()->engine->argumentsObjectClass)
+ : Heap::Object(context->d()->strictMode ? context->d()->engine->strictArgumentsObjectClass : context->d()->engine->argumentsObjectClass)
, context(context)
, fullyCreated(false)
{
diff --git a/src/qml/jsruntime/qv4argumentsobject_p.h b/src/qml/jsruntime/qv4argumentsobject_p.h
index 28b03c5cf9..ff233da077 100644
--- a/src/qml/jsruntime/qv4argumentsobject_p.h
+++ b/src/qml/jsruntime/qv4argumentsobject_p.h
@@ -78,7 +78,7 @@ struct ArgumentsSetterFunction: FunctionObject
struct ArgumentsObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(CallContext *context);
CallContext *context;
bool fullyCreated;
diff --git a/src/qml/jsruntime/qv4arraybuffer.cpp b/src/qml/jsruntime/qv4arraybuffer.cpp
index 82ab2a2a87..134228e943 100644
--- a/src/qml/jsruntime/qv4arraybuffer.cpp
+++ b/src/qml/jsruntime/qv4arraybuffer.cpp
@@ -84,7 +84,7 @@ ReturnedValue ArrayBufferCtor::method_isView(CallContext *ctx)
ArrayBuffer::Data::Data(ExecutionEngine *e, int length)
- : Object::Data(e->arrayBufferClass)
+ : Heap::Object(e->arrayBufferClass)
{
data = QTypedArrayData<char>::allocate(length + 1);
if (!data) {
diff --git a/src/qml/jsruntime/qv4arraybuffer_p.h b/src/qml/jsruntime/qv4arraybuffer_p.h
index 57ee34e570..6941a5153f 100644
--- a/src/qml/jsruntime/qv4arraybuffer_p.h
+++ b/src/qml/jsruntime/qv4arraybuffer_p.h
@@ -57,7 +57,7 @@ struct ArrayBufferCtor: FunctionObject
struct ArrayBuffer : Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *e, int length);
QTypedArrayData<char> *data;
};
diff --git a/src/qml/jsruntime/qv4context.cpp b/src/qml/jsruntime/qv4context.cpp
index 72bf041d84..cdc82224d7 100644
--- a/src/qml/jsruntime/qv4context.cpp
+++ b/src/qml/jsruntime/qv4context.cpp
@@ -134,7 +134,7 @@ Heap::GlobalContext::GlobalContext(ExecutionEngine *eng)
global = eng->globalObject;
}
-Heap::WithContext::WithContext(ExecutionEngine *engine, Object *with)
+Heap::WithContext::WithContext(ExecutionEngine *engine, QV4::Object *with)
: Heap::ExecutionContext(engine, Heap::ExecutionContext::Type_WithContext)
{
callData = parent->d()->callData;
@@ -158,7 +158,7 @@ Heap::CatchContext::CatchContext(ExecutionEngine *engine, String *exceptionVarNa
this->exceptionValue = exceptionValue;
}
-Heap::CallContext::CallContext(ExecutionEngine *engine, Object *qml, FunctionObject *function)
+Heap::CallContext::CallContext(ExecutionEngine *engine, QV4::Object *qml, FunctionObject *function)
: Heap::ExecutionContext(engine, Heap::ExecutionContext::Type_QmlContext)
{
this->function = function;
diff --git a/src/qml/jsruntime/qv4context_p.h b/src/qml/jsruntime/qv4context_p.h
index 80ed904471..c7066d8472 100644
--- a/src/qml/jsruntime/qv4context_p.h
+++ b/src/qml/jsruntime/qv4context_p.h
@@ -129,7 +129,7 @@ struct CatchContext : ExecutionContext {
};
struct WithContext : ExecutionContext {
- WithContext(ExecutionEngine *engine, Object *with);
+ WithContext(ExecutionEngine *engine, QV4::Object *with);
Object *withObject;
};
diff --git a/src/qml/jsruntime/qv4dataview.cpp b/src/qml/jsruntime/qv4dataview.cpp
index 4d7e065580..df689c6a39 100644
--- a/src/qml/jsruntime/qv4dataview.cpp
+++ b/src/qml/jsruntime/qv4dataview.cpp
@@ -77,7 +77,7 @@ ReturnedValue DataViewCtor::call(Managed *that, CallData *callData)
DataView::Data::Data(ExecutionEngine *e)
- : Object::Data(e->dataViewClass),
+ : Heap::Object(e->dataViewClass),
buffer(0),
byteLength(0),
byteOffset(0)
diff --git a/src/qml/jsruntime/qv4dataview_p.h b/src/qml/jsruntime/qv4dataview_p.h
index e1a8aa79d9..df0ed881b4 100644
--- a/src/qml/jsruntime/qv4dataview_p.h
+++ b/src/qml/jsruntime/qv4dataview_p.h
@@ -56,7 +56,7 @@ struct DataViewCtor: FunctionObject
struct DataView : Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *e);
ArrayBuffer *buffer;
uint byteLength;
diff --git a/src/qml/jsruntime/qv4dateobject.cpp b/src/qml/jsruntime/qv4dateobject.cpp
index 25727166a5..9b3510fd92 100644
--- a/src/qml/jsruntime/qv4dateobject.cpp
+++ b/src/qml/jsruntime/qv4dateobject.cpp
@@ -635,7 +635,7 @@ static double getLocalTZA()
DEFINE_OBJECT_VTABLE(DateObject);
DateObject::Data::Data(ExecutionEngine *engine, const QDateTime &date)
- : Object::Data(engine->dateClass)
+ : Heap::Object(engine->dateClass)
{
setVTable(staticVTable());
value.setDouble(date.isValid() ? date.toMSecsSinceEpoch() : qSNaN());
diff --git a/src/qml/jsruntime/qv4dateobject_p.h b/src/qml/jsruntime/qv4dateobject_p.h
index abab5390a6..dfc17b391d 100644
--- a/src/qml/jsruntime/qv4dateobject_p.h
+++ b/src/qml/jsruntime/qv4dateobject_p.h
@@ -44,15 +44,15 @@ class QDateTime;
namespace QV4 {
struct DateObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, const ValueRef date)
- : Object::Data(engine->dateClass)
+ : Heap::Object(engine->dateClass)
{
value = date;
}
Data(ExecutionEngine *engine, const QDateTime &date);
Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Q_ASSERT(internalClass->vtable == staticVTable());
value = Primitive::fromDouble(qSNaN());
diff --git a/src/qml/jsruntime/qv4errorobject.cpp b/src/qml/jsruntime/qv4errorobject.cpp
index f0c151a644..d05d3b1e36 100644
--- a/src/qml/jsruntime/qv4errorobject.cpp
+++ b/src/qml/jsruntime/qv4errorobject.cpp
@@ -64,7 +64,7 @@
using namespace QV4;
ErrorObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Scope scope(ic->engine);
Scoped<ErrorObject> e(scope, this);
@@ -74,7 +74,7 @@ ErrorObject::Data::Data(InternalClass *ic)
}
ErrorObject::Data::Data(InternalClass *ic, const ValueRef message, ErrorType t)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
subtype = t;
@@ -96,7 +96,7 @@ ErrorObject::Data::Data(InternalClass *ic, const ValueRef message, ErrorType t)
}
ErrorObject::Data::Data(InternalClass *ic, const QString &message, ErrorObject::ErrorType t)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
subtype = t;
@@ -118,7 +118,7 @@ ErrorObject::Data::Data(InternalClass *ic, const QString &message, ErrorObject::
}
ErrorObject::Data::Data(InternalClass *ic, const QString &message, const QString &fileName, int line, int column, ErrorObject::ErrorType t)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
subtype = t;
diff --git a/src/qml/jsruntime/qv4errorobject_p.h b/src/qml/jsruntime/qv4errorobject_p.h
index 359395ed72..7105050dea 100644
--- a/src/qml/jsruntime/qv4errorobject_p.h
+++ b/src/qml/jsruntime/qv4errorobject_p.h
@@ -56,7 +56,7 @@ struct ErrorObject: Object {
TypeError,
URIError
};
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(InternalClass *ic);
Data(InternalClass *ic, const ValueRef message, ErrorType t = Error);
Data(InternalClass *ic, const QString &message, ErrorType t = Error);
diff --git a/src/qml/jsruntime/qv4functionobject.cpp b/src/qml/jsruntime/qv4functionobject.cpp
index 216f732231..cfe4af9be3 100644
--- a/src/qml/jsruntime/qv4functionobject.cpp
+++ b/src/qml/jsruntime/qv4functionobject.cpp
@@ -63,7 +63,7 @@ using namespace QV4;
DEFINE_OBJECT_VTABLE(FunctionObject);
FunctionObject::Data::Data(ExecutionContext *scope, String *name, bool createProto)
- : Object::Data(scope->d()->engine->functionClass)
+ : Heap::Object(scope->d()->engine->functionClass)
, scope(scope)
{
Scope s(scope);
@@ -73,7 +73,7 @@ FunctionObject::Data::Data(ExecutionContext *scope, String *name, bool createPro
FunctionObject::Data::Data(ExecutionContext *scope, const QString &name, bool createProto)
- : Object::Data(scope->d()->engine->functionClass)
+ : Heap::Object(scope->d()->engine->functionClass)
, scope(scope)
{
Scope s(scope);
@@ -83,7 +83,7 @@ FunctionObject::Data::Data(ExecutionContext *scope, const QString &name, bool cr
}
FunctionObject::Data::Data(ExecutionContext *scope, const ReturnedValue name)
- : Object::Data(scope->d()->engine->functionClass)
+ : Heap::Object(scope->d()->engine->functionClass)
, scope(scope)
{
Scope s(scope);
@@ -93,7 +93,7 @@ FunctionObject::Data::Data(ExecutionContext *scope, const ReturnedValue name)
}
FunctionObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
, scope(ic->engine->rootContext)
{
Scope scope(ic->engine);
diff --git a/src/qml/jsruntime/qv4functionobject_p.h b/src/qml/jsruntime/qv4functionobject_p.h
index 58b957125e..f19a3269cb 100644
--- a/src/qml/jsruntime/qv4functionobject_p.h
+++ b/src/qml/jsruntime/qv4functionobject_p.h
@@ -43,7 +43,7 @@ QT_BEGIN_NAMESPACE
namespace QV4 {
struct Q_QML_EXPORT FunctionObject: Object {
- struct Q_QML_PRIVATE_EXPORT Data : Object::Data {
+ struct Q_QML_PRIVATE_EXPORT Data : Heap::Object {
Data(ExecutionContext *scope, String *name, bool createProto = false);
Data(ExecutionContext *scope, const QString &name = QString(), bool createProto = false);
Data(ExecutionContext *scope, const ReturnedValue name);
diff --git a/src/qml/jsruntime/qv4jsonobject.cpp b/src/qml/jsruntime/qv4jsonobject.cpp
index 74cf26c381..2c19d8e0a1 100644
--- a/src/qml/jsruntime/qv4jsonobject.cpp
+++ b/src/qml/jsruntime/qv4jsonobject.cpp
@@ -878,7 +878,7 @@ QString Stringify::JA(ArrayObject *a)
JsonObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Scope scope(ic->engine);
ScopedObject o(scope, this);
diff --git a/src/qml/jsruntime/qv4jsonobject_p.h b/src/qml/jsruntime/qv4jsonobject_p.h
index 6b9840156d..07c8040b31 100644
--- a/src/qml/jsruntime/qv4jsonobject_p.h
+++ b/src/qml/jsruntime/qv4jsonobject_p.h
@@ -43,7 +43,7 @@ QT_BEGIN_NAMESPACE
namespace QV4 {
struct JsonObject : Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(InternalClass *ic);
};
Q_MANAGED_TYPE(JsonObject)
diff --git a/src/qml/jsruntime/qv4managed_p.h b/src/qml/jsruntime/qv4managed_p.h
index 81c9e81e22..116be8678f 100644
--- a/src/qml/jsruntime/qv4managed_p.h
+++ b/src/qml/jsruntime/qv4managed_p.h
@@ -82,6 +82,19 @@ inline void qYouForgotTheQ_MANAGED_Macro(T1, T2) {}
const Data *d() const { return &static_cast<const Data &>(Managed::data); } \
Data *d() { return &static_cast<Data &>(Managed::data); }
+#define V4_OBJECT2(DataClass, superClass) \
+ public: \
+ Q_MANAGED_CHECK \
+ typedef QV4::Heap::DataClass Data; \
+ typedef superClass SuperClass; \
+ static const QV4::ObjectVTable static_vtbl; \
+ static inline const QV4::ManagedVTable *staticVTable() { return &static_vtbl.managedVTable; } \
+ template <typename _T> \
+ QV4::Returned<_T> *asReturned() { return QV4::Returned<_T>::create(this); } \
+ V4_MANAGED_SIZE_TEST \
+ const QV4::Heap::DataClass *d() const { return &static_cast<const QV4::Heap::DataClass &>(Managed::data); } \
+ QV4::Heap::DataClass *d() { return &static_cast<QV4::Heap::DataClass &>(Managed::data); }
+
#define Q_MANAGED_TYPE(type) \
public: \
enum { MyType = Type_##type };
diff --git a/src/qml/jsruntime/qv4mathobject.cpp b/src/qml/jsruntime/qv4mathobject.cpp
index 1148b0f97d..78d24f5e92 100644
--- a/src/qml/jsruntime/qv4mathobject.cpp
+++ b/src/qml/jsruntime/qv4mathobject.cpp
@@ -48,7 +48,7 @@ DEFINE_OBJECT_VTABLE(MathObject);
static const double qt_PI = 2.0 * ::asin(1.0);
MathObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Scope scope(ic->engine);
ScopedObject m(scope, this);
diff --git a/src/qml/jsruntime/qv4mathobject_p.h b/src/qml/jsruntime/qv4mathobject_p.h
index ab50b0105a..4d135c46a4 100644
--- a/src/qml/jsruntime/qv4mathobject_p.h
+++ b/src/qml/jsruntime/qv4mathobject_p.h
@@ -41,7 +41,7 @@ namespace QV4 {
struct MathObject: Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(InternalClass *ic);
};
diff --git a/src/qml/jsruntime/qv4object.cpp b/src/qml/jsruntime/qv4object.cpp
index 0859537c58..365525b089 100644
--- a/src/qml/jsruntime/qv4object.cpp
+++ b/src/qml/jsruntime/qv4object.cpp
@@ -49,7 +49,7 @@ using namespace QV4;
DEFINE_OBJECT_VTABLE(Object);
-Object::Data::Data(InternalClass *internalClass)
+Heap::Object::Object(InternalClass *internalClass)
: Heap::Base(internalClass)
{
if (internalClass->size) {
@@ -180,7 +180,7 @@ void Object::defineReadonlyProperty(String *name, ValueRef value)
void Object::markObjects(Heap::Base *that, ExecutionEngine *e)
{
- Object::Data *o = static_cast<Object::Data *>(that);
+ Heap::Object *o = static_cast<Heap::Object *>(that);
if (o->memberData)
o->memberData->mark(e);
@@ -1130,7 +1130,7 @@ void Object::initSparseArray()
DEFINE_OBJECT_VTABLE(ArrayObject);
ArrayObject::Data::Data(ExecutionEngine *engine, const QStringList &list)
- : Object::Data(engine->arrayClass)
+ : Heap::Object(engine->arrayClass)
{
init();
Scope scope(engine);
diff --git a/src/qml/jsruntime/qv4object_p.h b/src/qml/jsruntime/qv4object_p.h
index ac3490c3f6..4a6e3b6c66 100644
--- a/src/qml/jsruntime/qv4object_p.h
+++ b/src/qml/jsruntime/qv4object_p.h
@@ -41,18 +41,23 @@ QT_BEGIN_NAMESPACE
namespace QV4 {
-struct Q_QML_EXPORT Object: Managed {
- struct Data : Heap::Base {
- Data(ExecutionEngine *engine)
- : Heap::Base(engine->objectClass)
- {
- }
- Data(InternalClass *internal = 0);
+namespace Heap {
- Heap::MemberData *memberData;
- Heap::ArrayData *arrayData;
- };
- V4_OBJECT(Object)
+struct Object : Base {
+ Object(ExecutionEngine *engine)
+ : Base(engine->objectClass)
+ {
+ }
+ Object(InternalClass *internal = 0);
+
+ MemberData *memberData;
+ ArrayData *arrayData;
+};
+
+}
+
+struct Q_QML_EXPORT Object: Managed {
+ V4_OBJECT2(Object, Object)
Q_MANAGED_TYPE(Object)
enum {
@@ -259,14 +264,14 @@ private:
};
struct BooleanObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, const ValueRef val)
- : Object::Data(engine->booleanClass)
+ : Heap::Object(engine->booleanClass)
{
value = val;
}
Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Q_ASSERT(internalClass->vtable == staticVTable());
value = Encode(false);
@@ -281,13 +286,13 @@ struct BooleanObject: Object {
};
struct NumberObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, const ValueRef val)
- : Object::Data(engine->numberClass) {
+ : Heap::Object(engine->numberClass) {
value = val;
}
Data(InternalClass *ic)
- : Object::Data(ic) {
+ : Heap::Object(ic) {
Q_ASSERT(internalClass->vtable == staticVTable());
value = Encode((int)0);
}
@@ -301,10 +306,10 @@ struct NumberObject: Object {
};
struct ArrayObject: Object {
- struct Data : Object::Data {
- Data(ExecutionEngine *engine) : Object::Data(engine->arrayClass) { init(); }
+ struct Data : Heap::Object {
+ Data(ExecutionEngine *engine) : Heap::Object(engine->arrayClass) { init(); }
Data(ExecutionEngine *engine, const QStringList &list);
- Data(InternalClass *ic) : Object::Data(ic) { init(); }
+ Data(InternalClass *ic) : Heap::Object(ic) { init(); }
void init()
{ memberData->data[LengthPropertyIndex] = Primitive::fromInt32(0); }
};
diff --git a/src/qml/jsruntime/qv4objectiterator_p.h b/src/qml/jsruntime/qv4objectiterator_p.h
index 00d7c490e3..dfd9b0fb34 100644
--- a/src/qml/jsruntime/qv4objectiterator_p.h
+++ b/src/qml/jsruntime/qv4objectiterator_p.h
@@ -68,9 +68,9 @@ private:
};
struct ForEachIteratorObject: Object {
- struct Data : Object::Data {
- Data(ExecutionEngine *engine, Object *o)
- : Object::Data(engine)
+ struct Data : Heap::Object {
+ Data(ExecutionEngine *engine, QV4::Object *o)
+ : Heap::Object(engine)
, it(workArea, workArea + 1, o, ObjectIterator::EnumerableOnly|ObjectIterator::WithProtoChain) {
setVTable(staticVTable());
}
diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp
index 23ce1e118f..480d1231e8 100644
--- a/src/qml/jsruntime/qv4qobjectwrapper.cpp
+++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp
@@ -234,7 +234,7 @@ static QV4::ReturnedValue LoadProperty(QV8Engine *engine, QObject *object,
}
QObjectWrapper::Data::Data(ExecutionEngine *engine, QObject *object)
- : Object::Data(engine)
+ : Heap::Object(engine)
, object(object)
{
setVTable(staticVTable());
@@ -1890,7 +1890,7 @@ ReturnedValue QObjectMethod::callInternal(CallData *callData)
DEFINE_OBJECT_VTABLE(QObjectMethod);
QmlSignalHandler::Data::Data(ExecutionEngine *engine, QObject *object, int signalIndex)
- : Object::Data(engine)
+ : Heap::Object(engine)
, object(object)
, signalIndex(signalIndex)
{
diff --git a/src/qml/jsruntime/qv4qobjectwrapper_p.h b/src/qml/jsruntime/qv4qobjectwrapper_p.h
index 8bcde64cb6..f65afabfbf 100644
--- a/src/qml/jsruntime/qv4qobjectwrapper_p.h
+++ b/src/qml/jsruntime/qv4qobjectwrapper_p.h
@@ -69,7 +69,7 @@ struct QObjectSlotDispatcher;
struct Q_QML_EXPORT QObjectWrapper : public QV4::Object
{
- struct Data : QV4::Object::Data {
+ struct Data : QV4::Heap::Object {
Data(ExecutionEngine *engine, QObject *object);
QPointer<QObject> object;
};
@@ -147,7 +147,7 @@ struct Q_QML_EXPORT QObjectMethod : public QV4::FunctionObject
struct QmlSignalHandler : public QV4::Object
{
- struct Data : QV4::Object::Data {
+ struct Data : QV4::Heap::Object {
Data(ExecutionEngine *engine, QObject *object, int signalIndex);
QPointer<QObject> object;
int signalIndex;
diff --git a/src/qml/jsruntime/qv4regexpobject.cpp b/src/qml/jsruntime/qv4regexpobject.cpp
index 115014a73f..ca28a902fd 100644
--- a/src/qml/jsruntime/qv4regexpobject.cpp
+++ b/src/qml/jsruntime/qv4regexpobject.cpp
@@ -65,7 +65,7 @@ DEFINE_OBJECT_VTABLE(RegExpObject);
DEFINE_OBJECT_VTABLE(RegExpPrototype);
RegExpObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
setVTable(staticVTable());
@@ -77,7 +77,7 @@ RegExpObject::Data::Data(InternalClass *ic)
}
RegExpObject::Data::Data(ExecutionEngine *engine, RegExp *value, bool global)
- : Object::Data(engine->regExpClass)
+ : Heap::Object(engine->regExpClass)
, value(value)
, global(global)
{
@@ -92,7 +92,7 @@ RegExpObject::Data::Data(ExecutionEngine *engine, RegExp *value, bool global)
// The conversion is not 100% exact since ECMA regexp and QRegExp
// have different semantics/flags, but we try to do our best.
RegExpObject::Data::Data(ExecutionEngine *engine, const QRegExp &re)
- : Object::Data(engine->regExpClass)
+ : Heap::Object(engine->regExpClass)
{
setVTable(staticVTable());
diff --git a/src/qml/jsruntime/qv4regexpobject_p.h b/src/qml/jsruntime/qv4regexpobject_p.h
index 8e415234bc..8cbe9e11bb 100644
--- a/src/qml/jsruntime/qv4regexpobject_p.h
+++ b/src/qml/jsruntime/qv4regexpobject_p.h
@@ -56,7 +56,7 @@ QT_BEGIN_NAMESPACE
namespace QV4 {
struct RegExpObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, RegExp *value, bool global);
Data(ExecutionEngine *engine, const QRegExp &re);
Data(InternalClass *ic);
diff --git a/src/qml/jsruntime/qv4script.cpp b/src/qml/jsruntime/qv4script.cpp
index a85cb8f883..da6503c1ab 100644
--- a/src/qml/jsruntime/qv4script.cpp
+++ b/src/qml/jsruntime/qv4script.cpp
@@ -53,7 +53,7 @@
using namespace QV4;
-QmlBindingWrapper::Data::Data(ExecutionContext *scope, Function *f, Object *qml)
+QmlBindingWrapper::Data::Data(ExecutionContext *scope, Function *f, QV4::Object *qml)
: FunctionObject::Data(scope, scope->d()->engine->id_eval, /*createProto = */ false)
, qml(qml)
{
@@ -74,7 +74,7 @@ QmlBindingWrapper::Data::Data(ExecutionContext *scope, Function *f, Object *qml)
s.engine->popContext();
}
-QmlBindingWrapper::Data::Data(ExecutionContext *scope, Object *qml)
+QmlBindingWrapper::Data::Data(ExecutionContext *scope, QV4::Object *qml)
: FunctionObject::Data(scope, scope->d()->engine->id_eval, /*createProto = */ false)
, qml(qml)
{
@@ -158,9 +158,9 @@ DEFINE_OBJECT_VTABLE(QmlBindingWrapper);
struct CompilationUnitHolder : public Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, CompiledData::CompilationUnit *unit)
- : Object::Data(engine)
+ : Heap::Object(engine)
, unit(unit)
{
setVTable(staticVTable());
diff --git a/src/qml/jsruntime/qv4script_p.h b/src/qml/jsruntime/qv4script_p.h
index 6aa92c3516..26a08f63e8 100644
--- a/src/qml/jsruntime/qv4script_p.h
+++ b/src/qml/jsruntime/qv4script_p.h
@@ -73,10 +73,10 @@ struct ContextStateSaver {
struct Q_QML_EXPORT QmlBindingWrapper : FunctionObject {
struct Data : FunctionObject::Data {
- Data(ExecutionContext *scope, Function *f, Object *qml);
+ Data(ExecutionContext *scope, Function *f, QV4::Object *qml);
// Constructor for QML functions and signal handlers, resulting binding wrapper is not callable!
- Data(ExecutionContext *scope, Object *qml);
- Object *qml;
+ Data(ExecutionContext *scope, QV4::Object *qml);
+ QV4::Object *qml;
CallContext *qmlContext;
};
V4_OBJECT(FunctionObject)
diff --git a/src/qml/jsruntime/qv4sequenceobject.cpp b/src/qml/jsruntime/qv4sequenceobject.cpp
index d666de4125..ab23a03bbc 100644
--- a/src/qml/jsruntime/qv4sequenceobject.cpp
+++ b/src/qml/jsruntime/qv4sequenceobject.cpp
@@ -158,9 +158,9 @@ template <> bool convertValueToElement(const ValueRef value)
template <typename Container>
struct QQmlSequence : public QV4::Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(QV4::ExecutionEngine *engine, const Container &container)
- : Object::Data(InternalClass::create(engine, staticVTable(), engine->sequencePrototype.asObject()))
+ : Heap::Object(InternalClass::create(engine, staticVTable(), engine->sequencePrototype.asObject()))
, container(container)
, propertyIndex(-1)
, isReference(false)
@@ -172,7 +172,7 @@ struct QQmlSequence : public QV4::Object
}
Data(QV4::ExecutionEngine *engine, QObject *object, int propertyIndex)
- : Object::Data(InternalClass::create(engine, staticVTable(), engine->sequencePrototype.asObject()))
+ : Heap::Object(InternalClass::create(engine, staticVTable(), engine->sequencePrototype.asObject()))
, object(object)
, propertyIndex(propertyIndex)
, isReference(true)
diff --git a/src/qml/jsruntime/qv4stringobject.cpp b/src/qml/jsruntime/qv4stringobject.cpp
index 5b5731c5b1..e48e3b6d4c 100644
--- a/src/qml/jsruntime/qv4stringobject.cpp
+++ b/src/qml/jsruntime/qv4stringobject.cpp
@@ -70,7 +70,7 @@ using namespace QV4;
DEFINE_OBJECT_VTABLE(StringObject);
StringObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
Q_ASSERT(internalClass->vtable == staticVTable());
value = ic->engine->newString(QStringLiteral(""))->asReturnedValue();
@@ -82,7 +82,7 @@ StringObject::Data::Data(InternalClass *ic)
}
StringObject::Data::Data(ExecutionEngine *engine, const ValueRef val)
- : Object::Data(engine->stringObjectClass)
+ : Heap::Object(engine->stringObjectClass)
{
value = val;
Q_ASSERT(value.isString());
diff --git a/src/qml/jsruntime/qv4stringobject_p.h b/src/qml/jsruntime/qv4stringobject_p.h
index 22e2ba6c0e..332c4c86cc 100644
--- a/src/qml/jsruntime/qv4stringobject_p.h
+++ b/src/qml/jsruntime/qv4stringobject_p.h
@@ -42,7 +42,7 @@ QT_BEGIN_NAMESPACE
namespace QV4 {
struct StringObject: Object {
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *engine, const ValueRef value);
Data(InternalClass *ic);
Value value;
diff --git a/src/qml/jsruntime/qv4typedarray.cpp b/src/qml/jsruntime/qv4typedarray.cpp
index 059e011d9e..7710bd6b26 100644
--- a/src/qml/jsruntime/qv4typedarray.cpp
+++ b/src/qml/jsruntime/qv4typedarray.cpp
@@ -334,7 +334,7 @@ ReturnedValue TypedArrayCtor::call(Managed *that, CallData *callData)
}
TypedArray::Data::Data(ExecutionEngine *e, Type t)
- : Object::Data(e->typedArrayClasses[t]),
+ : Heap::Object(e->typedArrayClasses[t]),
type(operations + t)
{
}
diff --git a/src/qml/jsruntime/qv4typedarray_p.h b/src/qml/jsruntime/qv4typedarray_p.h
index 2b266e5169..8294659fe1 100644
--- a/src/qml/jsruntime/qv4typedarray_p.h
+++ b/src/qml/jsruntime/qv4typedarray_p.h
@@ -67,7 +67,7 @@ struct TypedArray : Object
NTypes
};
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *e, Type t);
const TypedArrayOperations *type;
@@ -104,9 +104,9 @@ struct TypedArrayCtor: FunctionObject
struct TypedArrayPrototype : Object
{
- struct Data : Object::Data {
+ struct Data : Heap::Object {
Data(ExecutionEngine *e, TypedArray::Type t)
- : Object::Data(e)
+ : Heap::Object(e)
, type(t)
{
setVTable(staticVTable());
diff --git a/src/qml/jsruntime/qv4variantobject.cpp b/src/qml/jsruntime/qv4variantobject.cpp
index 3cde96992e..da3dd9f4e5 100644
--- a/src/qml/jsruntime/qv4variantobject.cpp
+++ b/src/qml/jsruntime/qv4variantobject.cpp
@@ -44,12 +44,12 @@ using namespace QV4;
DEFINE_OBJECT_VTABLE(VariantObject);
VariantObject::Data::Data(InternalClass *ic)
- : Object::Data(ic)
+ : Heap::Object(ic)
{
}
VariantObject::Data::Data(ExecutionEngine *engine, const QVariant &value)
- : Object::Data(engine->variantClass)
+ : Heap::Object(engine->variantClass)
{
data = value;
if (isScarce())
diff --git a/src/qml/jsruntime/qv4variantobject_p.h b/src/qml/jsruntime/qv4variantobject_p.h
index ef7554d7ab..d2dce35eba 100644
--- a/src/qml/jsruntime/qv4variantobject_p.h
+++ b/src/qml/jsruntime/qv4variantobject_p.h
@@ -58,7 +58,7 @@ namespace QV4 {
struct VariantObject : Object
{
- struct Data : Object::Data, public ExecutionEngine::ScarceResourceData
+ struct Data : Heap::Object, public ExecutionEngine::ScarceResourceData
{
Data(InternalClass *ic);
Data(ExecutionEngine *engine, const QVariant &value);