aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@qt.io>2017-09-14 14:54:42 +0200
committerErik Verbruggen <erik.verbruggen@qt.io>2017-09-19 09:44:33 +0000
commit042aa2eb0e55616fc754d0d71246efb531ca6dfe (patch)
treef48118a1f8564b4c4cbadc0ebf291d56d59dbb70
parentb7ddcdad876cf0a46aa14a0f78ee8b3e4f685c19 (diff)
Change CallData::argc to be a QV4::Value
Instead of mimicking a Value. This makes sure that argc now stays correct even when anything on Value changes. Most of the change is mechanical: replace callData->argc by callData->argc(). Change-Id: I521831ae1ffb3966bad6589c18d7a373e13439d7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
-rw-r--r--src/imports/localstorage/plugin.cpp14
-rw-r--r--src/particles/qquickv4particledata.cpp8
-rw-r--r--src/qml/jsruntime/qv4argumentsobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4arraybuffer.cpp6
-rw-r--r--src/qml/jsruntime/qv4arrayobject.cpp49
-rw-r--r--src/qml/jsruntime/qv4booleanobject.cpp4
-rw-r--r--src/qml/jsruntime/qv4context.cpp4
-rw-r--r--src/qml/jsruntime/qv4context_p.h21
-rw-r--r--src/qml/jsruntime/qv4dataview.cpp30
-rw-r--r--src/qml/jsruntime/qv4dateobject.cpp86
-rw-r--r--src/qml/jsruntime/qv4functionobject.cpp30
-rw-r--r--src/qml/jsruntime/qv4globalobject.cpp18
-rw-r--r--src/qml/jsruntime/qv4include.cpp4
-rw-r--r--src/qml/jsruntime/qv4jscall_p.h9
-rw-r--r--src/qml/jsruntime/qv4jsonobject.cpp2
-rw-r--r--src/qml/jsruntime/qv4mathobject.cpp40
-rw-r--r--src/qml/jsruntime/qv4numberobject.cpp20
-rw-r--r--src/qml/jsruntime/qv4objectproto.cpp24
-rw-r--r--src/qml/jsruntime/qv4qobjectwrapper.cpp20
-rw-r--r--src/qml/jsruntime/qv4regexpobject.cpp9
-rw-r--r--src/qml/jsruntime/qv4sequenceobject.cpp4
-rw-r--r--src/qml/jsruntime/qv4stringobject.cpp52
-rw-r--r--src/qml/jsruntime/qv4typedarray.cpp14
-rw-r--r--src/qml/jsruntime/qv4vme_moth.cpp2
-rw-r--r--src/qml/qml/qqmlcomponent.cpp2
-rw-r--r--src/qml/qml/qqmldelayedcallqueue.cpp9
-rw-r--r--src/qml/qml/qqmllistwrapper.cpp2
-rw-r--r--src/qml/qml/qqmllocale.cpp74
-rw-r--r--src/qml/qml/qqmlxmlhttprequest.cpp18
-rw-r--r--src/qml/qml/v8/qqmlbuiltinfunctions.cpp140
-rw-r--r--src/qml/qml/v8/qv8engine_p.h4
-rw-r--r--src/qml/types/qqmldelegatemodel.cpp2
-rw-r--r--src/qml/types/qquickworkerscript.cpp2
-rw-r--r--src/qml/util/qqmladaptormodel.cpp4
-rw-r--r--src/quick/items/context2d/qquickcontext2d.cpp94
35 files changed, 411 insertions, 412 deletions
diff --git a/src/imports/localstorage/plugin.cpp b/src/imports/localstorage/plugin.cpp
index a827188d10..4af3be715f 100644
--- a/src/imports/localstorage/plugin.cpp
+++ b/src/imports/localstorage/plugin.cpp
@@ -209,7 +209,7 @@ static ReturnedValue qmlsqldatabase_rows_setForwardOnly(const QV4::BuiltinFuncti
QV4::Scoped<QQmlSqlDatabaseWrapper> r(scope, callData->thisObject.as<QQmlSqlDatabaseWrapper>());
if (!r || r->d()->type != Heap::QQmlSqlDatabaseWrapper::Rows)
V4THROW_REFERENCE("Not a SQLDatabase::Rows object");
- if (callData->argc < 1)
+ if (callData->argc() < 1)
RETURN_RESULT(scope.engine->throwTypeError());
r->d()->sqlQuery->setForwardOnly(callData->args[0].toBoolean());
@@ -261,7 +261,7 @@ static ReturnedValue qmlsqldatabase_rows_item(const QV4::BuiltinFunction *b, QV4
if (!r || r->d()->type != Heap::QQmlSqlDatabaseWrapper::Rows)
V4THROW_REFERENCE("Not a SQLDatabase::Rows object");
- RETURN_RESULT(qmlsqldatabase_rows_index(r, scope.engine, callData->argc ? callData->args[0].toUInt32() : 0));
+ RETURN_RESULT(qmlsqldatabase_rows_index(r, scope.engine, callData->argc() ? callData->args[0].toUInt32() : 0));
}
static QVariant toSqlVariant(QV4::ExecutionEngine *engine, const QV4::ScopedValue &value)
@@ -285,7 +285,7 @@ static ReturnedValue qmlsqldatabase_executeSql(const QV4::BuiltinFunction *b, QV
QSqlDatabase db = *r->d()->database;
- QString sql = callData->argc ? callData->args[0].toQString() : QString();
+ QString sql = callData->argc() ? callData->args[0].toQString() : QString();
if (r->d()->readonly && !sql.startsWith(QLatin1String("SELECT"),Qt::CaseInsensitive)) {
V4THROW_SQL(SQLEXCEPTION_SYNTAX_ERR, QQmlEngine::tr("Read-only Transaction"));
@@ -297,7 +297,7 @@ static ReturnedValue qmlsqldatabase_executeSql(const QV4::BuiltinFunction *b, QV
ScopedValue result(scope, Primitive::undefinedValue());
if (query.prepare(sql)) {
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
ScopedValue values(scope, callData->args[1]);
if (values->as<ArrayObject>()) {
ScopedArrayObject array(scope, values);
@@ -387,7 +387,7 @@ struct TransactionRollback {
static ReturnedValue qmlsqldatabase_changeVersion(const QV4::BuiltinFunction *b, QV4::CallData *callData)
{
Scope scope(b);
- if (callData->argc < 2)
+ if (callData->argc() < 2)
RETURN_UNDEFINED();
Scoped<QQmlSqlDatabaseWrapper> r(scope, callData->thisObject);
@@ -397,7 +397,7 @@ static ReturnedValue qmlsqldatabase_changeVersion(const QV4::BuiltinFunction *b,
QSqlDatabase db = *r->d()->database;
QString from_version = callData->args[0].toQString();
QString to_version = callData->args[1].toQString();
- ScopedFunctionObject callback(scope, callData->argc > 2 ? callData->args[2] : Primitive::undefinedValue());
+ ScopedFunctionObject callback(scope, callData->argc() > 2 ? callData->args[2] : Primitive::undefinedValue());
if (from_version != *r->d()->version)
V4THROW_SQL(SQLEXCEPTION_VERSION_ERR, QQmlEngine::tr("Version mismatch: expected %1, found %2").arg(from_version).arg(*r->d()->version));
@@ -448,7 +448,7 @@ static ReturnedValue qmlsqldatabase_transaction_shared(const QV4::BuiltinFunctio
if (!r || r->d()->type != Heap::QQmlSqlDatabaseWrapper::Database)
V4THROW_REFERENCE("Not a SQLDatabase object");
- const FunctionObject *callback = callData->argc ? callData->args[0].as<FunctionObject>() : 0;
+ const FunctionObject *callback = callData->argc() ? callData->args[0].as<FunctionObject>() : 0;
if (!callback)
V4THROW_SQL(SQLEXCEPTION_UNKNOWN_ERR, QQmlEngine::tr("transaction: missing callback"));
diff --git a/src/particles/qquickv4particledata.cpp b/src/particles/qquickv4particledata.cpp
index 4e218c91ea..ee1c334536 100644
--- a/src/particles/qquickv4particledata.cpp
+++ b/src/particles/qquickv4particledata.cpp
@@ -346,7 +346,7 @@ static QV4::ReturnedValue particleData_set_ ## NAME (const QV4::BuiltinFunction
if (!r || !r->d()->datum)\
RETURN_RESULT(scope.engine->throwError(QStringLiteral("Not a valid ParticleData object")));\
\
- double d = callData->argc ? callData->args[0].toNumber() : 0; \
+ double d = callData->argc() ? callData->args[0].toNumber() : 0; \
r->d()->datum->color. VAR = qMin(255, qMax(0, (int)::floor(d * 255.0)));\
RETURN_UNDEFINED(); \
}
@@ -369,7 +369,7 @@ static QV4::ReturnedValue particleData_set_ ## VARIABLE (const QV4::BuiltinFunct
if (!r || !r->d()->datum)\
RETURN_RESULT(scope.engine->throwError(QStringLiteral("Not a valid ParticleData object")));\
\
- r->d()->datum-> VARIABLE = (callData->argc && callData->args[0].toBoolean()) ? 1.0 : 0.0;\
+ r->d()->datum-> VARIABLE = (callData->argc() && callData->args[0].toBoolean()) ? 1.0 : 0.0;\
RETURN_UNDEFINED(); \
}
@@ -390,7 +390,7 @@ static QV4::ReturnedValue particleData_set_ ## VARIABLE (const QV4::BuiltinFunct
if (!r || !r->d()->datum)\
RETURN_RESULT(scope.engine->throwError(QStringLiteral("Not a valid ParticleData object")));\
\
- r->d()->datum-> VARIABLE = callData->argc ? callData->args[0].toNumber() : qt_qnan();\
+ r->d()->datum-> VARIABLE = callData->argc() ? callData->args[0].toNumber() : qt_qnan();\
RETURN_UNDEFINED(); \
}
@@ -411,7 +411,7 @@ static QV4::ReturnedValue particleData_set_ ## VARIABLE (const QV4::BuiltinFunct
if (!r || !r->d()->datum)\
RETURN_RESULT(scope.engine->throwError(QStringLiteral("Not a valid ParticleData object")));\
\
- r->d()->datum-> SETTER (callData->argc ? callData->args[0].toNumber() : qt_qnan(), r->d()->particleSystem);\
+ r->d()->datum-> SETTER (callData->argc() ? callData->args[0].toNumber() : qt_qnan(), r->d()->particleSystem);\
RETURN_UNDEFINED(); \
}
diff --git a/src/qml/jsruntime/qv4argumentsobject.cpp b/src/qml/jsruntime/qv4argumentsobject.cpp
index 1a60725d27..b86b616178 100644
--- a/src/qml/jsruntime/qv4argumentsobject.cpp
+++ b/src/qml/jsruntime/qv4argumentsobject.cpp
@@ -232,7 +232,7 @@ ReturnedValue ArgumentsSetterFunction::call(const Managed *setter, CallData *cal
return v4->throwTypeError();
Q_ASSERT(s->index() < static_cast<unsigned>(o->context()->argc()));
- o->context()->setArg(s->index(), (callData->argc ? callData->args[0] : Primitive::undefinedValue()));
+ o->context()->setArg(s->index(), (callData->argc() ? callData->args[0] : Primitive::undefinedValue()));
return Encode::undefined();
}
diff --git a/src/qml/jsruntime/qv4arraybuffer.cpp b/src/qml/jsruntime/qv4arraybuffer.cpp
index bd47d0bc77..e5388e714c 100644
--- a/src/qml/jsruntime/qv4arraybuffer.cpp
+++ b/src/qml/jsruntime/qv4arraybuffer.cpp
@@ -80,7 +80,7 @@ ReturnedValue ArrayBufferCtor::call(const Managed *that, CallData *callData)
ReturnedValue ArrayBufferCtor::method_isView(const BuiltinFunction *, CallData *callData)
{
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return Encode(false);
if (callData->args[0].as<TypedArray>() ||
@@ -173,8 +173,8 @@ ReturnedValue ArrayBufferPrototype::method_slice(const BuiltinFunction *b, CallD
if (!a)
return v4->throwTypeError();
- double start = callData->argc > 0 ? callData->args[0].toInteger() : 0;
- double end = (callData->argc < 2 || callData->args[1].isUndefined()) ?
+ double start = callData->argc() > 0 ? callData->args[0].toInteger() : 0;
+ double end = (callData->argc() < 2 || callData->args[1].isUndefined()) ?
a->d()->data->size : callData->args[1].toInteger();
if (v4->hasException)
return QV4::Encode::undefined();
diff --git a/src/qml/jsruntime/qv4arrayobject.cpp b/src/qml/jsruntime/qv4arrayobject.cpp
index 7796da5c70..5abfe3f8ae 100644
--- a/src/qml/jsruntime/qv4arrayobject.cpp
+++ b/src/qml/jsruntime/qv4arrayobject.cpp
@@ -61,7 +61,7 @@ ReturnedValue ArrayCtor::construct(const Managed *m, CallData *callData)
Scope scope(v4);
ScopedArrayObject a(scope, v4->newArrayObject());
uint len;
- if (callData->argc == 1 && callData->args[0].isNumber()) {
+ if (callData->argc() == 1 && callData->args[0].isNumber()) {
bool ok;
len = callData->args[0].asArrayLength(&ok);
@@ -71,7 +71,7 @@ ReturnedValue ArrayCtor::construct(const Managed *m, CallData *callData)
if (len < 0x1000)
a->arrayReserve(len);
} else {
- len = callData->argc;
+ len = callData->argc();
a->arrayReserve(len);
a->arrayPut(0, callData->args, len);
}
@@ -120,7 +120,7 @@ void ArrayPrototype::init(ExecutionEngine *engine, Object *ctor)
ReturnedValue ArrayPrototype::method_isArray(const BuiltinFunction *, CallData *callData)
{
- bool isArray = callData->argc && callData->args[0].as<ArrayObject>();
+ bool isArray = callData->argc() && callData->args[0].as<ArrayObject>();
return Encode(isArray);
}
@@ -163,7 +163,7 @@ ReturnedValue ArrayPrototype::method_concat(const BuiltinFunction *b, CallData *
ScopedArrayObject elt(scope);
ScopedObject eltAsObj(scope);
ScopedValue entry(scope);
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
eltAsObj = callData->args[i];
elt = callData->args[i];
if (elt) {
@@ -359,16 +359,16 @@ ReturnedValue ArrayPrototype::method_push(const BuiltinFunction *b, CallData *ca
uint len = instance->getLength();
- if (len + callData->argc < len) {
+ if (len + callData->argc() < len) {
// ughh... this goes beyond UINT_MAX
double l = len;
ScopedString s(scope);
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
s = Primitive::fromDouble(l + i).toString(scope.engine);
if (!instance->put(s, callData->args[i]))
return scope.engine->throwTypeError();
}
- double newLen = l + callData->argc;
+ double newLen = l + callData->argc();
if (!instance->isArrayObject()) {
if (!instance->put(scope.engine->id_length(), ScopedValue(scope, Primitive::fromDouble(newLen))))
return scope.engine->throwTypeError();
@@ -379,16 +379,17 @@ ReturnedValue ArrayPrototype::method_push(const BuiltinFunction *b, CallData *ca
return Encode(newLen);
}
- if (!callData->argc)
+ if (!callData->argc())
;
else if (!instance->protoHasArray() && instance->arrayData()->length() <= len && instance->arrayData()->type == Heap::ArrayData::Simple) {
- instance->arrayData()->vtable()->putArray(instance, len, callData->args, callData->argc);
+ instance->arrayData()->vtable()->putArray(instance, len, callData->args, callData->argc());
len = instance->arrayData()->length();
} else {
- for (int i = 0; i < callData->argc; ++i)
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
if (!instance->putIndexed(len + i, callData->args[i]))
return scope.engine->throwTypeError();
- len += callData->argc;
+ }
+ len += callData->argc();
}
if (instance->isArrayObject())
instance->setArrayLengthUnchecked(len);
@@ -508,7 +509,7 @@ ReturnedValue ArrayPrototype::method_slice(const BuiltinFunction *b, CallData *c
else
start = (uint) s;
uint end = len;
- if (callData->argc > 1 && !callData->args[1].isUndefined()) {
+ if (callData->argc() > 1 && !callData->args[1].isUndefined()) {
double e = callData->args[1].toInteger();
if (e < 0)
end = (uint)qMax(len + e, 0.);
@@ -576,7 +577,7 @@ ReturnedValue ArrayPrototype::method_splice(const BuiltinFunction *b, CallData *
}
newArray->setArrayLengthUnchecked(deleteCount);
- uint itemCount = callData->argc < 2 ? 0 : callData->argc - 2;
+ uint itemCount = callData->argc() < 2 ? 0 : callData->argc() - 2;
if (itemCount < deleteCount) {
for (uint k = start; k < len - deleteCount; ++k) {
@@ -635,7 +636,7 @@ ReturnedValue ArrayPrototype::method_unshift(const BuiltinFunction *b, CallData
if (!instance->protoHasArray() && !instance->arrayData()->attrs && instance->arrayData()->length() <= len &&
instance->arrayData()->type != Heap::ArrayData::Custom) {
- instance->arrayData()->vtable()->push_front(instance, callData->args, callData->argc);
+ instance->arrayData()->vtable()->push_front(instance, callData->args, callData->argc());
} else {
ScopedValue v(scope);
for (uint k = len; k > 0; --k) {
@@ -643,20 +644,20 @@ ReturnedValue ArrayPrototype::method_unshift(const BuiltinFunction *b, CallData
v = instance->getIndexed(k - 1, &exists);
bool ok;
if (exists)
- ok = instance->putIndexed(k + callData->argc - 1, v);
+ ok = instance->putIndexed(k + callData->argc() - 1, v);
else
- ok = instance->deleteIndexedProperty(k + callData->argc - 1);
+ ok = instance->deleteIndexedProperty(k + callData->argc() - 1);
if (!ok)
return scope.engine->throwTypeError();
}
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
bool ok = instance->putIndexed(i, callData->args[i]);
if (!ok)
return scope.engine->throwTypeError();
}
}
- uint newLen = len + callData->argc;
+ uint newLen = len + callData->argc();
if (instance->isArrayObject())
instance->setArrayLengthUnchecked(newLen);
else {
@@ -681,7 +682,7 @@ ReturnedValue ArrayPrototype::method_indexOf(const BuiltinFunction *b, CallData
ScopedValue searchValue(scope, callData->argument(0));
uint fromIndex = 0;
- if (callData->argc >= 2) {
+ if (callData->argc() >= 2) {
double f = callData->args[1].toInteger();
CHECK_EXCEPTION();
if (f >= len)
@@ -747,12 +748,12 @@ ReturnedValue ArrayPrototype::method_lastIndexOf(const BuiltinFunction *b, CallD
ScopedValue searchValue(scope);
uint fromIndex = len;
- if (callData->argc >= 1)
+ if (callData->argc() >= 1)
searchValue = callData->argument(0);
else
searchValue = Primitive::undefinedValue();
- if (callData->argc >= 2) {
+ if (callData->argc() >= 2) {
double f = callData->args[1].toInteger();
CHECK_EXCEPTION();
if (f > 0)
@@ -970,7 +971,7 @@ ReturnedValue ArrayPrototype::method_reduce(const BuiltinFunction *b, CallData *
ScopedValue acc(scope);
ScopedValue v(scope);
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
acc = callData->argument(1);
} else {
bool kPresent = false;
@@ -1015,7 +1016,7 @@ ReturnedValue ArrayPrototype::method_reduceRight(const BuiltinFunction *b, CallD
THROW_TYPE_ERROR();
if (len == 0) {
- if (callData->argc == 1)
+ if (callData->argc() == 1)
THROW_TYPE_ERROR();
return callData->argument(1);
}
@@ -1023,7 +1024,7 @@ ReturnedValue ArrayPrototype::method_reduceRight(const BuiltinFunction *b, CallD
uint k = len;
ScopedValue acc(scope);
ScopedValue v(scope);
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
acc = callData->argument(1);
} else {
bool kPresent = false;
diff --git a/src/qml/jsruntime/qv4booleanobject.cpp b/src/qml/jsruntime/qv4booleanobject.cpp
index d74750fa8c..d4e02e0356 100644
--- a/src/qml/jsruntime/qv4booleanobject.cpp
+++ b/src/qml/jsruntime/qv4booleanobject.cpp
@@ -52,13 +52,13 @@ void Heap::BooleanCtor::init(QV4::ExecutionContext *scope)
ReturnedValue BooleanCtor::construct(const Managed *that, CallData *callData)
{
- bool n = callData->argc ? callData->args[0].toBoolean() : false;
+ bool n = callData->argc() ? callData->args[0].toBoolean() : false;
return Encode(that->engine()->newBooleanObject(n));
}
ReturnedValue BooleanCtor::call(const Managed *, CallData *callData)
{
- bool value = callData->argc ? callData->args[0].toBoolean() : 0;
+ bool value = callData->argc() ? callData->args[0].toBoolean() : 0;
return Encode(value);
}
diff --git a/src/qml/jsruntime/qv4context.cpp b/src/qml/jsruntime/qv4context.cpp
index b4edd34380..2598c079b8 100644
--- a/src/qml/jsruntime/qv4context.cpp
+++ b/src/qml/jsruntime/qv4context.cpp
@@ -57,7 +57,7 @@ DEFINE_MANAGED_VTABLE(CatchContext);
Heap::CallContext *ExecutionContext::newCallContext(Heap::ExecutionContext *outer, Function *function, CallData *callData)
{
- uint nFormals = qMax(static_cast<uint>(callData->argc), function->nFormals);
+ uint nFormals = qMax(static_cast<uint>(callData->argc()), function->nFormals);
uint localsAndFormals = function->compiledFunction->nLocals + nFormals;
size_t requiredMemory = sizeof(CallContext::Data) - sizeof(Value) + sizeof(Value) * (localsAndFormals);
@@ -83,7 +83,7 @@ Heap::CallContext *ExecutionContext::newCallContext(Heap::ExecutionContext *oute
#endif
::memcpy(c->locals.values + nLocals, &callData->args[0], nFormals * sizeof(Value));
- c->nArgs = callData->argc;
+ c->nArgs = callData->argc();
return c;
}
diff --git a/src/qml/jsruntime/qv4context_p.h b/src/qml/jsruntime/qv4context_p.h
index ec027c9fd3..7ed3320f8a 100644
--- a/src/qml/jsruntime/qv4context_p.h
+++ b/src/qml/jsruntime/qv4context_p.h
@@ -86,17 +86,20 @@ struct CallData
Value context;
Value accumulator;
Value thisObject;
+ Value _argc;
+
+ int argc() const {
+ Q_ASSERT(_argc.isInteger());
+ return _argc.int_32();
+ }
+
+ void setArgc(int argc) {
+ Q_ASSERT(argc >= 0);
+ _argc.setInt_32(argc);
+ }
- // below is to be compatible with Value. Initialize tag to 0
-#if Q_BYTE_ORDER != Q_LITTLE_ENDIAN
- uint tag;
-#endif
- int argc;
-#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
- uint tag;
-#endif
inline ReturnedValue argument(int i) const {
- return i < argc ? args[i].asReturnedValue() : Primitive::undefinedValue().asReturnedValue();
+ return i < argc() ? args[i].asReturnedValue() : Primitive::undefinedValue().asReturnedValue();
}
Value args[1];
diff --git a/src/qml/jsruntime/qv4dataview.cpp b/src/qml/jsruntime/qv4dataview.cpp
index 57b5045f57..73163a9e32 100644
--- a/src/qml/jsruntime/qv4dataview.cpp
+++ b/src/qml/jsruntime/qv4dataview.cpp
@@ -61,10 +61,10 @@ ReturnedValue DataViewCtor::construct(const Managed *m, CallData *callData)
if (!buffer)
return scope.engine->throwTypeError();
- double bo = callData->argc > 1 ? callData->args[1].toNumber() : 0;
+ double bo = callData->argc() > 1 ? callData->args[1].toNumber() : 0;
uint byteOffset = (uint)bo;
uint bufferLength = buffer->d()->data->size;
- double bl = callData->argc < 3 || callData->args[2].isUndefined() ? (bufferLength - bo) : callData->args[2].toNumber();
+ double bl = callData->argc() < 3 || callData->args[2].isUndefined() ? (bufferLength - bo) : callData->args[2].toNumber();
uint byteLength = (uint)bl;
if (bo != byteOffset || bl != byteLength || byteOffset + byteLength > bufferLength)
return scope.engine->throwRangeError(QStringLiteral("DataView: constructor arguments out of range"));
@@ -150,7 +150,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_getChar(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -167,7 +167,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_get(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -175,7 +175,7 @@ ReturnedValue DataViewPrototype::method_get(const BuiltinFunction *b, CallData *
return b->engine()->throwTypeError();
idx += v->d()->byteOffset;
- bool littleEndian = callData->argc < 2 ? false : callData->args[1].toBoolean();
+ bool littleEndian = callData->argc() < 2 ? false : callData->args[1].toBoolean();
T t = littleEndian
? qFromLittleEndian<T>((uchar *)v->d()->buffer->data->data() + idx)
@@ -188,7 +188,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_getFloat(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -196,7 +196,7 @@ ReturnedValue DataViewPrototype::method_getFloat(const BuiltinFunction *b, CallD
return b->engine()->throwTypeError();
idx += v->d()->byteOffset;
- bool littleEndian = callData->argc < 2 ? false : callData->args[1].toBoolean();
+ bool littleEndian = callData->argc() < 2 ? false : callData->args[1].toBoolean();
if (sizeof(T) == 4) {
// float
@@ -225,7 +225,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_setChar(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -233,7 +233,7 @@ ReturnedValue DataViewPrototype::method_setChar(const BuiltinFunction *b, CallDa
return b->engine()->throwTypeError();
idx += v->d()->byteOffset;
- int val = callData->argc >= 2 ? callData->args[1].toInt32() : 0;
+ int val = callData->argc() >= 2 ? callData->args[1].toInt32() : 0;
v->d()->buffer->data->data()[idx] = (char)val;
RETURN_UNDEFINED();
@@ -243,7 +243,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_set(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -251,9 +251,9 @@ ReturnedValue DataViewPrototype::method_set(const BuiltinFunction *b, CallData *
return b->engine()->throwTypeError();
idx += v->d()->byteOffset;
- int val = callData->argc >= 2 ? callData->args[1].toInt32() : 0;
+ int val = callData->argc() >= 2 ? callData->args[1].toInt32() : 0;
- bool littleEndian = callData->argc < 3 ? false : callData->args[2].toBoolean();
+ bool littleEndian = callData->argc() < 3 ? false : callData->args[2].toBoolean();
if (littleEndian)
qToLittleEndian<T>(val, (uchar *)v->d()->buffer->data->data() + idx);
@@ -267,7 +267,7 @@ template <typename T>
ReturnedValue DataViewPrototype::method_setFloat(const BuiltinFunction *b, CallData *callData)
{
DataView *v = callData->thisObject.as<DataView>();
- if (!v || callData->argc < 1)
+ if (!v || callData->argc() < 1)
return b->engine()->throwTypeError();
double l = callData->args[0].toNumber();
uint idx = (uint)l;
@@ -275,8 +275,8 @@ ReturnedValue DataViewPrototype::method_setFloat(const BuiltinFunction *b, CallD
return b->engine()->throwTypeError();
idx += v->d()->byteOffset;
- double val = callData->argc >= 2 ? callData->args[1].toNumber() : qt_qnan();
- bool littleEndian = callData->argc < 3 ? false : callData->args[2].toBoolean();
+ double val = callData->argc() >= 2 ? callData->args[1].toNumber() : qt_qnan();
+ bool littleEndian = callData->argc() < 3 ? false : callData->args[2].toBoolean();
if (sizeof(T) == 4) {
// float
diff --git a/src/qml/jsruntime/qv4dateobject.cpp b/src/qml/jsruntime/qv4dateobject.cpp
index 64aecfe352..36ba36f2d3 100644
--- a/src/qml/jsruntime/qv4dateobject.cpp
+++ b/src/qml/jsruntime/qv4dateobject.cpp
@@ -682,10 +682,10 @@ ReturnedValue DateCtor::construct(const Managed *that, CallData *callData)
{
double t = 0;
- if (callData->argc == 0)
+ if (callData->argc() == 0)
t = currentTime();
- else if (callData->argc == 1) {
+ else if (callData->argc() == 1) {
Scope scope(that->engine());
ScopedValue arg(scope, callData->args[0]);
if (DateObject *d = arg->as<DateObject>()) {
@@ -703,11 +703,11 @@ ReturnedValue DateCtor::construct(const Managed *that, CallData *callData)
else { // d.argc > 1
double year = callData->args[0].toNumber();
double month = callData->args[1].toNumber();
- double day = callData->argc >= 3 ? callData->args[2].toNumber() : 1;
- double hours = callData->argc >= 4 ? callData->args[3].toNumber() : 0;
- double mins = callData->argc >= 5 ? callData->args[4].toNumber() : 0;
- double secs = callData->argc >= 6 ? callData->args[5].toNumber() : 0;
- double ms = callData->argc >= 7 ? callData->args[6].toNumber() : 0;
+ double day = callData->argc() >= 3 ? callData->args[2].toNumber() : 1;
+ double hours = callData->argc() >= 4 ? callData->args[3].toNumber() : 0;
+ double mins = callData->argc() >= 5 ? callData->args[4].toNumber() : 0;
+ double secs = callData->argc() >= 6 ? callData->args[5].toNumber() : 0;
+ double ms = callData->argc() >= 7 ? callData->args[6].toNumber() : 0;
if (year >= 0 && year <= 99)
year += 1900;
t = MakeDate(MakeDay(year, month, day), MakeTime(hours, mins, secs, ms));
@@ -809,7 +809,7 @@ double DatePrototype::getThisDate(ExecutionEngine *v4, CallData *callData)
ReturnedValue DatePrototype::method_parse(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
return Encode(qt_qnan());
else
return Encode(ParseString(callData->args[0].toQString()));
@@ -817,7 +817,7 @@ ReturnedValue DatePrototype::method_parse(const BuiltinFunction *, CallData *cal
ReturnedValue DatePrototype::method_UTC(const BuiltinFunction *, CallData *callData)
{
- const int numArgs = callData->argc;
+ const int numArgs = callData->argc();
if (numArgs >= 2) {
double year = callData->args[0].toNumber();
double month = callData->args[1].toNumber();
@@ -1066,7 +1066,7 @@ ReturnedValue DatePrototype::method_setTime(const BuiltinFunction *b, CallData *
if (!self)
return v4->throwTypeError();
- double t = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double t = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
self->setDate(TimeClip(t));
@@ -1083,7 +1083,7 @@ ReturnedValue DatePrototype::method_setMilliseconds(const BuiltinFunction *b, Ca
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double ms = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double ms = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
self->setDate(TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms)))));
@@ -1100,7 +1100,7 @@ ReturnedValue DatePrototype::method_setUTCMilliseconds(const BuiltinFunction *b,
double t = self->date();
if (v4->hasException)
return QV4::Encode::undefined();
- double ms = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double ms = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
self->setDate(TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms))));
@@ -1117,10 +1117,10 @@ ReturnedValue DatePrototype::method_setSeconds(const BuiltinFunction *b, CallDat
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double sec = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double sec = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
- double ms = (callData->argc < 2) ? msFromTime(t) : callData->args[1].toNumber();
+ double ms = (callData->argc() < 2) ? msFromTime(t) : callData->args[1].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), sec, ms))));
@@ -1136,8 +1136,8 @@ ReturnedValue DatePrototype::method_setUTCSeconds(const BuiltinFunction *b, Call
return v4->throwTypeError();
double t = self->date();
- double sec = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double ms = (callData->argc < 2) ? msFromTime(t) : callData->args[1].toNumber();
+ double sec = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double ms = (callData->argc() < 2) ? msFromTime(t) : callData->args[1].toNumber();
t = TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), sec, ms)));
self->setDate(t);
return Encode(self->date());
@@ -1153,13 +1153,13 @@ ReturnedValue DatePrototype::method_setMinutes(const BuiltinFunction *b, CallDat
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double min = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double min = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
- double sec = (callData->argc < 2) ? SecFromTime(t) : callData->args[1].toNumber();
+ double sec = (callData->argc() < 2) ? SecFromTime(t) : callData->args[1].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
- double ms = (callData->argc < 3) ? msFromTime(t) : callData->args[2].toNumber();
+ double ms = (callData->argc() < 3) ? msFromTime(t) : callData->args[2].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), min, sec, ms))));
@@ -1175,9 +1175,9 @@ ReturnedValue DatePrototype::method_setUTCMinutes(const BuiltinFunction *b, Call
return v4->throwTypeError();
double t = self->date();
- double min = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double sec = (callData->argc < 2) ? SecFromTime(t) : callData->args[1].toNumber();
- double ms = (callData->argc < 3) ? msFromTime(t) : callData->args[2].toNumber();
+ double min = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double sec = (callData->argc() < 2) ? SecFromTime(t) : callData->args[1].toNumber();
+ double ms = (callData->argc() < 3) ? msFromTime(t) : callData->args[2].toNumber();
t = TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), min, sec, ms)));
self->setDate(t);
return Encode(self->date());
@@ -1193,16 +1193,16 @@ ReturnedValue DatePrototype::method_setHours(const BuiltinFunction *b, CallData
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double hour = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double hour = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
- double min = (callData->argc < 2) ? MinFromTime(t) : callData->args[1].toNumber();
+ double min = (callData->argc() < 2) ? MinFromTime(t) : callData->args[1].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
- double sec = (callData->argc < 3) ? SecFromTime(t) : callData->args[2].toNumber();
+ double sec = (callData->argc() < 3) ? SecFromTime(t) : callData->args[2].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
- double ms = (callData->argc < 4) ? msFromTime(t) : callData->args[3].toNumber();
+ double ms = (callData->argc() < 4) ? msFromTime(t) : callData->args[3].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(Day(t), MakeTime(hour, min, sec, ms))));
@@ -1218,10 +1218,10 @@ ReturnedValue DatePrototype::method_setUTCHours(const BuiltinFunction *b, CallDa
return v4->throwTypeError();
double t = self->date();
- double hour = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double min = (callData->argc < 2) ? MinFromTime(t) : callData->args[1].toNumber();
- double sec = (callData->argc < 3) ? SecFromTime(t) : callData->args[2].toNumber();
- double ms = (callData->argc < 4) ? msFromTime(t) : callData->args[3].toNumber();
+ double hour = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double min = (callData->argc() < 2) ? MinFromTime(t) : callData->args[1].toNumber();
+ double sec = (callData->argc() < 3) ? SecFromTime(t) : callData->args[2].toNumber();
+ double ms = (callData->argc() < 4) ? msFromTime(t) : callData->args[3].toNumber();
t = TimeClip(MakeDate(Day(t), MakeTime(hour, min, sec, ms)));
self->setDate(t);
return Encode(self->date());
@@ -1237,7 +1237,7 @@ ReturnedValue DatePrototype::method_setDate(const BuiltinFunction *b, CallData *
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double date = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double date = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(MakeDay(YearFromTime(t), MonthFromTime(t), date), TimeWithinDay(t))));
@@ -1255,7 +1255,7 @@ ReturnedValue DatePrototype::method_setUTCDate(const BuiltinFunction *b, CallDat
double t = self->date();
if (v4->hasException)
return QV4::Encode::undefined();
- double date = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double date = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(MakeDate(MakeDay(YearFromTime(t), MonthFromTime(t), date), TimeWithinDay(t)));
@@ -1273,10 +1273,10 @@ ReturnedValue DatePrototype::method_setMonth(const BuiltinFunction *b, CallData
double t = LocalTime(self->date());
if (v4->hasException)
return QV4::Encode::undefined();
- double month = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double month = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
- double date = (callData->argc < 2) ? DateFromTime(t) : callData->args[1].toNumber();
+ double date = (callData->argc() < 2) ? DateFromTime(t) : callData->args[1].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(MakeDay(YearFromTime(t), month, date), TimeWithinDay(t))));
@@ -1292,8 +1292,8 @@ ReturnedValue DatePrototype::method_setUTCMonth(const BuiltinFunction *b, CallDa
return v4->throwTypeError();
double t = self->date();
- double month = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double date = (callData->argc < 2) ? DateFromTime(t) : callData->args[1].toNumber();
+ double month = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double date = (callData->argc() < 2) ? DateFromTime(t) : callData->args[1].toNumber();
t = TimeClip(MakeDate(MakeDay(YearFromTime(t), month, date), TimeWithinDay(t)));
self->setDate(t);
return Encode(self->date());
@@ -1311,7 +1311,7 @@ ReturnedValue DatePrototype::method_setYear(const BuiltinFunction *b, CallData *
t = 0;
else
t = LocalTime(t);
- double year = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double year = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
double r;
if (std::isnan(year)) {
r = qt_qnan();
@@ -1334,9 +1334,9 @@ ReturnedValue DatePrototype::method_setUTCFullYear(const BuiltinFunction *b, Cal
return v4->throwTypeError();
double t = self->date();
- double year = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double month = (callData->argc < 2) ? MonthFromTime(t) : callData->args[1].toNumber();
- double date = (callData->argc < 3) ? DateFromTime(t) : callData->args[2].toNumber();
+ double year = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double month = (callData->argc() < 2) ? MonthFromTime(t) : callData->args[1].toNumber();
+ double date = (callData->argc() < 3) ? DateFromTime(t) : callData->args[2].toNumber();
t = TimeClip(MakeDate(MakeDay(year, month, date), TimeWithinDay(t)));
self->setDate(t);
return Encode(self->date());
@@ -1354,13 +1354,13 @@ ReturnedValue DatePrototype::method_setFullYear(const BuiltinFunction *b, CallDa
return QV4::Encode::undefined();
if (std::isnan(t))
t = 0;
- double year = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double year = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v4->hasException)
return QV4::Encode::undefined();
- double month = (callData->argc < 2) ? MonthFromTime(t) : callData->args[1].toNumber();
+ double month = (callData->argc() < 2) ? MonthFromTime(t) : callData->args[1].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
- double date = (callData->argc < 3) ? DateFromTime(t) : callData->args[2].toNumber();
+ double date = (callData->argc() < 3) ? DateFromTime(t) : callData->args[2].toNumber();
if (v4->hasException)
return QV4::Encode::undefined();
t = TimeClip(UTC(MakeDate(MakeDay(year, month, date), TimeWithinDay(t))));
diff --git a/src/qml/jsruntime/qv4functionobject.cpp b/src/qml/jsruntime/qv4functionobject.cpp
index 3f971fcca5..98b3766242 100644
--- a/src/qml/jsruntime/qv4functionobject.cpp
+++ b/src/qml/jsruntime/qv4functionobject.cpp
@@ -185,13 +185,13 @@ ReturnedValue FunctionCtor::construct(const Managed *that, CallData *callData)
QString arguments;
QString body;
- if (callData->argc > 0) {
- for (int i = 0; i < callData->argc - 1; ++i) {
+ if (callData->argc() > 0) {
+ for (int i = 0, ei = callData->argc() - 1; i < ei; ++i) {
if (i)
arguments += QLatin1String(", ");
arguments += callData->args[i].toQString();
}
- body = callData->args[callData->argc - 1].toQString();
+ body = callData->args[callData->argc() - 1].toQString();
}
if (scope.engine->hasException)
return Encode::undefined();
@@ -321,10 +321,10 @@ ReturnedValue FunctionPrototype::method_call(const BuiltinFunction *b, CallData
return e->throwTypeError();
}
callData->function = callData->thisObject;
- callData->thisObject = callData->argc ? callData->args[0] : Primitive::undefinedValue();
- if (callData->argc) {
- --callData->argc;
- for (int i = 0; i < callData->argc; ++i)
+ callData->thisObject = callData->argc() ? callData->args[0] : Primitive::undefinedValue();
+ if (callData->argc()) {
+ callData->setArgc(callData->argc() - 1);
+ for (int i = 0, ei = callData->argc(); i < ei; ++i)
callData->args[i] = callData->args[i + 1];
}
return static_cast<FunctionObject &>(callData->function).call(callData);
@@ -339,10 +339,10 @@ ReturnedValue FunctionPrototype::method_bind(const BuiltinFunction *b, CallData
ScopedValue boundThis(scope, callData->argument(0));
Scoped<MemberData> boundArgs(scope, (Heap::MemberData *)0);
- if (callData->argc > 1) {
- boundArgs = MemberData::allocate(scope.engine, callData->argc - 1);
- boundArgs->d()->values.size = callData->argc - 1;
- for (uint i = 0; i < static_cast<uint>(callData->argc - 1); ++i)
+ if (callData->argc() > 1) {
+ boundArgs = MemberData::allocate(scope.engine, callData->argc() - 1);
+ boundArgs->d()->values.size = callData->argc() - 1;
+ for (uint i = 0, ei = static_cast<uint>(callData->argc() - 1); i < ei; ++i)
boundArgs->set(scope.engine, i, callData->args[i + 1]);
}
@@ -487,14 +487,14 @@ ReturnedValue BoundFunction::call(const Managed *that, CallData *dd)
return Encode::undefined();
Scoped<MemberData> boundArgs(scope, f->boundArgs());
- JSCall jsCall(scope, f->target(), (boundArgs ? boundArgs->size() : 0) + dd->argc);
+ JSCall jsCall(scope, f->target(), (boundArgs ? boundArgs->size() : 0) + dd->argc());
jsCall->thisObject = f->boundThis();
Value *argp = jsCall->args;
if (boundArgs) {
memcpy(argp, boundArgs->data(), boundArgs->size()*sizeof(Value));
argp += boundArgs->size();
}
- memcpy(argp, dd->args, dd->argc*sizeof(Value));
+ memcpy(argp, dd->args, dd->argc()*sizeof(Value));
return jsCall.call();
}
@@ -507,12 +507,12 @@ ReturnedValue BoundFunction::construct(const Managed *that, CallData *dd)
return Encode::undefined();
Scoped<MemberData> boundArgs(scope, f->boundArgs());
- JSCall jsCall(scope, f->target(), (boundArgs ? boundArgs->size() : 0) + dd->argc);
+ JSCall jsCall(scope, f->target(), (boundArgs ? boundArgs->size() : 0) + dd->argc());
Value *argp = jsCall->args;
if (boundArgs) {
memcpy(argp, boundArgs->data(), boundArgs->size()*sizeof(Value));
argp += boundArgs->size();
}
- memcpy(argp, dd->args, dd->argc*sizeof(Value));
+ memcpy(argp, dd->args, dd->argc()*sizeof(Value));
return jsCall.callAsConstructor();
}
diff --git a/src/qml/jsruntime/qv4globalobject.cpp b/src/qml/jsruntime/qv4globalobject.cpp
index 11105dfdcb..668fea25e7 100644
--- a/src/qml/jsruntime/qv4globalobject.cpp
+++ b/src/qml/jsruntime/qv4globalobject.cpp
@@ -340,7 +340,7 @@ void Heap::EvalFunction::init(QV4::ExecutionContext *scope)
ReturnedValue EvalFunction::evalCall(CallData *callData, bool directCall) const
{
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return Encode::undefined();
ExecutionEngine *v4 = engine();
@@ -528,7 +528,7 @@ ReturnedValue GlobalFunctions::method_parseFloat(const BuiltinFunction *b, CallD
/// isNaN [15.1.2.4]
ReturnedValue GlobalFunctions::method_isNaN(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
// undefined gets converted to NaN
RETURN_RESULT(Encode(true));
@@ -542,7 +542,7 @@ ReturnedValue GlobalFunctions::method_isNaN(const BuiltinFunction *, CallData *c
/// isFinite [15.1.2.5]
ReturnedValue GlobalFunctions::method_isFinite(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
// undefined gets converted to NaN
RETURN_RESULT(Encode(false));
@@ -556,7 +556,7 @@ ReturnedValue GlobalFunctions::method_isFinite(const BuiltinFunction *, CallData
/// decodeURI [15.1.3.1]
ReturnedValue GlobalFunctions::method_decodeURI(const BuiltinFunction *b, CallData *callData)
{
- if (callData->argc == 0)
+ if (callData->argc() == 0)
RETURN_UNDEFINED();
ExecutionEngine *v4 = b->engine();
@@ -575,7 +575,7 @@ ReturnedValue GlobalFunctions::method_decodeURI(const BuiltinFunction *b, CallDa
/// decodeURIComponent [15.1.3.2]
ReturnedValue GlobalFunctions::method_decodeURIComponent(const BuiltinFunction *b, CallData *callData)
{
- if (callData->argc == 0)
+ if (callData->argc() == 0)
RETURN_UNDEFINED();
ExecutionEngine *v4 = b->engine();
@@ -594,7 +594,7 @@ ReturnedValue GlobalFunctions::method_decodeURIComponent(const BuiltinFunction *
/// encodeURI [15.1.3.3]
ReturnedValue GlobalFunctions::method_encodeURI(const BuiltinFunction *b, CallData *callData)
{
- if (callData->argc == 0)
+ if (callData->argc() == 0)
RETURN_UNDEFINED();
ExecutionEngine *v4 = b->engine();
@@ -613,7 +613,7 @@ ReturnedValue GlobalFunctions::method_encodeURI(const BuiltinFunction *b, CallDa
/// encodeURIComponent [15.1.3.4]
ReturnedValue GlobalFunctions::method_encodeURIComponent(const BuiltinFunction *b, CallData *callData)
{
- if (callData->argc == 0)
+ if (callData->argc() == 0)
RETURN_UNDEFINED();
ExecutionEngine *v4 = b->engine();
@@ -632,7 +632,7 @@ ReturnedValue GlobalFunctions::method_encodeURIComponent(const BuiltinFunction *
ReturnedValue GlobalFunctions::method_escape(const BuiltinFunction *b, CallData *callData)
{
ExecutionEngine *v4 = b->engine();
- if (!callData->argc)
+ if (!callData->argc())
RETURN_RESULT(v4->newString(QStringLiteral("undefined")));
QString str = callData->args[0].toQString();
@@ -642,7 +642,7 @@ ReturnedValue GlobalFunctions::method_escape(const BuiltinFunction *b, CallData
ReturnedValue GlobalFunctions::method_unescape(const BuiltinFunction *b, CallData *callData)
{
ExecutionEngine *v4 = b->engine();
- if (!callData->argc)
+ if (!callData->argc())
RETURN_RESULT(v4->newString(QStringLiteral("undefined")));
QString str = callData->args[0].toQString();
diff --git a/src/qml/jsruntime/qv4include.cpp b/src/qml/jsruntime/qv4include.cpp
index 8983bea1a8..8122f61a5e 100644
--- a/src/qml/jsruntime/qv4include.cpp
+++ b/src/qml/jsruntime/qv4include.cpp
@@ -199,7 +199,7 @@ void QV4Include::finished()
QV4::ReturnedValue QV4Include::method_include(const QV4::BuiltinFunction *b, QV4::CallData *callData)
{
QV4::Scope scope(b);
- if (!callData->argc)
+ if (!callData->argc())
RETURN_UNDEFINED();
QQmlContextData *context = scope.engine->callingQmlContext();
@@ -208,7 +208,7 @@ QV4::ReturnedValue QV4Include::method_include(const QV4::BuiltinFunction *b, QV4
RETURN_RESULT(scope.engine->throwError(QString::fromUtf8("Qt.include(): Can only be called from JavaScript files")));
QV4::ScopedValue callbackFunction(scope, QV4::Primitive::undefinedValue());
- if (callData->argc >= 2 && callData->args[1].as<QV4::FunctionObject>())
+ if (callData->argc() >= 2 && callData->args[1].as<QV4::FunctionObject>())
callbackFunction = callData->args[1];
#if QT_CONFIG(qml_network)
diff --git a/src/qml/jsruntime/qv4jscall_p.h b/src/qml/jsruntime/qv4jscall_p.h
index 78201a0ba8..8fd6119102 100644
--- a/src/qml/jsruntime/qv4jscall_p.h
+++ b/src/qml/jsruntime/qv4jscall_p.h
@@ -65,23 +65,20 @@ struct JSCall {
{
int size = int(offsetof(QV4::CallData, args)/sizeof(QV4::Value)) + qMax(argc , int(QV4::Global::ReservedArgumentCount));
ptr = reinterpret_cast<CallData *>(scope.alloc(size));
- ptr->tag = quint32(QV4::Value::ValueTypeInternal::Integer);
- ptr->argc = argc;
+ ptr->setArgc(argc);
}
JSCall(const Scope &scope, const FunctionObject *function, int argc = 0)
{
int size = int(offsetof(QV4::CallData, args)/sizeof(QV4::Value)) + qMax(argc , int(QV4::Global::ReservedArgumentCount));
ptr = reinterpret_cast<CallData *>(scope.alloc(size));
- ptr->tag = quint32(QV4::Value::ValueTypeInternal::Integer);
- ptr->argc = argc;
+ ptr->setArgc(argc);
ptr->function = *function;
}
JSCall(const Scope &scope, Heap::FunctionObject *function, int argc = 0)
{
int size = int(offsetof(QV4::CallData, args)/sizeof(QV4::Value)) + qMax(argc , int(QV4::Global::ReservedArgumentCount));
ptr = reinterpret_cast<CallData *>(scope.alloc(size));
- ptr->tag = quint32(QV4::Value::ValueTypeInternal::Integer);
- ptr->argc = argc;
+ ptr->setArgc(argc);
ptr->function = function;
}
diff --git a/src/qml/jsruntime/qv4jsonobject.cpp b/src/qml/jsruntime/qv4jsonobject.cpp
index 83cfb434dc..fb1f4abbfc 100644
--- a/src/qml/jsruntime/qv4jsonobject.cpp
+++ b/src/qml/jsruntime/qv4jsonobject.cpp
@@ -888,7 +888,7 @@ ReturnedValue JsonObject::method_parse(const BuiltinFunction *b, CallData *callD
{
ExecutionEngine *v4 = b->engine();
QString jtext;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
jtext = callData->args[0].toQString();
DEBUG << "parsing source = " << jtext;
diff --git a/src/qml/jsruntime/qv4mathobject.cpp b/src/qml/jsruntime/qv4mathobject.cpp
index cdf5c3117c..5419e45038 100644
--- a/src/qml/jsruntime/qv4mathobject.cpp
+++ b/src/qml/jsruntime/qv4mathobject.cpp
@@ -95,7 +95,7 @@ static Q_ALWAYS_INLINE double copySign(double x, double y)
ReturnedValue MathObject::method_abs(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
RETURN_RESULT(Encode(qt_qnan()));
if (callData->args[0].isInteger()) {
@@ -112,7 +112,7 @@ ReturnedValue MathObject::method_abs(const BuiltinFunction *, CallData *callData
ReturnedValue MathObject::method_acos(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : 2;
+ double v = callData->argc() ? callData->args[0].toNumber() : 2;
if (v > 1)
RETURN_RESULT(Encode(qt_qnan()));
@@ -121,7 +121,7 @@ ReturnedValue MathObject::method_acos(const BuiltinFunction *, CallData *callDat
ReturnedValue MathObject::method_asin(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : 2;
+ double v = callData->argc() ? callData->args[0].toNumber() : 2;
if (v > 1)
RETURN_RESULT(Encode(qt_qnan()));
else
@@ -130,7 +130,7 @@ ReturnedValue MathObject::method_asin(const BuiltinFunction *, CallData *callDat
ReturnedValue MathObject::method_atan(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v == 0.0)
RETURN_RESULT(Encode(v));
else
@@ -139,8 +139,8 @@ ReturnedValue MathObject::method_atan(const BuiltinFunction *, CallData *callDat
ReturnedValue MathObject::method_atan2(const BuiltinFunction *, CallData *callData)
{
- double v1 = callData->argc ? callData->args[0].toNumber() : qt_qnan();
- double v2 = callData->argc > 1 ? callData->args[1].toNumber() : qt_qnan();
+ double v1 = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
+ double v2 = callData->argc() > 1 ? callData->args[1].toNumber() : qt_qnan();
if ((v1 < 0) && qt_is_finite(v1) && qt_is_inf(v2) && (copySign(1.0, v2) == 1.0))
RETURN_RESULT(Encode(copySign(0, -1.0)));
@@ -157,7 +157,7 @@ ReturnedValue MathObject::method_atan2(const BuiltinFunction *, CallData *callDa
ReturnedValue MathObject::method_ceil(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v < 0.0 && v > -1.0)
RETURN_RESULT(Encode(copySign(0, -1.0)));
else
@@ -166,13 +166,13 @@ ReturnedValue MathObject::method_ceil(const BuiltinFunction *, CallData *callDat
ReturnedValue MathObject::method_cos(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
RETURN_RESULT(Encode(std::cos(v)));
}
ReturnedValue MathObject::method_exp(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (qt_is_inf(v)) {
if (copySign(1.0, v) == -1.0)
RETURN_RESULT(Encode(0));
@@ -185,7 +185,7 @@ ReturnedValue MathObject::method_exp(const BuiltinFunction *, CallData *callData
ReturnedValue MathObject::method_floor(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
Value result = Primitive::fromDouble(std::floor(v));
result.isInt32();
RETURN_RESULT(result);
@@ -193,7 +193,7 @@ ReturnedValue MathObject::method_floor(const BuiltinFunction *, CallData *callDa
ReturnedValue MathObject::method_log(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v < 0)
RETURN_RESULT(Encode(qt_qnan()));
else
@@ -203,7 +203,7 @@ ReturnedValue MathObject::method_log(const BuiltinFunction *, CallData *callData
ReturnedValue MathObject::method_max(const BuiltinFunction *, CallData *callData)
{
double mx = -qt_inf();
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
double x = callData->args[i].toNumber();
if (x > mx || std::isnan(x))
mx = x;
@@ -214,7 +214,7 @@ ReturnedValue MathObject::method_max(const BuiltinFunction *, CallData *callData
ReturnedValue MathObject::method_min(const BuiltinFunction *, CallData *callData)
{
double mx = qt_inf();
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
double x = callData->args[i].toNumber();
if ((x == 0 && mx == x && copySign(1.0, x) == -1.0)
|| (x < mx) || std::isnan(x)) {
@@ -226,8 +226,8 @@ ReturnedValue MathObject::method_min(const BuiltinFunction *, CallData *callData
ReturnedValue MathObject::method_pow(const BuiltinFunction *, CallData *callData)
{
- double x = callData->argc > 0 ? callData->args[0].toNumber() : qt_qnan();
- double y = callData->argc > 1 ? callData->args[1].toNumber() : qt_qnan();
+ double x = callData->argc() > 0 ? callData->args[0].toNumber() : qt_qnan();
+ double y = callData->argc() > 1 ? callData->args[1].toNumber() : qt_qnan();
if (std::isnan(y))
RETURN_RESULT(Encode(qt_qnan()));
@@ -281,14 +281,14 @@ ReturnedValue MathObject::method_random(const BuiltinFunction *, CallData *)
ReturnedValue MathObject::method_round(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
v = copySign(std::floor(v + 0.5), v);
RETURN_RESULT(Encode(v));
}
ReturnedValue MathObject::method_sign(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (std::isnan(v))
RETURN_RESULT(Encode(qt_qnan()));
@@ -301,19 +301,19 @@ ReturnedValue MathObject::method_sign(const BuiltinFunction *, CallData *callDat
ReturnedValue MathObject::method_sin(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
RETURN_RESULT(Encode(std::sin(v)));
}
ReturnedValue MathObject::method_sqrt(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
RETURN_RESULT(Encode(std::sqrt(v)));
}
ReturnedValue MathObject::method_tan(const BuiltinFunction *, CallData *callData)
{
- double v = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double v = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (v == 0.0)
RETURN_RESULT(Encode(v));
else
diff --git a/src/qml/jsruntime/qv4numberobject.cpp b/src/qml/jsruntime/qv4numberobject.cpp
index 1db5079355..173a869c3d 100644
--- a/src/qml/jsruntime/qv4numberobject.cpp
+++ b/src/qml/jsruntime/qv4numberobject.cpp
@@ -80,13 +80,13 @@ void Heap::NumberCtor::init(QV4::ExecutionContext *scope)
ReturnedValue NumberCtor::construct(const Managed *m, CallData *callData)
{
- double dbl = callData->argc ? callData->args[0].toNumber() : 0.;
+ double dbl = callData->argc() ? callData->args[0].toNumber() : 0.;
return Encode(m->engine()->newNumberObject(dbl));
}
ReturnedValue NumberCtor::call(const Managed *, CallData *callData)
{
- double dbl = callData->argc ? callData->args[0].toNumber() : 0.;
+ double dbl = callData->argc() ? callData->args[0].toNumber() : 0.;
return Encode(dbl);
}
@@ -150,7 +150,7 @@ inline double thisNumber(ExecutionEngine *engine, CallData *callData)
ReturnedValue NumberPrototype::method_isFinite(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
return Encode(false);
double v = callData->args[0].toNumber();
@@ -159,7 +159,7 @@ ReturnedValue NumberPrototype::method_isFinite(const BuiltinFunction *, CallData
ReturnedValue NumberPrototype::method_isInteger(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
return Encode(false);
const Value &v = callData->args[0];
@@ -176,7 +176,7 @@ ReturnedValue NumberPrototype::method_isInteger(const BuiltinFunction *, CallDat
ReturnedValue NumberPrototype::method_isSafeInteger(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
return Encode(false);
const Value &v = callData->args[0];
@@ -193,7 +193,7 @@ ReturnedValue NumberPrototype::method_isSafeInteger(const BuiltinFunction *, Cal
ReturnedValue NumberPrototype::method_isNaN(const BuiltinFunction *, CallData *callData)
{
- if (!callData->argc)
+ if (!callData->argc())
return Encode(false);
double v = callData->args[0].toNumber();
@@ -207,7 +207,7 @@ ReturnedValue NumberPrototype::method_toString(const BuiltinFunction *b, CallDat
if (v4->hasException)
return QV4::Encode::undefined();
- if (callData->argc && !callData->args[0].isUndefined()) {
+ if (callData->argc() && !callData->args[0].isUndefined()) {
int radix = callData->args[0].toInt32();
if (radix < 2 || radix > 36) {
return v4->throwError(QStringLiteral("Number.prototype.toString: %0 is not a valid radix").arg(radix));
@@ -274,7 +274,7 @@ ReturnedValue NumberPrototype::method_toFixed(const BuiltinFunction *b, CallData
double fdigits = 0;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
fdigits = callData->args[0].toInteger();
if (std::isnan(fdigits))
@@ -306,7 +306,7 @@ ReturnedValue NumberPrototype::method_toExponential(const BuiltinFunction *b, Ca
int fdigits = NumberLocale::instance()->defaultDoublePrecision;
- if (callData->argc && !callData->args[0].isUndefined()) {
+ if (callData->argc() && !callData->args[0].isUndefined()) {
fdigits = callData->args[0].toInt32();
if (fdigits < 0 || fdigits > 20) {
Scope scope(v4);
@@ -327,7 +327,7 @@ ReturnedValue NumberPrototype::method_toPrecision(const BuiltinFunction *b, Call
return QV4::Encode::undefined();
- if (!callData->argc || callData->args[0].isUndefined())
+ if (!callData->argc() || callData->args[0].isUndefined())
return Encode(v->toString(scope.engine));
int precision = callData->args[0].toInt32();
diff --git a/src/qml/jsruntime/qv4objectproto.cpp b/src/qml/jsruntime/qv4objectproto.cpp
index 0f60881db1..9010faf0b2 100644
--- a/src/qml/jsruntime/qv4objectproto.cpp
+++ b/src/qml/jsruntime/qv4objectproto.cpp
@@ -65,7 +65,7 @@ ReturnedValue ObjectCtor::construct(const Managed *m, CallData *callData)
{
ExecutionEngine *v4 = m->engine();
const ObjectCtor *ctor = static_cast<const ObjectCtor *>(m);
- if (!callData->argc || callData->args[0].isUndefined() || callData->args[0].isNull()) {
+ if (!callData->argc() || callData->args[0].isUndefined() || callData->args[0].isNull()) {
Scope scope(v4);
ScopedObject obj(scope, scope.engine->newObject());
ScopedObject proto(scope, ctor->get(scope.engine->id_prototype()));
@@ -80,7 +80,7 @@ ReturnedValue ObjectCtor::construct(const Managed *m, CallData *callData)
ReturnedValue ObjectCtor::call(const Managed *m, CallData *callData)
{
ExecutionEngine *v4 = m->engine();
- if (!callData->argc || callData->args[0].isUndefined() || callData->args[0].isNull()) {
+ if (!callData->argc() || callData->args[0].isUndefined() || callData->args[0].isNull()) {
return v4->newObject()->asReturnedValue();
} else {
return callData->args[0].toObject(v4)->asReturnedValue();
@@ -129,7 +129,7 @@ void ObjectPrototype::init(ExecutionEngine *v4, Object *ctor)
ReturnedValue ObjectPrototype::method_getPrototypeOf(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return scope.engine->throwTypeError();
ScopedObject o(scope, callData->args[0].toObject(scope.engine));
@@ -143,7 +143,7 @@ ReturnedValue ObjectPrototype::method_getPrototypeOf(const BuiltinFunction *b, C
ReturnedValue ObjectPrototype::method_getOwnPropertyDescriptor(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return scope.engine->throwTypeError();
ScopedObject O(scope, callData->args[0].toObject(scope.engine));
@@ -167,7 +167,7 @@ ReturnedValue ObjectPrototype::method_getOwnPropertyDescriptor(const BuiltinFunc
ReturnedValue ObjectPrototype::method_getOwnPropertyNames(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return scope.engine->throwTypeError();
ScopedObject O(scope, callData->args[0].toObject(scope.engine));
@@ -181,17 +181,17 @@ ReturnedValue ObjectPrototype::method_getOwnPropertyNames(const BuiltinFunction
ReturnedValue ObjectPrototype::method_assign(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return scope.engine->throwTypeError();
ScopedObject to(scope, callData->args[0].toObject(scope.engine));
if (scope.engine->hasException)
return QV4::Encode::undefined();
- if (callData->argc == 1)
+ if (callData->argc() == 1)
return to.asReturnedValue();
- for (int i = 1; i < callData->argc; ++i) {
+ for (int i = 1, ei = callData->argc(); i < ei; ++i) {
if (callData->args[i].isUndefined() || callData->args[i].isNull())
continue;
@@ -236,7 +236,7 @@ ReturnedValue ObjectPrototype::method_create(const BuiltinFunction *builtin, Cal
ScopedObject newObject(scope, scope.engine->newObject());
newObject->setPrototype(O->as<Object>());
- if (callData->argc > 1 && !callData->args[1].isUndefined()) {
+ if (callData->argc() > 1 && !callData->args[1].isUndefined()) {
callData->args[0] = newObject;
return method_defineProperties(builtin, callData);
}
@@ -541,7 +541,7 @@ ReturnedValue ObjectPrototype::method_propertyIsEnumerable(const BuiltinFunction
ReturnedValue ObjectPrototype::method_defineGetter(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 2)
+ if (callData->argc() < 2)
THROW_TYPE_ERROR();
ScopedFunctionObject f(scope, callData->argument(1));
@@ -571,7 +571,7 @@ ReturnedValue ObjectPrototype::method_defineGetter(const BuiltinFunction *b, Cal
ReturnedValue ObjectPrototype::method_defineSetter(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc < 2)
+ if (callData->argc() < 2)
THROW_TYPE_ERROR();
ScopedFunctionObject f(scope, callData->argument(1));
@@ -612,7 +612,7 @@ ReturnedValue ObjectPrototype::method_set_proto(const BuiltinFunction *b, CallDa
{
Scope scope(b);
ScopedObject o(scope, callData->thisObject);
- if (!o || !callData->argc)
+ if (!o || !callData->argc())
THROW_TYPE_ERROR();
if (callData->args[0].isNull()) {
diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp
index 40dfeefdcc..400d0f8cb2 100644
--- a/src/qml/jsruntime/qv4qobjectwrapper.cpp
+++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp
@@ -904,7 +904,7 @@ ReturnedValue QObjectWrapper::method_connect(const BuiltinFunction *b, CallData
{
QV4::Scope scope(b);
- if (callData->argc == 0)
+ if (callData->argc() == 0)
THROW_GENERIC_ERROR("Function.prototype.connect: no arguments given");
QPair<QObject *, int> signalInfo = extractQtSignal(callData->thisObject);
@@ -923,9 +923,9 @@ ReturnedValue QObjectWrapper::method_connect(const BuiltinFunction *b, CallData
QV4::ScopedFunctionObject f(scope);
QV4::ScopedValue thisObject (scope, QV4::Encode::undefined());
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
f = callData->args[0];
- } else if (callData->argc >= 2) {
+ } else if (callData->argc() >= 2) {
thisObject = callData->args[0];
f = callData->args[1];
}
@@ -956,7 +956,7 @@ ReturnedValue QObjectWrapper::method_disconnect(const BuiltinFunction *b, CallDa
{
QV4::Scope scope(b);
- if (callData->argc == 0)
+ if (callData->argc() == 0)
THROW_GENERIC_ERROR("Function.prototype.disconnect: no arguments given");
QPair<QObject *, int> signalInfo = extractQtSignal(callData->thisObject);
@@ -975,9 +975,9 @@ ReturnedValue QObjectWrapper::method_disconnect(const BuiltinFunction *b, CallDa
QV4::ScopedFunctionObject functionValue(scope);
QV4::ScopedValue functionThisValue(scope, QV4::Encode::undefined());
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
functionValue = callData->args[0];
- } else if (callData->argc >= 2) {
+ } else if (callData->argc() >= 2) {
functionThisValue = callData->args[0];
functionValue = callData->args[1];
}
@@ -1413,7 +1413,7 @@ static QV4::ReturnedValue CallPrecise(const QQmlObjectOrGadget &object, const QQ
+ QLatin1String(unknownTypeError));
}
- if (args[0] > callArgs->argc) {
+ if (args[0] > callArgs->argc()) {
QString error = QLatin1String("Insufficient arguments");
return engine->throwError(error);
}
@@ -1444,7 +1444,7 @@ static QV4::ReturnedValue CallOverloaded(const QQmlObjectOrGadget &object, const
QV4::ExecutionEngine *engine, QV4::CallData *callArgs, const QQmlPropertyCache *propertyCache,
QMetaObject::Call callType = QMetaObject::InvokeMetaMethod)
{
- int argumentCount = callArgs->argc;
+ int argumentCount = callArgs->argc();
QQmlPropertyData best;
int bestParameterScore = INT_MAX;
@@ -1900,7 +1900,7 @@ ReturnedValue QObjectMethod::callInternal(CallData *callData) const
{
ExecutionEngine *v4 = engine();
if (d()->index == DestroyMethod)
- return method_destroy(v4, callData->args, callData->argc);
+ return method_destroy(v4, callData->args, callData->argc());
else if (d()->index == ToStringMethod)
return method_toString(v4);
@@ -2061,7 +2061,7 @@ ReturnedValue QMetaObjectWrapper::callConstructor(const QQmlPropertyData &data,
ReturnedValue QMetaObjectWrapper::callOverloadedConstructor(QV4::ExecutionEngine *engine, QV4::CallData *callArgs) const {
const int numberOfConstructors = d()->constructorCount;
- const int argumentCount = callArgs->argc;
+ const int argumentCount = callArgs->argc();
const QQmlStaticMetaObject object(d()->metaObject);
QQmlPropertyData best;
diff --git a/src/qml/jsruntime/qv4regexpobject.cpp b/src/qml/jsruntime/qv4regexpobject.cpp
index c3a4275cac..d4d646be3f 100644
--- a/src/qml/jsruntime/qv4regexpobject.cpp
+++ b/src/qml/jsruntime/qv4regexpobject.cpp
@@ -268,10 +268,9 @@ ReturnedValue RegExpCtor::construct(const Managed *m, CallData *callData)
ReturnedValue RegExpCtor::call(const Managed *that, CallData *callData)
{
- if (callData->argc > 0 && callData->args[0].as<RegExpObject>()) {
- if (callData->argc == 1 || callData->args[1].isUndefined()) {
+ if (callData->argc() > 0 && callData->args[0].as<RegExpObject>()) {
+ if (callData->argc() == 1 || callData->args[1].isUndefined())
return Encode(callData->args[0]);
- }
}
return construct(that, callData);
@@ -440,8 +439,8 @@ ReturnedValue RegExpPrototype::method_compile(const BuiltinFunction *b, CallData
if (!r)
return scope.engine->throwTypeError();
- JSCall jsCall(scope, scope.engine->regExpCtor(), callData->argc);
- memcpy(jsCall->args, callData->args, callData->argc*sizeof(Value));
+ JSCall jsCall(scope, scope.engine->regExpCtor(), callData->argc());
+ memcpy(jsCall->args, callData->args, callData->argc()*sizeof(Value));
Scoped<RegExpObject> re(scope, jsCall.callAsConstructor());
diff --git a/src/qml/jsruntime/qv4sequenceobject.cpp b/src/qml/jsruntime/qv4sequenceobject.cpp
index 28b20169d9..7373e07340 100644
--- a/src/qml/jsruntime/qv4sequenceobject.cpp
+++ b/src/qml/jsruntime/qv4sequenceobject.cpp
@@ -441,7 +441,7 @@ public:
loadReference();
}
- if (callData->argc == 1 && callData->args[0].as<FunctionObject>()) {
+ if (callData->argc() == 1 && callData->args[0].as<FunctionObject>()) {
CompareFunctor cf(scope.engine, callData->args[0]);
std::sort(d()->container->begin(), d()->container->end(), cf);
} else {
@@ -664,7 +664,7 @@ ReturnedValue SequencePrototype::method_sort(const BuiltinFunction *b, CallData
if (!o || !o->isListType())
THROW_TYPE_ERROR();
- if (callData->argc >= 2)
+ if (callData->argc() >= 2)
return o.asReturnedValue();
#define CALL_SORT(SequenceElementType, SequenceElementTypeName, SequenceType, DefaultValue) \
diff --git a/src/qml/jsruntime/qv4stringobject.cpp b/src/qml/jsruntime/qv4stringobject.cpp
index 2fc05e4f56..d6dbeacb2d 100644
--- a/src/qml/jsruntime/qv4stringobject.cpp
+++ b/src/qml/jsruntime/qv4stringobject.cpp
@@ -148,7 +148,7 @@ ReturnedValue StringCtor::construct(const Managed *m, CallData *callData)
ExecutionEngine *v4 = static_cast<const Object *>(m)->engine();
Scope scope(v4);
ScopedString value(scope);
- if (callData->argc)
+ if (callData->argc())
value = callData->args[0].toString(v4);
else
value = v4->newString();
@@ -158,7 +158,7 @@ ReturnedValue StringCtor::construct(const Managed *m, CallData *callData)
ReturnedValue StringCtor::call(const Managed *m, CallData *callData)
{
ExecutionEngine *v4 = m->engine();
- if (callData->argc)
+ if (callData->argc())
return callData->args[0].toString(v4)->asReturnedValue();
else
return v4->newString()->asReturnedValue();
@@ -234,7 +234,7 @@ ReturnedValue StringPrototype::method_charAt(const BuiltinFunction *b, CallData
return QV4::Encode::undefined();
int pos = 0;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
pos = (int) callData->args[0].toInteger();
QString result;
@@ -252,7 +252,7 @@ ReturnedValue StringPrototype::method_charCodeAt(const BuiltinFunction *b, CallD
return QV4::Encode::undefined();
int pos = 0;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
pos = (int) callData->args[0].toInteger();
@@ -271,7 +271,7 @@ ReturnedValue StringPrototype::method_concat(const BuiltinFunction *b, CallData
Scope scope(v4);
ScopedString s(scope);
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0; i < callData->argc(); ++i) {
s = callData->args[i].toString(scope.engine);
if (v4->hasException)
return QV4::Encode::undefined();
@@ -291,14 +291,14 @@ ReturnedValue StringPrototype::method_endsWith(const BuiltinFunction *b, CallDat
return QV4::Encode::undefined();
QString searchString;
- if (callData->argc) {
+ if (callData->argc()) {
if (callData->args[0].as<RegExpObject>())
return v4->throwTypeError();
searchString = callData->args[0].toQString();
}
int pos = value.length();
- if (callData->argc > 1)
+ if (callData->argc() > 1)
pos = (int) callData->args[1].toInteger();
if (pos == value.length())
@@ -316,11 +316,11 @@ ReturnedValue StringPrototype::method_indexOf(const BuiltinFunction *b, CallData
return QV4::Encode::undefined();
QString searchString;
- if (callData->argc)
+ if (callData->argc())
searchString = callData->args[0].toQString();
int pos = 0;
- if (callData->argc > 1)
+ if (callData->argc() > 1)
pos = (int) callData->args[1].toInteger();
int index = -1;
@@ -338,14 +338,14 @@ ReturnedValue StringPrototype::method_includes(const BuiltinFunction *b, CallDat
return QV4::Encode::undefined();
QString searchString;
- if (callData->argc) {
+ if (callData->argc()) {
if (callData->args[0].as<RegExpObject>())
return v4->throwTypeError();
searchString = callData->args[0].toQString();
}
int pos = 0;
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
Value &posArg = callData->args[1];
pos = (int) posArg.toInteger();
if (!posArg.isInteger() && posArg.isNumber() && qIsInf(posArg.toNumber()))
@@ -367,10 +367,10 @@ ReturnedValue StringPrototype::method_lastIndexOf(const BuiltinFunction *b, Call
return QV4::Encode::undefined();
QString searchString;
- if (callData->argc)
+ if (callData->argc())
searchString = callData->args[0].toQString();
- double position = callData->argc > 1 ? RuntimeHelpers::toNumber(callData->args[1]) : +qInf();
+ double position = callData->argc() > 1 ? RuntimeHelpers::toNumber(callData->args[1]) : +qInf();
if (std::isnan(position))
position = +qInf();
else
@@ -392,7 +392,7 @@ ReturnedValue StringPrototype::method_localeCompare(const BuiltinFunction *b, Ca
if (v4->hasException)
return QV4::Encode::undefined();
- if (callData->argc < 1)
+ if (callData->argc() < 1)
callData->args[0] = Encode::undefined();
const QString that = callData->args[0].toQString();
@@ -410,9 +410,9 @@ ReturnedValue StringPrototype::method_match(const BuiltinFunction *b, CallData *
if (v4->hasException)
return Encode::undefined();
- if (!callData->argc)
+ if (!callData->argc())
callData->args[0] = Encode::undefined();
- callData->argc = 1;
+ callData->setArgc(1);
if (!callData->args[0].as<RegExpObject>()) {
// convert args[0] to a regexp
@@ -668,8 +668,8 @@ ReturnedValue StringPrototype::method_slice(const BuiltinFunction *b, CallData *
const double length = text.length();
- double start = callData->argc ? callData->args[0].toInteger() : 0;
- double end = (callData->argc < 2 || callData->args[1].isUndefined())
+ double start = callData->argc() ? callData->args[0].toInteger() : 0;
+ double end = (callData->argc() < 2 || callData->args[1].isUndefined())
? length : callData->args[1].toInteger();
if (start < 0)
@@ -780,14 +780,14 @@ ReturnedValue StringPrototype::method_startsWith(const BuiltinFunction *b, CallD
return QV4::Encode::undefined();
QString searchString;
- if (callData->argc) {
+ if (callData->argc()) {
if (callData->args[0].as<RegExpObject>())
return v4->throwTypeError();
searchString = callData->args[0].toQString();
}
int pos = 0;
- if (callData->argc > 1)
+ if (callData->argc() > 1)
pos = (int) callData->args[1].toInteger();
if (pos == 0)
@@ -805,11 +805,11 @@ ReturnedValue StringPrototype::method_substr(const BuiltinFunction *b, CallData
return QV4::Encode::undefined();
double start = 0;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
start = callData->args[0].toInteger();
double length = +qInf();
- if (callData->argc > 1)
+ if (callData->argc() > 1)
length = callData->args[1].toInteger();
double count = value.length();
@@ -835,10 +835,10 @@ ReturnedValue StringPrototype::method_substring(const BuiltinFunction *b, CallDa
double start = 0;
double end = length;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
start = callData->args[0].toInteger();
- if (callData->argc > 1 && !callData->args[1].isUndefined())
+ if (callData->argc() > 1 && !callData->args[1].isUndefined())
end = callData->args[1].toInteger();
if (std::isnan(start) || start < 0)
@@ -896,9 +896,9 @@ ReturnedValue StringPrototype::method_toLocaleUpperCase(const BuiltinFunction *b
ReturnedValue StringPrototype::method_fromCharCode(const BuiltinFunction *b, CallData *callData)
{
- QString str(callData->argc, Qt::Uninitialized);
+ QString str(callData->argc(), Qt::Uninitialized);
QChar *ch = str.data();
- for (int i = 0; i < callData->argc; ++i) {
+ for (int i = 0, ei = callData->argc(); i < ei; ++i) {
*ch = QChar(callData->args[i].toUInt16());
++ch;
}
diff --git a/src/qml/jsruntime/qv4typedarray.cpp b/src/qml/jsruntime/qv4typedarray.cpp
index 5bec5046fe..247e04f5f5 100644
--- a/src/qml/jsruntime/qv4typedarray.cpp
+++ b/src/qml/jsruntime/qv4typedarray.cpp
@@ -214,9 +214,9 @@ ReturnedValue TypedArrayCtor::construct(const Managed *m, CallData *callData)
Scope scope(m->engine());
Scoped<TypedArrayCtor> that(scope, static_cast<const TypedArrayCtor *>(m));
- if (!callData->argc || !callData->args[0].isObject()) {
+ if (!callData->argc() || !callData->args[0].isObject()) {
// ECMA 6 22.2.1.1
- double l = callData->argc ? callData->args[0].toNumber() : 0;
+ double l = callData->argc() ? callData->args[0].toNumber() : 0;
if (scope.engine->hasException)
return Encode::undefined();
uint len = (uint)l;
@@ -276,14 +276,14 @@ ReturnedValue TypedArrayCtor::construct(const Managed *m, CallData *callData)
if (!!buffer) {
// ECMA 6 22.2.1.4
- double dbyteOffset = callData->argc > 1 ? callData->args[1].toInteger() : 0;
+ double dbyteOffset = callData->argc() > 1 ? callData->args[1].toInteger() : 0;
uint byteOffset = (uint)dbyteOffset;
uint elementSize = operations[that->d()->type].bytesPerElement;
if (dbyteOffset < 0 || (byteOffset % elementSize) || dbyteOffset > buffer->byteLength())
return scope.engine->throwRangeError(QStringLiteral("new TypedArray: invalid byteOffset"));
uint byteLength;
- if (callData->argc < 3 || callData->args[2].isUndefined()) {
+ if (callData->argc() < 3 || callData->args[2].isUndefined()) {
byteLength = buffer->byteLength() - byteOffset;
if (buffer->byteLength() < byteOffset || byteLength % elementSize)
return scope.engine->throwRangeError(QStringLiteral("new TypedArray: invalid length"));
@@ -459,7 +459,7 @@ ReturnedValue TypedArrayPrototype::method_set(const BuiltinFunction *b, CallData
if (!buffer)
scope.engine->throwTypeError();
- double doffset = callData->argc >= 2 ? callData->args[1].toInteger() : 0;
+ double doffset = callData->argc() >= 2 ? callData->args[1].toInteger() : 0;
if (scope.engine->hasException)
RETURN_UNDEFINED();
@@ -551,12 +551,12 @@ ReturnedValue TypedArrayPrototype::method_subarray(const BuiltinFunction *builti
return scope.engine->throwTypeError();
int len = a->length();
- double b = callData->argc > 0 ? callData->args[0].toInteger() : 0;
+ double b = callData->argc() > 0 ? callData->args[0].toInteger() : 0;
if (b < 0)
b = len + b;
uint begin = (uint)qBound(0., b, (double)len);
- double e = callData->argc < 2 || callData->args[1].isUndefined() ? len : callData->args[1].toInteger();
+ double e = callData->argc() < 2 || callData->args[1].isUndefined() ? len : callData->args[1].toInteger();
if (e < 0)
e = len + e;
uint end = (uint)qBound(0., e, (double)len);
diff --git a/src/qml/jsruntime/qv4vme_moth.cpp b/src/qml/jsruntime/qv4vme_moth.cpp
index 0531238024..6a897cbf08 100644
--- a/src/qml/jsruntime/qv4vme_moth.cpp
+++ b/src/qml/jsruntime/qv4vme_moth.cpp
@@ -516,7 +516,7 @@ QV4::ReturnedValue VME::exec(CallData *callData, QV4::Function *function)
engine->jsStackTop = reinterpret_cast<QV4::Value *>(callData) + function->compiledFunction->nRegisters + 1;
// clear out remaining arguments and local registers
- for (Value *v = callData->args + callData->argc; v < jsStackTop; ++v)
+ for (Value *v = callData->args + callData->argc(); v < jsStackTop; ++v)
*v = Encode::undefined();
QV4::Value *stack = reinterpret_cast<QV4::Value *>(callData);
diff --git a/src/qml/qml/qqmlcomponent.cpp b/src/qml/qml/qqmlcomponent.cpp
index dd0d2096ce..945629899c 100644
--- a/src/qml/qml/qqmlcomponent.cpp
+++ b/src/qml/qml/qqmlcomponent.cpp
@@ -1492,7 +1492,7 @@ QV4::ReturnedValue QV4::QmlIncubatorObject::method_set_statusChanged(const Built
{
QV4::Scope scope(b);
QV4::Scoped<QmlIncubatorObject> o(scope, callData->thisObject.as<QmlIncubatorObject>());
- if (!o || callData->argc < 1)
+ if (!o || callData->argc() < 1)
THROW_TYPE_ERROR();
o->d()->statusChanged.set(scope.engine, callData->args[0]);
diff --git a/src/qml/qml/qqmldelayedcallqueue.cpp b/src/qml/qml/qqmldelayedcallqueue.cpp
index 1537657e0d..738f87247f 100644
--- a/src/qml/qml/qqmldelayedcallqueue.cpp
+++ b/src/qml/qml/qqmldelayedcallqueue.cpp
@@ -109,7 +109,7 @@ void QQmlDelayedCallQueue::init(QV4::ExecutionEngine* engine)
QV4::ReturnedValue QQmlDelayedCallQueue::addUniquelyAndExecuteLater(const QV4::BuiltinFunction *b, QV4::CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc == 0)
+ if (callData->argc() == 0)
THROW_GENERIC_ERROR("Qt.callLater: no arguments given");
const QV4::FunctionObject *func = callData->args[0].as<QV4::FunctionObject>();
@@ -176,17 +176,16 @@ QV4::ReturnedValue QQmlDelayedCallQueue::addUniquelyAndExecuteLater(const QV4::B
void QQmlDelayedCallQueue::storeAnyArguments(DelayedFunctionCall &dfc, const QV4::CallData *callData, int offset, QV4::ExecutionEngine *engine)
{
- const int length = callData->argc - offset;
+ const int length = callData->argc() - offset;
if (length == 0) {
dfc.m_args.clear();
return;
}
QV4::Scope scope(engine);
QV4::ScopedArrayObject array(scope, engine->newArrayObject(length));
- int i = 0;
- for (int j = offset; j < callData->argc; ++i, ++j) {
+ uint i = 0;
+ for (int j = offset, ej = callData->argc(); j < ej; ++i, ++j)
array->putIndexed(i, callData->args[j]);
- }
dfc.m_args.set(engine, array);
}
diff --git a/src/qml/qml/qqmllistwrapper.cpp b/src/qml/qml/qqmllistwrapper.cpp
index 8204400956..b4be83a156 100644
--- a/src/qml/qml/qqmllistwrapper.cpp
+++ b/src/qml/qml/qqmllistwrapper.cpp
@@ -184,7 +184,7 @@ ReturnedValue PropertyListPrototype::method_push(const BuiltinFunction *b, CallD
THROW_GENERIC_ERROR("List doesn't define an Append function");
QV4::ScopedObject so(scope);
- for (int i = 0; i < callData->argc; ++i)
+ for (int i = 0, ei = callData->argc(); i < ei; ++i)
{
so = callData->args[i].toObject(scope.engine);
if (QV4::QObjectWrapper *wrapper = so->as<QV4::QObjectWrapper>())
diff --git a/src/qml/qml/qqmllocale.cpp b/src/qml/qml/qqmllocale.cpp
index 862d9e1f14..f6aae67548 100644
--- a/src/qml/qml/qqmllocale.cpp
+++ b/src/qml/qml/qqmllocale.cpp
@@ -89,7 +89,7 @@ void QQmlDateExtension::registerExtension(QV4::ExecutionEngine *engine)
ReturnedValue QQmlDateExtension::method_toLocaleString(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc > 2)
+ if (callData->argc() > 2)
return QV4::DatePrototype::method_toLocaleString(b, callData);
QV4::DateObject *date = callData->thisObject.as<DateObject>();
@@ -98,7 +98,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleString(const BuiltinFunction *b,
QDateTime dt = date->toQDateTime();
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
// Use QLocale for standard toLocaleString() function
QLocale locale;
RETURN_RESULT(scope.engine->newString(locale.toString(dt)));
@@ -111,7 +111,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleString(const BuiltinFunction *b,
QLocale::FormatType enumFormat = QLocale::LongFormat;
QString formattedDt;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
if (String *s = callData->args[1].stringValue()) {
QString format = s->toQString();
formattedDt = r->d()->locale->toString(dt, format);
@@ -132,7 +132,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleString(const BuiltinFunction *b,
ReturnedValue QQmlDateExtension::method_toLocaleTimeString(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc > 2)
+ if (callData->argc() > 2)
return QV4::DatePrototype::method_toLocaleTimeString(b, callData);
QV4::DateObject *date = callData->thisObject.as<DateObject>();
@@ -142,7 +142,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleTimeString(const BuiltinFunction
QDateTime dt = date->toQDateTime();
QTime time = dt.time();
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
// Use QLocale for standard toLocaleString() function
QLocale locale;
RETURN_RESULT(scope.engine->newString(locale.toString(time)));
@@ -155,7 +155,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleTimeString(const BuiltinFunction
QLocale::FormatType enumFormat = QLocale::LongFormat;
QString formattedTime;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
if (String *s = callData->args[1].stringValue()) {
QString format = s->toQString();
formattedTime = r->d()->locale->toString(time, format);
@@ -176,7 +176,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleTimeString(const BuiltinFunction
ReturnedValue QQmlDateExtension::method_toLocaleDateString(const BuiltinFunction *b, CallData *callData)
{
Scope scope(b);
- if (callData->argc > 2)
+ if (callData->argc() > 2)
return QV4::DatePrototype::method_toLocaleDateString(b, callData);
QV4::DateObject *dateObj = callData->thisObject.as<DateObject>();
@@ -186,7 +186,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleDateString(const BuiltinFunction
QDateTime dt = dateObj->toQDateTime();
QDate date = dt.date();
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
// Use QLocale for standard toLocaleString() function
QLocale locale;
RETURN_RESULT(scope.engine->newString(locale.toString(date)));
@@ -199,7 +199,7 @@ ReturnedValue QQmlDateExtension::method_toLocaleDateString(const BuiltinFunction
QLocale::FormatType enumFormat = QLocale::LongFormat;
QString formattedDate;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
if (String *s = callData->args[1].stringValue()) {
QString format = s->toQString();
formattedDate = r->d()->locale->toString(date, format);
@@ -221,7 +221,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleString(const BuiltinFunction *
{
QV4::Scope scope(b);
QV4::ExecutionEngine * const engine = scope.engine;
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
if (String *s = callData->args[0].stringValue()) {
QLocale locale;
QString dateString = s->toQString();
@@ -230,7 +230,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleString(const BuiltinFunction *
}
}
- if (callData->argc < 1 || callData->argc > 3 || !isLocaleObject(callData->args[0]))
+ if (callData->argc() < 1 || callData->argc() > 3 || !isLocaleObject(callData->args[0]))
THROW_ERROR("Locale: Date.fromLocaleString(): Invalid arguments");
GET_LOCALE_DATA_RESOURCE(callData->args[0]);
@@ -238,7 +238,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleString(const BuiltinFunction *
QLocale::FormatType enumFormat = QLocale::LongFormat;
QDateTime dt;
QString dateString = callData->args[1].toQStringNoThrow();
- if (callData->argc == 3) {
+ if (callData->argc() == 3) {
if (String *s = callData->args[2].stringValue()) {
QString format = s->toQString();
dt = r->d()->locale->toDateTime(dateString, format);
@@ -261,7 +261,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleTimeString(const BuiltinFuncti
QV4::Scope scope(b);
QV4::ExecutionEngine * const engine = scope.engine;
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
if (String *s = callData->args[0].stringValue()) {
QLocale locale;
QString timeString = s->toQString();
@@ -272,7 +272,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleTimeString(const BuiltinFuncti
}
}
- if (callData->argc < 1 || callData->argc > 3 || !isLocaleObject(callData->args[0]))
+ if (callData->argc() < 1 || callData->argc() > 3 || !isLocaleObject(callData->args[0]))
THROW_ERROR("Locale: Date.fromLocaleTimeString(): Invalid arguments");
GET_LOCALE_DATA_RESOURCE(callData->args[0]);
@@ -280,7 +280,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleTimeString(const BuiltinFuncti
QLocale::FormatType enumFormat = QLocale::LongFormat;
QTime tm;
QString dateString = callData->args[1].toQStringNoThrow();
- if (callData->argc == 3) {
+ if (callData->argc() == 3) {
if (String *s = callData->args[2].stringValue()) {
QString format = s->toQString();
tm = r->d()->locale->toTime(dateString, format);
@@ -309,7 +309,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleDateString(const BuiltinFuncti
QV4::Scope scope(b);
QV4::ExecutionEngine * const engine = scope.engine;
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
if (String *s = callData->args[0].stringValue()) {
QLocale locale;
QString dateString = s->toQString();
@@ -318,7 +318,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleDateString(const BuiltinFuncti
}
}
- if (callData->argc < 1 || callData->argc > 3 || !isLocaleObject(callData->args[0]))
+ if (callData->argc() < 1 || callData->argc() > 3 || !isLocaleObject(callData->args[0]))
THROW_ERROR("Locale: Date.fromLocaleDateString(): Invalid arguments");
GET_LOCALE_DATA_RESOURCE(callData->args[0]);
@@ -326,7 +326,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleDateString(const BuiltinFuncti
QLocale::FormatType enumFormat = QLocale::LongFormat;
QDate dt;
QString dateString = callData->args[1].toQStringNoThrow();
- if (callData->argc == 3) {
+ if (callData->argc() == 3) {
if (String *s = callData->args[2].stringValue()) {
QString format = s->toQString();
dt = r->d()->locale->toDate(dateString, format);
@@ -347,7 +347,7 @@ ReturnedValue QQmlDateExtension::method_fromLocaleDateString(const BuiltinFuncti
ReturnedValue QQmlDateExtension::method_timeZoneUpdated(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 0)
+ if (callData->argc() != 0)
THROW_ERROR("Locale: Date.timeZoneUpdated(): Invalid arguments");
QV4::DatePrototype::timezoneUpdated();
@@ -368,12 +368,12 @@ void QQmlNumberExtension::registerExtension(QV4::ExecutionEngine *engine)
QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc > 3)
+ if (callData->argc() > 3)
THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments");
double number = callData->thisObject.toNumber();
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
// Use QLocale for standard toLocaleString() function
QLocale locale;
RETURN_RESULT(scope.engine->newString(locale.toString(number)));
@@ -385,7 +385,7 @@ QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(const BuiltinFunct
GET_LOCALE_DATA_RESOURCE(callData->args[0]);
quint16 format = 'f';
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
if (!callData->args[1].isString())
THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments");
QString fs = callData->args[1].toQString();
@@ -393,7 +393,7 @@ QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(const BuiltinFunct
format = fs.at(0).unicode();
}
int prec = 2;
- if (callData->argc > 2) {
+ if (callData->argc() > 2) {
if (!callData->args[2].isNumber())
THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments");
prec = callData->args[2].toInt32();
@@ -405,12 +405,12 @@ QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(const BuiltinFunct
ReturnedValue QQmlNumberExtension::method_toLocaleCurrencyString(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc > 2)
+ if (callData->argc() > 2)
THROW_ERROR("Locale: Number.toLocaleCurrencyString(): Invalid arguments");
double number = callData->thisObject.toNumber();
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
// Use QLocale for standard toLocaleString() function
QLocale locale;
RETURN_RESULT(scope.engine->newString(locale.toString(number)));
@@ -422,7 +422,7 @@ ReturnedValue QQmlNumberExtension::method_toLocaleCurrencyString(const BuiltinFu
GET_LOCALE_DATA_RESOURCE(callData->args[0]);
QString symbol;
- if (callData->argc > 1) {
+ if (callData->argc() > 1) {
if (!callData->args[1].isString())
THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments");
symbol = callData->args[1].toQStringNoThrow();
@@ -434,13 +434,13 @@ ReturnedValue QQmlNumberExtension::method_toLocaleCurrencyString(const BuiltinFu
ReturnedValue QQmlNumberExtension::method_fromLocaleString(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1 || callData->argc > 2)
+ if (callData->argc() < 1 || callData->argc() > 2)
THROW_ERROR("Locale: Number.fromLocaleString(): Invalid arguments");
int numberIdx = 0;
QLocale locale;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
if (!isLocaleObject(callData->args[0]))
THROW_ERROR("Locale: Number.fromLocaleString(): Invalid arguments");
@@ -545,11 +545,11 @@ ReturnedValue QQmlLocaleData::method_currencySymbol(const BuiltinFunction *b, Ca
if (!locale)
return Encode::undefined();
- if (callData->argc > 1)
+ if (callData->argc() > 1)
THROW_ERROR("Locale: currencySymbol(): Invalid arguments");
QLocale::CurrencySymbolFormat format = QLocale::CurrencySymbol;
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
quint32 intFormat = callData->args[0].toNumber();
format = QLocale::CurrencySymbolFormat(intFormat);
}
@@ -563,10 +563,10 @@ ReturnedValue QQmlLocaleData::method_ ##FUNC (const BuiltinFunction *b, CallData
QLocale *locale = getThisLocale(scope, callData); \
if (!locale) \
return Encode::undefined(); \
- if (callData->argc > 1) \
+ if (callData->argc() > 1) \
THROW_ERROR("Locale: " #FUNC "(): Invalid arguments"); \
QLocale::FormatType format = QLocale::LongFormat;\
- if (callData->argc == 1) { \
+ if (callData->argc() == 1) { \
quint32 intFormat = callData->args[0].toUInt32(); \
format = QLocale::FormatType(intFormat); \
} \
@@ -584,14 +584,14 @@ ReturnedValue QQmlLocaleData::method_ ## VARIABLE (const BuiltinFunction *b, Cal
QLocale *locale = getThisLocale(scope, callData); \
if (!locale) \
return Encode::undefined(); \
- if (callData->argc < 1 || callData->argc > 2) \
+ if (callData->argc() < 1 || callData->argc() > 2) \
THROW_ERROR("Locale: " #VARIABLE "(): Invalid arguments"); \
QLocale::FormatType enumFormat = QLocale::LongFormat; \
int idx = callData->args[0].toInt32() + 1; \
if (idx < 1 || idx > 12) \
THROW_ERROR("Locale: Invalid month"); \
QString name; \
- if (callData->argc == 2) { \
+ if (callData->argc() == 2) { \
if (callData->args[1].isNumber()) { \
quint32 intFormat = callData->args[1].toUInt32(); \
QLocale::FormatType format = QLocale::FormatType(intFormat); \
@@ -612,7 +612,7 @@ ReturnedValue QQmlLocaleData::method_ ## VARIABLE (const BuiltinFunction *b, Cal
QLocale *locale = getThisLocale(scope, callData); \
if (!locale) \
return Encode::undefined(); \
- if (callData->argc < 1 || callData->argc > 2) \
+ if (callData->argc() < 1 || callData->argc() > 2) \
THROW_ERROR("Locale: " #VARIABLE "(): Invalid arguments"); \
QLocale::FormatType enumFormat = QLocale::LongFormat; \
int idx = callData->args[0].toInt32(); \
@@ -620,7 +620,7 @@ ReturnedValue QQmlLocaleData::method_ ## VARIABLE (const BuiltinFunction *b, Cal
THROW_ERROR("Locale: Invalid day"); \
if (idx == 0) idx = 7; \
QString name; \
- if (callData->argc == 2) { \
+ if (callData->argc() == 2) { \
if (callData->args[1].isNumber()) { \
quint32 intFormat = callData->args[1].toUInt32(); \
QLocale::FormatType format = QLocale::FormatType(intFormat); \
@@ -839,7 +839,7 @@ void QQmlLocale::registerStringLocaleCompare(QV4::ExecutionEngine *engine)
ReturnedValue QQmlLocale::method_localeCompare(const BuiltinFunction *b, CallData *callData)
{
- if (callData->argc != 1 || (!callData->args[0].isString() && !callData->args[0].as<StringObject>()))
+ if (callData->argc() != 1 || (!callData->args[0].isString() && !callData->args[0].as<StringObject>()))
return QV4::StringPrototype::method_localeCompare(b, callData);
if (!callData->thisObject.isString() && !callData->thisObject.as<StringObject>())
diff --git a/src/qml/qml/qqmlxmlhttprequest.cpp b/src/qml/qml/qqmlxmlhttprequest.cpp
index 21f1fb30b0..554c4c5bc4 100644
--- a/src/qml/qml/qqmlxmlhttprequest.cpp
+++ b/src/qml/qml/qqmlxmlhttprequest.cpp
@@ -1738,7 +1738,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_open(const BuiltinFunction *b, QV4:
V4THROW_REFERENCE("Not an XMLHttpRequest object");
QQmlXMLHttpRequest *r = w->d()->request;
- if (callData->argc < 2 || callData->argc > 5)
+ if (callData->argc() < 2 || callData->argc() > 5)
THROW_DOM(DOMEXCEPTION_SYNTAX_ERR, "Incorrect argument count");
// Argument 0 - Method
@@ -1761,15 +1761,15 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_open(const BuiltinFunction *b, QV4:
bool async = true;
// Argument 2 - async (optional)
- if (callData->argc > 2) {
+ if (callData->argc() > 2) {
async = callData->args[2].booleanValue();
}
// Argument 3/4 - user/pass (optional)
QString username, password;
- if (callData->argc > 3)
+ if (callData->argc() > 3)
username = callData->args[3].toQStringNoThrow();
- if (callData->argc > 4)
+ if (callData->argc() > 4)
password = callData->args[4].toQStringNoThrow();
// Clear the fragment (if any)
@@ -1790,7 +1790,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_setRequestHeader(const BuiltinFunct
V4THROW_REFERENCE("Not an XMLHttpRequest object");
QQmlXMLHttpRequest *r = w->d()->request;
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_DOM(DOMEXCEPTION_SYNTAX_ERR, "Incorrect argument count");
if (r->readyState() != QQmlXMLHttpRequest::Opened || r->sendFlag())
@@ -1842,7 +1842,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_send(const BuiltinFunction *b, QV4:
THROW_DOM(DOMEXCEPTION_INVALID_STATE_ERR, "Invalid state");
QByteArray data;
- if (callData->argc > 0) {
+ if (callData->argc() > 0) {
if (const ArrayBuffer *buffer = callData->args[0].as<ArrayBuffer>()) {
data = buffer->asByteArray();
} else {
@@ -1872,7 +1872,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_getResponseHeader(const BuiltinFunc
V4THROW_REFERENCE("Not an XMLHttpRequest object");
QQmlXMLHttpRequest *r = w->d()->request;
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_DOM(DOMEXCEPTION_SYNTAX_ERR, "Incorrect argument count");
if (r->readyState() != QQmlXMLHttpRequest::Loading &&
@@ -1891,7 +1891,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_getAllResponseHeaders(const Builtin
V4THROW_REFERENCE("Not an XMLHttpRequest object");
QQmlXMLHttpRequest *r = w->d()->request;
- if (callData->argc != 0)
+ if (callData->argc() != 0)
THROW_DOM(DOMEXCEPTION_SYNTAX_ERR, "Incorrect argument count");
if (r->readyState() != QQmlXMLHttpRequest::Loading &&
@@ -2029,7 +2029,7 @@ ReturnedValue QQmlXMLHttpRequestCtor::method_set_responseType(const BuiltinFunct
V4THROW_REFERENCE("Not an XMLHttpRequest object");
QQmlXMLHttpRequest *r = w->d()->request;
- if (callData->argc < 1)
+ if (callData->argc() < 1)
THROW_DOM(DOMEXCEPTION_SYNTAX_ERR, "Incorrect argument count");
// Argument 0 - response type
diff --git a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
index dcbe2b2a5b..bfa155161d 100644
--- a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
+++ b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
@@ -230,7 +230,7 @@ Returns true if \c object is a valid reference to a Qt or QML object, otherwise
*/
ReturnedValue QtObject::method_isQtObject(const BuiltinFunction *, CallData *callData)
{
- if (callData->argc == 0)
+ if (callData->argc() == 0)
RETURN_RESULT(QV4::Encode(false));
return QV4::Encode(callData->args[0].as<QV4::QObjectWrapper>() != 0);
@@ -245,7 +245,7 @@ All components should be in the range 0-1 inclusive.
ReturnedValue QtObject::method_rgba(const BuiltinFunction *builtin, CallData *callData)
{
QV4::Scope scope(builtin);
- int argCount = callData->argc;
+ int argCount = callData->argc();
if (argCount < 3 || argCount > 4)
THROW_GENERIC_ERROR("Qt.rgba(): Invalid arguments");
@@ -275,7 +275,7 @@ All components should be in the range 0-1 inclusive.
ReturnedValue QtObject::method_hsla(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- int argCount = callData->argc;
+ int argCount = callData->argc();
if (argCount < 3 || argCount > 4)
THROW_GENERIC_ERROR("Qt.hsla(): Invalid arguments");
@@ -307,7 +307,7 @@ All components should be in the range 0-1 inclusive.
ReturnedValue QtObject::method_hsva(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- int argCount = callData->argc;
+ int argCount = callData->argc();
if (argCount < 3 || argCount > 4)
THROW_GENERIC_ERROR("Qt.hsva(): Invalid arguments");
@@ -335,7 +335,7 @@ basic type.
ReturnedValue QtObject::method_colorEqual(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.colorEqual(): Invalid arguments");
bool ok = false;
@@ -374,7 +374,7 @@ The returned object has \c x, \c y, \c width and \c height attributes with the g
ReturnedValue QtObject::method_rect(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 4)
+ if (callData->argc() != 4)
THROW_GENERIC_ERROR("Qt.rect(): Invalid arguments");
double x = callData->args[0].toNumber();
@@ -392,7 +392,7 @@ Returns a Point with the specified \c x and \c y coordinates.
ReturnedValue QtObject::method_point(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.point(): Invalid arguments");
double x = callData->args[0].toNumber();
@@ -408,7 +408,7 @@ Returns a Size with the specified \c width and \c height.
ReturnedValue QtObject::method_size(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.size(): Invalid arguments");
double w = callData->args[0].toNumber();
@@ -428,7 +428,7 @@ Invalid keys will be ignored.
ReturnedValue QtObject::method_font(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1 || !callData->args[0].isObject())
+ if (callData->argc() != 1 || !callData->args[0].isObject())
THROW_GENERIC_ERROR("Qt.font(): Invalid arguments");
QV4::ExecutionEngine *v4 = scope.engine;
@@ -448,7 +448,7 @@ Returns a Vector2D with the specified \c x and \c y.
ReturnedValue QtObject::method_vector2d(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.vector2d(): Invalid arguments");
float xy[3]; // qvector2d uses float internally
@@ -466,7 +466,7 @@ Returns a Vector3D with the specified \c x, \c y and \c z.
ReturnedValue QtObject::method_vector3d(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 3)
+ if (callData->argc() != 3)
THROW_GENERIC_ERROR("Qt.vector3d(): Invalid arguments");
float xyz[3]; // qvector3d uses float internally
@@ -485,7 +485,7 @@ Returns a Vector4D with the specified \c x, \c y, \c z and \c w.
ReturnedValue QtObject::method_vector4d(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 4)
+ if (callData->argc() != 4)
THROW_GENERIC_ERROR("Qt.vector4d(): Invalid arguments");
float xyzw[4]; // qvector4d uses float internally
@@ -505,7 +505,7 @@ Returns a Quaternion with the specified \c scalar, \c x, \c y, and \c z.
ReturnedValue QtObject::method_quaternion(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 4)
+ if (callData->argc() != 4)
THROW_GENERIC_ERROR("Qt.quaternion(): Invalid arguments");
qreal sxyz[4]; // qquaternion uses qreal internally
@@ -531,11 +531,11 @@ ReturnedValue QtObject::method_matrix4x4(const BuiltinFunction *b, CallData *cal
{
QV4::Scope scope(b);
- if (callData->argc == 0) {
+ if (callData->argc() == 0) {
return scope.engine->fromVariant(QQml_valueTypeProvider()->createValueType(QMetaType::QMatrix4x4, 0, Q_NULLPTR));
}
- if (callData->argc == 1 && callData->args[0].isObject()) {
+ if (callData->argc() == 1 && callData->args[0].isObject()) {
bool ok = false;
QVariant v = QQml_valueTypeProvider()->createVariantFromJsObject(QMetaType::QMatrix4x4, QQmlV4Handle(callData->args[0]), scope.engine, &ok);
if (!ok)
@@ -543,7 +543,7 @@ ReturnedValue QtObject::method_matrix4x4(const BuiltinFunction *b, CallData *cal
return scope.engine->fromVariant(v);
}
- if (callData->argc != 16)
+ if (callData->argc() != 16)
THROW_GENERIC_ERROR("Qt.matrix4x4(): Invalid arguments");
qreal vals[16]; // qmatrix4x4 uses qreal internally
@@ -585,7 +585,7 @@ If \c factor is not supplied, returns a color 50% lighter than \c baseColor (fac
ReturnedValue QtObject::method_lighter(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1 && callData->argc != 2)
+ if (callData->argc() != 1 && callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.lighter(): Invalid arguments");
QVariant v = scope.engine->toVariant(callData->args[0], -1);
@@ -600,7 +600,7 @@ ReturnedValue QtObject::method_lighter(const BuiltinFunction *b, CallData *callD
}
qreal factor = 1.5;
- if (callData->argc == 2)
+ if (callData->argc() == 2)
factor = callData->args[1].toNumber();
return scope.engine->fromVariant(QQml_colorProvider()->lighter(v, factor));
@@ -624,7 +624,7 @@ If \c factor is not supplied, returns a color 50% darker than \c baseColor (fact
ReturnedValue QtObject::method_darker(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1 && callData->argc != 2)
+ if (callData->argc() != 1 && callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.darker(): Invalid arguments");
QVariant v = scope.engine->toVariant(callData->args[0], -1);
@@ -639,7 +639,7 @@ ReturnedValue QtObject::method_darker(const BuiltinFunction *b, CallData *callDa
}
qreal factor = 2.0;
- if (callData->argc == 2)
+ if (callData->argc() == 2)
factor = callData->args[1].toNumber();
return scope.engine->fromVariant(QQml_colorProvider()->darker(v, factor));
@@ -672,7 +672,7 @@ ReturnedValue QtObject::method_darker(const BuiltinFunction *b, CallData *callDa
ReturnedValue QtObject::method_tint(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 2)
+ if (callData->argc() != 2)
THROW_GENERIC_ERROR("Qt.tint(): Invalid arguments");
// base color
@@ -721,13 +721,13 @@ If \a format is not specified, \a date is formatted using
ReturnedValue QtObject::method_formatDate(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1 || callData->argc > 2)
+ if (callData->argc() < 1 || callData->argc() > 2)
THROW_GENERIC_ERROR("Qt.formatDate(): Invalid arguments");
Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate;
QDate date = scope.engine->toVariant(callData->args[0], -1).toDateTime().date();
QString formattedDate;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
QV4::ScopedString s(scope, callData->args[1]);
if (s) {
QString format = s->toQString();
@@ -764,7 +764,7 @@ If \a format is not specified, \a time is formatted using
ReturnedValue QtObject::method_formatTime(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1 || callData->argc > 2)
+ if (callData->argc() < 1 || callData->argc() > 2)
THROW_GENERIC_ERROR("Qt.formatTime(): Invalid arguments");
QVariant argVariant = scope.engine->toVariant(callData->args[0], -1);
@@ -776,7 +776,7 @@ ReturnedValue QtObject::method_formatTime(const BuiltinFunction *b, CallData *ca
Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate;
QString formattedTime;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
QV4::ScopedString s(scope, callData->args[1]);
if (s) {
QString format = s->toQString();
@@ -890,13 +890,13 @@ with the \a format values below to produce the following results:
ReturnedValue QtObject::method_formatDateTime(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1 || callData->argc > 2)
+ if (callData->argc() < 1 || callData->argc() > 2)
THROW_GENERIC_ERROR("Qt.formatDateTime(): Invalid arguments");
Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate;
QDateTime dt = scope.engine->toVariant(callData->args[0], -1).toDateTime();
QString formattedDt;
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
QV4::ScopedString s(scope, callData->args[1]);
if (s) {
QString format = s->toQString();
@@ -929,7 +929,7 @@ ReturnedValue QtObject::method_formatDateTime(const BuiltinFunction *b, CallData
ReturnedValue QtObject::method_openUrlExternally(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1) {
+ if (callData->argc() != 1) {
return QV4::Encode(false);
}
@@ -968,7 +968,7 @@ Returns a list of the font families available to the application.
ReturnedValue QtObject::method_fontFamilies(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 0)
+ if (callData->argc() != 0)
THROW_GENERIC_ERROR("Qt.fontFamilies(): Invalid arguments");
return scope.engine->fromVariant(QVariant(QQml_guiProvider()->fontFamilies()));
@@ -981,7 +981,7 @@ Returns a hex string of the md5 hash of \c data.
ReturnedValue QtObject::method_md5(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("Qt.md5(): Invalid arguments");
QByteArray data = callData->args[0].toQStringNoThrow().toUtf8();
@@ -996,7 +996,7 @@ Binary to ASCII - this function returns a base64 encoding of \c data.
ReturnedValue QtObject::method_btoa(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("Qt.btoa(): Invalid arguments");
QByteArray data = callData->args[0].toQStringNoThrow().toUtf8();
@@ -1011,7 +1011,7 @@ ASCII to binary - this function decodes the base64 encoded \a data string and re
ReturnedValue QtObject::method_atob(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("Qt.atob(): Invalid arguments");
QByteArray data = callData->args[0].toQStringNoThrow().toLatin1();
@@ -1048,7 +1048,7 @@ ReturnedValue QtObject::method_quit(const BuiltinFunction *b, CallData *)
ReturnedValue QtObject::method_exit(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("Qt.exit(): Invalid arguments");
int retCode = callData->args[0].toNumber();
@@ -1084,7 +1084,7 @@ See \l {Dynamic QML Object Creation from JavaScript} for more information on usi
ReturnedValue QtObject::method_createQmlObject(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 2 || callData->argc > 3)
+ if (callData->argc() < 2 || callData->argc() > 3)
THROW_GENERIC_ERROR("Qt.createQmlObject(): Invalid arguments");
struct Error {
@@ -1133,7 +1133,7 @@ ReturnedValue QtObject::method_createQmlObject(const BuiltinFunction *b, CallDat
RETURN_RESULT(Encode::null());
QUrl url;
- if (callData->argc > 2)
+ if (callData->argc() > 2)
url = QUrl(callData->args[2].toQStringNoThrow());
else
url = QUrl(QLatin1String("inline"));
@@ -1237,7 +1237,7 @@ use \l{QtQml::Qt::createQmlObject()}{Qt.createQmlObject()}.
ReturnedValue QtObject::method_createComponent(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1 || callData->argc > 3)
+ if (callData->argc() < 1 || callData->argc() > 3)
THROW_GENERIC_ERROR("Qt.createComponent(): Invalid arguments");
QV8Engine *v8engine = scope.engine->v8Engine;
@@ -1257,8 +1257,8 @@ ReturnedValue QtObject::method_createComponent(const BuiltinFunction *b, CallDat
QObject *parentArg = 0;
int consumedCount = 1;
- if (callData->argc > 1) {
- ScopedValue lastArg(scope, callData->args[callData->argc-1]);
+ if (callData->argc() > 1) {
+ ScopedValue lastArg(scope, callData->args[callData->argc()-1]);
// The second argument could be the mode enum
if (callData->args[1].isInteger()) {
@@ -1269,11 +1269,11 @@ ReturnedValue QtObject::method_createComponent(const BuiltinFunction *b, CallDat
consumedCount += 1;
} else {
// The second argument could be the parent only if there are exactly two args
- if ((callData->argc != 2) || !(lastArg->isObject() || lastArg->isNull()))
+ if ((callData->argc() != 2) || !(lastArg->isObject() || lastArg->isNull()))
THROW_GENERIC_ERROR("Qt.createComponent(): Invalid arguments");
}
- if (consumedCount < callData->argc) {
+ if (consumedCount < callData->argc()) {
if (lastArg->isObject()) {
Scoped<QObjectWrapper> qobjectWrapper(scope, lastArg);
if (qobjectWrapper)
@@ -1321,12 +1321,12 @@ ReturnedValue QtObject::method_locale(const BuiltinFunction *b, CallData *callDa
{
QV4::Scope scope(b);
QString code;
- if (callData->argc > 1)
+ if (callData->argc() > 1)
THROW_GENERIC_ERROR("locale() requires 0 or 1 argument");
- if (callData->argc == 1 && !callData->args[0].isString())
+ if (callData->argc() == 1 && !callData->args[0].isString())
THROW_TYPE_ERROR_WITH_MESSAGE("locale(): argument (locale code) must be a string");
- if (callData->argc == 1)
+ if (callData->argc() == 1)
code = callData->args[0].toQStringNoThrow();
return QQmlLocale::locale(scope.engine, code);
@@ -1394,7 +1394,7 @@ DEFINE_OBJECT_VTABLE(QQmlBindingFunction);
ReturnedValue QtObject::method_binding(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("binding() requires 1 argument");
const QV4::FunctionObject *f = callData->args[0].as<FunctionObject>();
if (!f)
@@ -1518,7 +1518,7 @@ static ReturnedValue writeToConsole(const BuiltinFunction *b, CallData *callData
QV4::ExecutionEngine *v4 = scope.engine;
int start = 0;
- if (callData->argc > 0) {
+ if (callData->argc() > 0) {
if (const QObjectWrapper* wrapper = callData->args[0].as<QObjectWrapper>()) {
if (QQmlLoggingCategory* category = qobject_cast<QQmlLoggingCategory*>(wrapper->object())) {
if (category->category())
@@ -1531,7 +1531,7 @@ static ReturnedValue writeToConsole(const BuiltinFunction *b, CallData *callData
}
- for (int i = start; i < callData->argc; ++i) {
+ for (int i = start, ei = callData->argc(); i < ei; ++i) {
if (i != start)
result.append(QLatin1Char(' '));
@@ -1642,7 +1642,7 @@ ReturnedValue ConsoleObject::method_profileEnd(const BuiltinFunction *b, CallDat
ReturnedValue ConsoleObject::method_time(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("console.time(): Invalid arguments");
QV8Engine *v8engine = scope.engine->v8Engine;
@@ -1655,7 +1655,7 @@ ReturnedValue ConsoleObject::method_time(const BuiltinFunction *b, CallData *cal
ReturnedValue ConsoleObject::method_timeEnd(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("console.timeEnd(): Invalid arguments");
QV8Engine *v8engine = scope.engine->v8Engine;
@@ -1673,7 +1673,7 @@ ReturnedValue ConsoleObject::method_count(const BuiltinFunction *b, CallData *ca
{
// first argument: name to print. Ignore any additional arguments
QString name;
- if (callData->argc > 0)
+ if (callData->argc() > 0)
name = callData->args[0].toQStringNoThrow();
Scope scope(b);
@@ -1697,7 +1697,7 @@ ReturnedValue ConsoleObject::method_count(const BuiltinFunction *b, CallData *ca
ReturnedValue ConsoleObject::method_trace(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 0)
+ if (callData->argc() != 0)
THROW_GENERIC_ERROR("console.trace(): Invalid arguments");
QV4::ExecutionEngine *v4 = scope.engine;
@@ -1720,14 +1720,14 @@ ReturnedValue ConsoleObject::method_warn(const BuiltinFunction *b, CallData *cal
ReturnedValue ConsoleObject::method_assert(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc == 0)
+ if (callData->argc() == 0)
THROW_GENERIC_ERROR("console.assert(): Missing argument");
QV4::ExecutionEngine *v4 = scope.engine;
if (!callData->args[0].toBoolean()) {
QString message;
- for (int i = 1; i < callData->argc; ++i) {
+ for (int i = 1, ei = callData->argc(); i < ei; ++i) {
if (i != 1)
message.append(QLatin1Char(' '));
@@ -1748,7 +1748,7 @@ ReturnedValue ConsoleObject::method_assert(const BuiltinFunction *b, CallData *c
ReturnedValue ConsoleObject::method_exception(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc == 0)
+ if (callData->argc() == 0)
THROW_GENERIC_ERROR("console.exception(): Missing argument");
return writeToConsole(b, callData, Error, true);
@@ -1810,28 +1810,28 @@ void QV4::GlobalExtensions::init(Object *globalObject, QJSEngine::Extensions ext
ReturnedValue GlobalExtensions::method_qsTranslate(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 2)
+ if (callData->argc() < 2)
THROW_GENERIC_ERROR("qsTranslate() requires at least two arguments");
if (!callData->args[0].isString())
THROW_GENERIC_ERROR("qsTranslate(): first argument (context) must be a string");
if (!callData->args[1].isString())
THROW_GENERIC_ERROR("qsTranslate(): second argument (sourceText) must be a string");
- if ((callData->argc > 2) && !callData->args[2].isString())
+ if ((callData->argc() > 2) && !callData->args[2].isString())
THROW_GENERIC_ERROR("qsTranslate(): third argument (disambiguation) must be a string");
QString context = callData->args[0].toQStringNoThrow();
QString text = callData->args[1].toQStringNoThrow();
QString comment;
- if (callData->argc > 2) comment = callData->args[2].toQStringNoThrow();
+ if (callData->argc() > 2) comment = callData->args[2].toQStringNoThrow();
int i = 3;
- if (callData->argc > i && callData->args[i].isString()) {
+ if (callData->argc() > i && callData->args[i].isString()) {
qWarning("qsTranslate(): specifying the encoding as fourth argument is deprecated");
++i;
}
int n = -1;
- if (callData->argc > i)
+ if (callData->argc() > i)
n = callData->args[i].toInt32();
QString result = QCoreApplication::translate(context.toUtf8().constData(),
@@ -1867,7 +1867,7 @@ ReturnedValue GlobalExtensions::method_qsTranslate(const BuiltinFunction *b, Cal
ReturnedValue GlobalExtensions::method_qsTranslateNoOp(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 2)
+ if (callData->argc() < 2)
return QV4::Encode::undefined();
else
return callData->args[1].asReturnedValue();
@@ -1893,13 +1893,13 @@ ReturnedValue GlobalExtensions::method_qsTranslateNoOp(const BuiltinFunction *b,
ReturnedValue GlobalExtensions::method_qsTr(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
THROW_GENERIC_ERROR("qsTr() requires at least one argument");
if (!callData->args[0].isString())
THROW_GENERIC_ERROR("qsTr(): first argument (sourceText) must be a string");
- if ((callData->argc > 1) && !callData->args[1].isString())
+ if ((callData->argc() > 1) && !callData->args[1].isString())
THROW_GENERIC_ERROR("qsTr(): second argument (disambiguation) must be a string");
- if ((callData->argc > 2) && !callData->args[2].isNumber())
+ if ((callData->argc() > 2) && !callData->args[2].isNumber())
THROW_GENERIC_ERROR("qsTr(): third argument (n) must be a number");
QString context;
@@ -1931,10 +1931,10 @@ ReturnedValue GlobalExtensions::method_qsTr(const BuiltinFunction *b, CallData *
QString text = callData->args[0].toQStringNoThrow();
QString comment;
- if (callData->argc > 1)
+ if (callData->argc() > 1)
comment = callData->args[1].toQStringNoThrow();
int n = -1;
- if (callData->argc > 2)
+ if (callData->argc() > 2)
n = callData->args[2].toInt32();
QString result = QCoreApplication::translate(context.toUtf8().constData(), text.toUtf8().constData(),
@@ -1967,7 +1967,7 @@ ReturnedValue GlobalExtensions::method_qsTr(const BuiltinFunction *b, CallData *
*/
ReturnedValue GlobalExtensions::method_qsTrNoOp(const BuiltinFunction *, CallData *callData)
{
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return QV4::Encode::undefined();
else
return callData->args[0].asReturnedValue();
@@ -2006,15 +2006,15 @@ ReturnedValue GlobalExtensions::method_qsTrNoOp(const BuiltinFunction *, CallDat
ReturnedValue GlobalExtensions::method_qsTrId(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc < 1)
+ if (callData->argc() < 1)
THROW_GENERIC_ERROR("qsTrId() requires at least one argument");
if (!callData->args[0].isString())
THROW_TYPE_ERROR_WITH_MESSAGE("qsTrId(): first argument (id) must be a string");
- if (callData->argc > 1 && !callData->args[1].isNumber())
+ if (callData->argc() > 1 && !callData->args[1].isNumber())
THROW_TYPE_ERROR_WITH_MESSAGE("qsTrId(): second argument (n) must be a number");
int n = -1;
- if (callData->argc > 1)
+ if (callData->argc() > 1)
n = callData->args[1].toInt32();
return Encode(scope.engine->newString(qtTrId(callData->args[0].toQStringNoThrow().toUtf8().constData(), n)));
@@ -2038,7 +2038,7 @@ ReturnedValue GlobalExtensions::method_qsTrId(const BuiltinFunction *b, CallData
*/
ReturnedValue GlobalExtensions::method_qsTrIdNoOp(const BuiltinFunction *, CallData *callData)
{
- if (callData->argc < 1)
+ if (callData->argc() < 1)
return QV4::Encode::undefined();
else
return callData->args[0].asReturnedValue();
@@ -2058,7 +2058,7 @@ ReturnedValue GlobalExtensions::method_gc(const BuiltinFunction *b, CallData *)
ReturnedValue GlobalExtensions::method_string_arg(const BuiltinFunction *b, CallData *callData)
{
QV4::Scope scope(b);
- if (callData->argc != 1)
+ if (callData->argc() != 1)
THROW_GENERIC_ERROR("String.arg(): Invalid arguments");
QString value = callData->thisObject.toQString();
diff --git a/src/qml/qml/v8/qv8engine_p.h b/src/qml/qml/v8/qv8engine_p.h
index 3bd3517968..a430fba0e6 100644
--- a/src/qml/qml/v8/qv8engine_p.h
+++ b/src/qml/qml/v8/qv8engine_p.h
@@ -116,8 +116,8 @@ namespace QV4 {
class QQmlV4Function
{
public:
- int length() const { return callData->argc; }
- QV4::ReturnedValue operator[](int idx) const { return (idx < callData->argc ? callData->args[idx].asReturnedValue() : QV4::Encode::undefined()); }
+ int length() const { return callData->argc(); }
+ QV4::ReturnedValue operator[](int idx) const { return (idx < callData->argc() ? callData->args[idx].asReturnedValue() : QV4::Encode::undefined()); }
void setReturnValue(QV4::ReturnedValue rv) { *retVal = rv; }
QV4::ExecutionEngine *v4engine() const { return e; }
private:
diff --git a/src/qml/types/qqmldelegatemodel.cpp b/src/qml/types/qqmldelegatemodel.cpp
index e2b63d8935..b8e0f25482 100644
--- a/src/qml/types/qqmldelegatemodel.cpp
+++ b/src/qml/types/qqmldelegatemodel.cpp
@@ -1830,7 +1830,7 @@ QV4::ReturnedValue QQmlDelegateModelItem::set_groups(const QV4::BuiltinFunction
if (!o)
return scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object"));
- if (!callData->argc)
+ if (!callData->argc())
THROW_TYPE_ERROR();
if (!o->d()->item->metaType->model)
diff --git a/src/qml/types/qquickworkerscript.cpp b/src/qml/types/qquickworkerscript.cpp
index 6df15c2513..c0f49c3885 100644
--- a/src/qml/types/qquickworkerscript.cpp
+++ b/src/qml/types/qquickworkerscript.cpp
@@ -299,7 +299,7 @@ QV4::ReturnedValue QQuickWorkerScriptEnginePrivate::method_sendMessage(const QV4
QV4::Scope scope(b);
WorkerEngine *engine = (WorkerEngine*)scope.engine->v8Engine;
- int id = callData->argc > 1 ? callData->args[1].toInt32() : 0;
+ int id = callData->argc() > 1 ? callData->args[1].toInt32() : 0;
QV4::ScopedValue v(scope, callData->argument(2));
QByteArray data = QV4::Serialize::serialize(v, scope.engine);
diff --git a/src/qml/util/qqmladaptormodel.cpp b/src/qml/util/qqmladaptormodel.cpp
index 99adbed897..d5b38f6d3e 100644
--- a/src/qml/util/qqmladaptormodel.cpp
+++ b/src/qml/util/qqmladaptormodel.cpp
@@ -371,7 +371,7 @@ QV4::ReturnedValue QQmlDMCachedModelData::set_property(const QV4::BuiltinFunctio
QV4::Scoped<QQmlDelegateModelItemObject> o(scope, callData->thisObject.as<QQmlDelegateModelItemObject>());
if (!o)
return scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object"));
- if (!callData->argc)
+ if (!callData->argc())
return scope.engine->throwTypeError();
uint propertyId = static_cast<const QV4::IndexedBuiltinFunction *>(b)->d()->index;
@@ -602,7 +602,7 @@ public:
QQmlDelegateModelItemObject *o = callData->thisObject.as<QQmlDelegateModelItemObject>();
if (!o)
return v4->throwTypeError(QStringLiteral("Not a valid VisualData object"));
- if (!callData->argc)
+ if (!callData->argc())
return v4->throwTypeError();
static_cast<QQmlDMListAccessorData *>(o->d()->item)->setModelData(v4->toVariant(callData->args[0], QVariant::Invalid));
diff --git a/src/quick/items/context2d/qquickcontext2d.cpp b/src/quick/items/context2d/qquickcontext2d.cpp
index bd66d844ff..a4e701f59c 100644
--- a/src/quick/items/context2d/qquickcontext2d.cpp
+++ b/src/quick/items/context2d/qquickcontext2d.cpp
@@ -1083,7 +1083,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_rotate(const QV4::BuiltinF
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 1)
+ if (callData->argc() >= 1)
r->d()->context->rotate(callData->args[0].toNumber());
RETURN_RESULT(callData->thisObject);
}
@@ -1112,7 +1112,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_scale(const QV4::BuiltinFu
CHECK_CONTEXT(r)
- if (callData->argc >= 2)
+ if (callData->argc() >= 2)
r->d()->context->scale(callData->args[0].toNumber(), callData->args[1].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -1159,7 +1159,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_setTransform(const QV4::Bu
CHECK_CONTEXT(r)
- if (callData->argc >= 6)
+ if (callData->argc() >= 6)
r->d()->context->setTransform( callData->args[0].toNumber()
, callData->args[1].toNumber()
, callData->args[2].toNumber()
@@ -1188,7 +1188,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_transform(const QV4::Built
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 6)
+ if (callData->argc() >= 6)
r->d()->context->transform( callData->args[0].toNumber()
, callData->args[1].toNumber()
, callData->args[2].toNumber()
@@ -1215,7 +1215,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_translate(const QV4::Built
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 2)
+ if (callData->argc() >= 2)
r->d()->context->translate(callData->args[0].toNumber(), callData->args[1].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -1255,7 +1255,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_shear(const QV4::BuiltinFu
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 2)
+ if (callData->argc() >= 2)
r->d()->context->shear(callData->args[0].toNumber(), callData->args[1].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -1285,7 +1285,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_globalAlpha(const QV4::BuiltinF
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT_SETTER(r)
- double globalAlpha = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ double globalAlpha = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (!qt_is_finite(globalAlpha))
@@ -1339,7 +1339,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_globalCompositeOperation(const
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT_SETTER(r)
- if (!callData->argc)
+ if (!callData->argc())
THROW_TYPE_ERROR();
QString mode = callData->args[0].toQString();
@@ -1567,7 +1567,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createLinearGradient(const
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 4) {
+ if (callData->argc() >= 4) {
qreal x0 = callData->args[0].toNumber();
qreal y0 = callData->args[1].toNumber();
qreal x1 = callData->args[2].toNumber();
@@ -1611,7 +1611,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createRadialGradient(const
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 6) {
+ if (callData->argc() >= 6) {
qreal x0 = callData->args[0].toNumber();
qreal y0 = callData->args[1].toNumber();
qreal r0 = callData->args[2].toNumber();
@@ -1663,7 +1663,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createConicalGradient(cons
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 3) {
+ if (callData->argc() >= 3) {
qreal x = callData->args[0].toNumber();
qreal y = callData->args[1].toNumber();
qreal angle = qRadiansToDegrees(callData->args[2].toNumber());
@@ -1736,7 +1736,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createPattern(const QV4::B
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 2) {
+ if (callData->argc() >= 2) {
QV4::Scoped<QQuickContext2DStyle> pattern(scope, scope.engine->memoryManager->allocObject<QQuickContext2DStyle>());
QColor color = scope.engine->toVariant(callData->args[0], qMetaTypeId<QColor>()).value<QColor>();
@@ -1882,7 +1882,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_lineJoin(const QV4::BuiltinFunc
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- if (!callData->argc)
+ if (!callData->argc())
THROW_TYPE_ERROR();
QString lineJoin = callData->args[0].toQString();
@@ -1922,7 +1922,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_lineWidth(const QV4::BuiltinFun
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- qreal w = callData->argc ? callData->args[0].toNumber() : -1;
+ qreal w = callData->argc() ? callData->args[0].toNumber() : -1;
if (w > 0 && qt_is_finite(w) && w != r->d()->context->state.lineWidth) {
r->d()->context->state.lineWidth = w;
@@ -1951,7 +1951,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_miterLimit(const QV4::BuiltinFu
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- qreal ml = callData->argc ? callData->args[0].toNumber() : -1;
+ qreal ml = callData->argc() ? callData->args[0].toNumber() : -1;
if (ml > 0 && qt_is_finite(ml) && ml != r->d()->context->state.miterLimit) {
r->d()->context->state.miterLimit = ml;
@@ -1980,7 +1980,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_shadowBlur(const QV4::BuiltinFu
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- qreal blur = callData->argc ? callData->args[0].toNumber() : -1;
+ qreal blur = callData->argc() ? callData->args[0].toNumber() : -1;
if (blur > 0 && qt_is_finite(blur) && blur != r->d()->context->state.shadowBlur) {
r->d()->context->state.shadowBlur = blur;
@@ -2009,7 +2009,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_shadowColor(const QV4::BuiltinF
CHECK_CONTEXT_SETTER(r)
QColor color;
- if (callData->argc)
+ if (callData->argc())
color = qt_color_from_string(callData->args[0]);
if (color.isValid() && color != r->d()->context->state.shadowColor) {
@@ -2041,7 +2041,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_shadowOffsetX(const QV4::Builti
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- qreal offsetX = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ qreal offsetX = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (qt_is_finite(offsetX) && offsetX != r->d()->context->state.shadowOffsetX) {
r->d()->context->state.shadowOffsetX = offsetX;
r->d()->context->buffer()->setShadowOffsetX(offsetX);
@@ -2069,7 +2069,7 @@ QV4::ReturnedValue QQuickJSContext2D::method_set_shadowOffsetY(const QV4::Builti
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT_SETTER(r)
- qreal offsetY = callData->argc ? callData->args[0].toNumber() : qt_qnan();
+ qreal offsetY = callData->argc() ? callData->args[0].toNumber() : qt_qnan();
if (qt_is_finite(offsetY) && offsetY != r->d()->context->state.shadowOffsetY) {
r->d()->context->state.shadowOffsetY = offsetY;
r->d()->context->buffer()->setShadowOffsetY(offsetY);
@@ -2120,7 +2120,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_clearRect(const QV4::Built
CHECK_CONTEXT(r)
- if (callData->argc >= 4)
+ if (callData->argc() >= 4)
r->d()->context->clearRect(callData->args[0].toNumber(),
callData->args[1].toNumber(),
callData->args[2].toNumber(),
@@ -2141,7 +2141,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_fillRect(const QV4::Builti
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 4)
+ if (callData->argc() >= 4)
r->d()->context->fillRect(callData->args[0].toNumber(), callData->args[1].toNumber(), callData->args[2].toNumber(), callData->args[3].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -2163,7 +2163,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_strokeRect(const QV4::Buil
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 4)
+ if (callData->argc() >= 4)
r->d()->context->strokeRect(callData->args[0].toNumber(), callData->args[1].toNumber(), callData->args[2].toNumber(), callData->args[3].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -2197,10 +2197,10 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_arc(const QV4::BuiltinFunc
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 5) {
+ if (callData->argc() >= 5) {
bool antiClockwise = false;
- if (callData->argc == 6)
+ if (callData->argc() == 6)
antiClockwise = callData->args[5].toBoolean();
qreal radius = callData->args[2].toNumber();
@@ -2249,7 +2249,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_arcTo(const QV4::BuiltinFu
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 5) {
+ if (callData->argc() >= 5) {
qreal radius = callData->args[4].toNumber();
if (qt_is_finite(radius) && radius < 0)
@@ -2308,7 +2308,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_bezierCurveTo(const QV4::B
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 6) {
+ if (callData->argc() >= 6) {
qreal cp1x = callData->args[0].toNumber();
qreal cp1y = callData->args[1].toNumber();
qreal cp2x = callData->args[2].toNumber();
@@ -2405,7 +2405,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_lineTo(const QV4::BuiltinF
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 2) {
+ if (callData->argc() >= 2) {
qreal x = callData->args[0].toNumber();
qreal y = callData->args[1].toNumber();
@@ -2429,7 +2429,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_moveTo(const QV4::BuiltinF
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 2) {
+ if (callData->argc() >= 2) {
qreal x = callData->args[0].toNumber();
qreal y = callData->args[1].toNumber();
@@ -2454,7 +2454,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_quadraticCurveTo(const QV4
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 4) {
+ if (callData->argc() >= 4) {
qreal cpx = callData->args[0].toNumber();
qreal cpy = callData->args[1].toNumber();
qreal x = callData->args[2].toNumber();
@@ -2480,7 +2480,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_rect(const QV4::BuiltinFun
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 4)
+ if (callData->argc() >= 4)
r->d()->context->rect(callData->args[0].toNumber(), callData->args[1].toNumber(), callData->args[2].toNumber(), callData->args[3].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -2498,7 +2498,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_roundedRect(const QV4::Bui
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 6)
+ if (callData->argc() >= 6)
r->d()->context->roundedRect(callData->args[0].toNumber()
, callData->args[1].toNumber()
, callData->args[2].toNumber()
@@ -2523,7 +2523,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_ellipse(const QV4::Builtin
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 4)
+ if (callData->argc() >= 4)
r->d()->context->ellipse(callData->args[0].toNumber(), callData->args[1].toNumber(), callData->args[2].toNumber(), callData->args[3].toNumber());
RETURN_RESULT(callData->thisObject);
@@ -2542,7 +2542,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_text(const QV4::BuiltinFun
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 3) {
+ if (callData->argc() >= 3) {
qreal x = callData->args[1].toNumber();
qreal y = callData->args[2].toNumber();
@@ -2588,7 +2588,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_isPointInPath(const QV4::B
CHECK_CONTEXT(r)
bool pointInPath = false;
- if (callData->argc >= 2)
+ if (callData->argc() >= 2)
pointInPath = r->d()->context->isPointInPath(callData->args[0].toNumber(), callData->args[1].toNumber());
RETURN_RESULT(QV4::Primitive::fromBoolean(pointInPath).asReturnedValue());
}
@@ -2807,7 +2807,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_fillText(const QV4::Builti
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 3) {
+ if (callData->argc() >= 3) {
qreal x = callData->args[1].toNumber();
qreal y = callData->args[2].toNumber();
if (!qt_is_finite(x) || !qt_is_finite(y))
@@ -2832,7 +2832,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_strokeText(const QV4::Buil
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 3)
+ if (callData->argc() >= 3)
r->d()->context->drawText(callData->args[0].toQStringNoThrow(), callData->args[1].toNumber(), callData->args[2].toNumber(), false);
RETURN_RESULT(callData->thisObject);
@@ -2850,7 +2850,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_measureText(const QV4::Bui
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject);
CHECK_CONTEXT(r)
- if (callData->argc >= 1) {
+ if (callData->argc() >= 1) {
QFontMetrics fm(r->d()->context->state.font);
uint width = fm.width(callData->args[0].toQStringNoThrow());
QV4::ScopedObject tm(scope, scope.engine->newObject());
@@ -2928,7 +2928,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_drawImage(const QV4::Built
qreal sx, sy, sw, sh, dx, dy, dw, dh;
- if (!callData->argc)
+ if (!callData->argc())
RETURN_UNDEFINED();
//FIXME:This function should be moved to QQuickContext2D::drawImage(...)
@@ -2980,7 +2980,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_drawImage(const QV4::Built
if (pixmap.isNull() || !pixmap->isValid())
RETURN_UNDEFINED();
- if (callData->argc >= 9) {
+ if (callData->argc() >= 9) {
sx = callData->args[1].toNumber();
sy = callData->args[2].toNumber();
sw = callData->args[3].toNumber();
@@ -2989,7 +2989,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_drawImage(const QV4::Built
dy = callData->args[6].toNumber();
dw = callData->args[7].toNumber();
dh = callData->args[8].toNumber();
- } else if (callData->argc >= 5) {
+ } else if (callData->argc() >= 5) {
sx = 0;
sy = 0;
sw = pixmap->width();
@@ -2998,7 +2998,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_drawImage(const QV4::Built
dy = callData->args[2].toNumber();
dw = callData->args[3].toNumber();
dh = callData->args[4].toNumber();
- } else if (callData->argc >= 3) {
+ } else if (callData->argc() >= 3) {
dx = callData->args[1].toNumber();
dy = callData->args[2].toNumber();
sx = 0;
@@ -3222,7 +3222,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createImageData(const QV4:
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc == 1) {
+ if (callData->argc() == 1) {
QV4::ScopedValue arg0(scope, callData->args[0]);
QV4::Scoped<QQuickJSContext2DImageData> imgData(scope, arg0);
if (!!imgData) {
@@ -3236,7 +3236,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_createImageData(const QV4:
QImage image = r->d()->context->createPixmap(QUrl(arg0->toQStringNoThrow()))->image();
RETURN_RESULT(qt_create_image_data(image.width(), image.height(), scope.engine, image));
}
- } else if (callData->argc == 2) {
+ } else if (callData->argc() == 2) {
qreal w = callData->args[0].toNumber();
qreal h = callData->args[1].toNumber();
@@ -3261,7 +3261,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_getImageData(const QV4::Bu
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc >= 4) {
+ if (callData->argc() >= 4) {
qreal x = callData->args[0].toNumber();
qreal y = callData->args[1].toNumber();
qreal w = callData->args[2].toNumber();
@@ -3287,7 +3287,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_putImageData(const QV4::Bu
QV4::Scope scope(b);
QV4::Scoped<QQuickJSContext2D> r(scope, callData->thisObject.as<QQuickJSContext2D>());
CHECK_CONTEXT(r)
- if (callData->argc < 7)
+ if (callData->argc() < 7)
RETURN_UNDEFINED();
QV4::ScopedValue arg0(scope, callData->args[0]);
@@ -3310,7 +3310,7 @@ QV4::ReturnedValue QQuickJSContext2DPrototype::method_putImageData(const QV4::Bu
w = pixelArray->d()->image->width();
h = pixelArray->d()->image->height();
- if (callData->argc == 7) {
+ if (callData->argc() == 7) {
dirtyX = callData->args[3].toNumber();
dirtyY = callData->args[4].toNumber();
dirtyWidth = callData->args[5].toNumber();
@@ -3391,7 +3391,7 @@ QV4::ReturnedValue QQuickContext2DStyle::gradient_proto_addColorStop(const QV4::
if (!style)
THROW_GENERIC_ERROR("Not a CanvasGradient object");
- if (callData->argc == 2) {
+ if (callData->argc() == 2) {
if (!style->d()->brush->gradient())
THROW_GENERIC_ERROR("Not a valid CanvasGradient object, can't get the gradient information");