Get rid of the private v_cast<>() method
Replace it with QVariant::Private::get<>(). Change-Id: I801742300d9b15f748bb91fcd6cfa176d2057271 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
This commit is contained in:
parent
d1c3f81126
commit
bfbac6be75
@ -124,9 +124,9 @@ static qlonglong qMetaTypeNumber(const QVariant::Private *d)
|
|||||||
return qRound64(d->data.d);
|
return qRound64(d->data.d);
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
return v_cast<QJsonValue>(d)->toDouble();
|
return d->get<QJsonValue>().toDouble();
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
return v_cast<QCborValue>(d)->toInteger();
|
return d->get<QCborValue>().toInteger();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
Q_ASSERT(false);
|
Q_ASSERT(false);
|
||||||
@ -157,16 +157,16 @@ static qlonglong qConvertToNumber(const QVariant::Private *d, bool *ok, bool all
|
|||||||
|
|
||||||
switch (uint(d->type().id())) {
|
switch (uint(d->type().id())) {
|
||||||
case QMetaType::QString: {
|
case QMetaType::QString: {
|
||||||
const QString *s = v_cast<QString>(d);
|
const QString &s = d->get<QString>();
|
||||||
qlonglong l = s->toLongLong(ok);
|
qlonglong l = s.toLongLong(ok);
|
||||||
if (*ok)
|
if (*ok)
|
||||||
return l;
|
return l;
|
||||||
if (allowStringToBool) {
|
if (allowStringToBool) {
|
||||||
if (*s == QLatin1String("false") || *s == QLatin1String("0")) {
|
if (s == QLatin1String("false") || s == QLatin1String("0")) {
|
||||||
*ok = true;
|
*ok = true;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (*s == QLatin1String("true") || *s == QLatin1String("1")) {
|
if (s == QLatin1String("true") || s == QLatin1String("1")) {
|
||||||
*ok = true;
|
*ok = true;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -174,18 +174,18 @@ static qlonglong qConvertToNumber(const QVariant::Private *d, bool *ok, bool all
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
case QMetaType::QChar:
|
case QMetaType::QChar:
|
||||||
return v_cast<QChar>(d)->unicode();
|
return d->get<QChar>().unicode();
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
return v_cast<QByteArray>(d)->toLongLong(ok);
|
return d->get<QByteArray>().toLongLong(ok);
|
||||||
case QMetaType::Bool:
|
case QMetaType::Bool:
|
||||||
return qlonglong(d->data.b);
|
return qlonglong(d->data.b);
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isInteger() && !v_cast<QCborValue>(d)->isDouble())
|
if (!d->get<QCborValue>().isInteger() && !d->get<QCborValue>().isDouble())
|
||||||
break;
|
break;
|
||||||
return qMetaTypeNumber(d);
|
return qMetaTypeNumber(d);
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isDouble())
|
if (!d->get<QJsonValue>().isDouble())
|
||||||
break;
|
break;
|
||||||
Q_FALLTHROUGH();
|
Q_FALLTHROUGH();
|
||||||
#endif
|
#endif
|
||||||
@ -231,7 +231,7 @@ static qreal qConvertToRealNumber(const QVariant::Private *d, bool *ok)
|
|||||||
*ok = true;
|
*ok = true;
|
||||||
switch (uint(d->type().id())) {
|
switch (uint(d->type().id())) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
return v_cast<QString>(d)->toDouble(ok);
|
return d->get<QString>().toDouble(ok);
|
||||||
case QMetaType::Double:
|
case QMetaType::Double:
|
||||||
return qreal(d->data.d);
|
return qreal(d->data.d);
|
||||||
case QMetaType::Float:
|
case QMetaType::Float:
|
||||||
@ -244,9 +244,9 @@ static qreal qConvertToRealNumber(const QVariant::Private *d, bool *ok)
|
|||||||
return qreal(qMetaTypeUNumber(d));
|
return qreal(qMetaTypeUNumber(d));
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
return v_cast<QCborValue>(d)->toDouble();
|
return d->get<QCborValue>().toDouble();
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
return v_cast<QJsonValue>(d)->toDouble();
|
return d->get<QJsonValue>().toDouble();
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
// includes enum conversion as well as invalid types
|
// includes enum conversion as well as invalid types
|
||||||
@ -260,22 +260,22 @@ static qulonglong qConvertToUnsignedNumber(const QVariant::Private *d, bool *ok)
|
|||||||
|
|
||||||
switch (uint(d->type().id())) {
|
switch (uint(d->type().id())) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
return v_cast<QString>(d)->toULongLong(ok);
|
return d->get<QString>().toULongLong(ok);
|
||||||
case QMetaType::QChar:
|
case QMetaType::QChar:
|
||||||
return v_cast<QChar>(d)->unicode();
|
return d->get<QChar>().unicode();
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
return v_cast<QByteArray>(d)->toULongLong(ok);
|
return d->get<QByteArray>().toULongLong(ok);
|
||||||
case QMetaType::Bool:
|
case QMetaType::Bool:
|
||||||
return qulonglong(d->data.b);
|
return qulonglong(d->data.b);
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (v_cast<QCborValue>(d)->isDouble())
|
if (d->get<QCborValue>().isDouble())
|
||||||
return qulonglong(qConvertToRealNumber(d, ok));
|
return qulonglong(qConvertToRealNumber(d, ok));
|
||||||
if (!v_cast<QCborValue>(d)->isInteger())
|
if (!d->get<QCborValue>().isInteger())
|
||||||
return false;
|
return false;
|
||||||
return qulonglong(qMetaTypeNumber(d));
|
return qulonglong(qMetaTypeNumber(d));
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isDouble())
|
if (!d->get<QJsonValue>().isDouble())
|
||||||
break;
|
break;
|
||||||
Q_FALLTHROUGH();
|
Q_FALLTHROUGH();
|
||||||
#endif
|
#endif
|
||||||
@ -317,7 +317,7 @@ static qulonglong qConvertToUnsignedNumber(const QVariant::Private *d, bool *ok)
|
|||||||
template<typename TInput, typename LiteralWrapper>
|
template<typename TInput, typename LiteralWrapper>
|
||||||
inline bool qt_convertToBool(const QVariant::Private *const d)
|
inline bool qt_convertToBool(const QVariant::Private *const d)
|
||||||
{
|
{
|
||||||
TInput str = v_cast<TInput>(d)->toLower();
|
TInput str = d->get<TInput>().toLower();
|
||||||
return !(str.isEmpty() || str == LiteralWrapper("0") || str == LiteralWrapper("false"));
|
return !(str.isEmpty() || str == LiteralWrapper("0") || str == LiteralWrapper("false"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -372,11 +372,11 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QUrl:
|
case QMetaType::QUrl:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*static_cast<QUrl *>(result) = QUrl(*v_cast<QString>(d));
|
*static_cast<QUrl *>(result) = QUrl(d->get<QString>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (v_cast<QCborValue>(d)->isUrl()) {
|
if (d->get<QCborValue>().isUrl()) {
|
||||||
*static_cast<QUrl *>(result) = v_cast<QCborValue>(d)->toUrl();
|
*static_cast<QUrl *>(result) = d->get<QCborValue>().toUrl();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@ -389,7 +389,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QModelIndex:
|
case QMetaType::QModelIndex:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QPersistentModelIndex:
|
case QMetaType::QPersistentModelIndex:
|
||||||
*static_cast<QModelIndex *>(result) = QModelIndex(*v_cast<QPersistentModelIndex>(d));
|
*static_cast<QModelIndex *>(result) = QModelIndex(d->get<QPersistentModelIndex>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -398,7 +398,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QPersistentModelIndex:
|
case QMetaType::QPersistentModelIndex:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QModelIndex:
|
case QMetaType::QModelIndex:
|
||||||
*static_cast<QPersistentModelIndex *>(result) = QPersistentModelIndex(*v_cast<QModelIndex>(d));
|
*static_cast<QPersistentModelIndex *>(result) = QPersistentModelIndex(d->get<QModelIndex>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -409,7 +409,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QString *str = static_cast<QString *>(result);
|
QString *str = static_cast<QString *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QChar:
|
case QMetaType::QChar:
|
||||||
*str = *v_cast<QChar>(d);
|
*str = d->get<QChar>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::Char:
|
case QMetaType::Char:
|
||||||
case QMetaType::SChar:
|
case QMetaType::SChar:
|
||||||
@ -436,43 +436,43 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
break;
|
break;
|
||||||
#if QT_CONFIG(datestring)
|
#if QT_CONFIG(datestring)
|
||||||
case QMetaType::QDate:
|
case QMetaType::QDate:
|
||||||
*str = v_cast<QDate>(d)->toString(Qt::ISODate);
|
*str = d->get<QDate>().toString(Qt::ISODate);
|
||||||
break;
|
break;
|
||||||
case QMetaType::QTime:
|
case QMetaType::QTime:
|
||||||
*str = v_cast<QTime>(d)->toString(Qt::ISODateWithMs);
|
*str = d->get<QTime>().toString(Qt::ISODateWithMs);
|
||||||
break;
|
break;
|
||||||
case QMetaType::QDateTime:
|
case QMetaType::QDateTime:
|
||||||
*str = v_cast<QDateTime>(d)->toString(Qt::ISODateWithMs);
|
*str = d->get<QDateTime>().toString(Qt::ISODateWithMs);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case QMetaType::Bool:
|
case QMetaType::Bool:
|
||||||
*str = d->data.b ? QStringLiteral("true") : QStringLiteral("false");
|
*str = d->data.b ? QStringLiteral("true") : QStringLiteral("false");
|
||||||
break;
|
break;
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
*str = QString::fromUtf8(v_cast<QByteArray>(d)->constData());
|
*str = QString::fromUtf8(d->get<QByteArray>().constData());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
if (v_cast<QStringList>(d)->count() == 1)
|
if (d->get<QStringList>().count() == 1)
|
||||||
*str = v_cast<QStringList>(d)->at(0);
|
*str = d->get<QStringList>().at(0);
|
||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QUrl:
|
case QMetaType::QUrl:
|
||||||
*str = v_cast<QUrl>(d)->toString();
|
*str = d->get<QUrl>().toString();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (v_cast<QJsonValue>(d)->isString())
|
if (d->get<QJsonValue>().isString())
|
||||||
*str = v_cast<QJsonValue>(d)->toString();
|
*str = d->get<QJsonValue>().toString();
|
||||||
else if (!v_cast<QJsonValue>(d)->isNull())
|
else if (!d->get<QJsonValue>().isNull())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (v_cast<QCborValue>(d)->isContainer() || v_cast<QCborValue>(d)->isTag())
|
if (d->get<QCborValue>().isContainer() || d->get<QCborValue>().isTag())
|
||||||
return false;
|
return false;
|
||||||
*str = v_cast<QCborValue>(d)->toVariant().toString();
|
*str = d->get<QCborValue>().toVariant().toString();
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case QMetaType::QUuid:
|
case QMetaType::QUuid:
|
||||||
*str = v_cast<QUuid>(d)->toString();
|
*str = d->get<QUuid>().toString();
|
||||||
break;
|
break;
|
||||||
case QMetaType::Nullptr:
|
case QMetaType::Nullptr:
|
||||||
*str = QString();
|
*str = QString();
|
||||||
@ -520,7 +520,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QSize *s = static_cast<QSize *>(result);
|
QSize *s = static_cast<QSize *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QSizeF:
|
case QMetaType::QSizeF:
|
||||||
*s = v_cast<QSizeF>(d)->toSize();
|
*s = d->get<QSizeF>().toSize();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -532,7 +532,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QSizeF *s = static_cast<QSizeF *>(result);
|
QSizeF *s = static_cast<QSizeF *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QSize:
|
case QMetaType::QSize:
|
||||||
*s = QSizeF(*(v_cast<QSize>(d)));
|
*s = QSizeF(d->get<QSize>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -544,7 +544,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QLine *s = static_cast<QLine *>(result);
|
QLine *s = static_cast<QLine *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QLineF:
|
case QMetaType::QLineF:
|
||||||
*s = v_cast<QLineF>(d)->toLine();
|
*s = d->get<QLineF>().toLine();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -556,7 +556,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QLineF *s = static_cast<QLineF *>(result);
|
QLineF *s = static_cast<QLineF *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QLine:
|
case QMetaType::QLine:
|
||||||
*s = QLineF(*(v_cast<QLine>(d)));
|
*s = QLineF(d->get<QLine>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -567,14 +567,14 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
if (d->type().id() == QMetaType::QVariantList) {
|
if (d->type().id() == QMetaType::QVariantList) {
|
||||||
QStringList *slst = static_cast<QStringList *>(result);
|
QStringList *slst = static_cast<QStringList *>(result);
|
||||||
const QVariantList *list = v_cast<QVariantList >(d);
|
const QVariantList &list = d->get<QVariantList >();
|
||||||
const int size = list->size();
|
const int size = list.size();
|
||||||
slst->reserve(size);
|
slst->reserve(size);
|
||||||
for (int i = 0; i < size; ++i)
|
for (int i = 0; i < size; ++i)
|
||||||
slst->append(list->at(i).toString());
|
slst->append(list.at(i).toString());
|
||||||
} else if (d->type().id() == QMetaType::QString) {
|
} else if (d->type().id() == QMetaType::QString) {
|
||||||
QStringList *slst = static_cast<QStringList *>(result);
|
QStringList *slst = static_cast<QStringList *>(result);
|
||||||
*slst = QStringList(*v_cast<QString>(d));
|
*slst = QStringList(d->get<QString>());
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -582,10 +582,10 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QDate: {
|
case QMetaType::QDate: {
|
||||||
QDate *dt = static_cast<QDate *>(result);
|
QDate *dt = static_cast<QDate *>(result);
|
||||||
if (d->type().id() == QMetaType::QDateTime)
|
if (d->type().id() == QMetaType::QDateTime)
|
||||||
*dt = v_cast<QDateTime>(d)->date();
|
*dt = d->get<QDateTime>().date();
|
||||||
#if QT_CONFIG(datestring)
|
#if QT_CONFIG(datestring)
|
||||||
else if (d->type().id() == QMetaType::QString)
|
else if (d->type().id() == QMetaType::QString)
|
||||||
*dt = QDate::fromString(*v_cast<QString>(d), Qt::ISODate);
|
*dt = QDate::fromString(d->get<QString>(), Qt::ISODate);
|
||||||
#endif
|
#endif
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
@ -596,11 +596,11 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QTime *t = static_cast<QTime *>(result);
|
QTime *t = static_cast<QTime *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QDateTime:
|
case QMetaType::QDateTime:
|
||||||
*t = v_cast<QDateTime>(d)->time();
|
*t = d->get<QDateTime>().time();
|
||||||
break;
|
break;
|
||||||
#if QT_CONFIG(datestring)
|
#if QT_CONFIG(datestring)
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*t = QTime::fromString(*v_cast<QString>(d), Qt::ISODate);
|
*t = QTime::fromString(d->get<QString>(), Qt::ISODate);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
@ -613,19 +613,19 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
#if QT_CONFIG(datestring)
|
#if QT_CONFIG(datestring)
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*dt = QDateTime::fromString(*v_cast<QString>(d), Qt::ISODate);
|
*dt = QDateTime::fromString(d->get<QString>(), Qt::ISODate);
|
||||||
break;
|
break;
|
||||||
# ifndef QT_BOOTSTRAPPED
|
# ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (v_cast<QCborValue>(d)->isDateTime())
|
if (d->get<QCborValue>().isDateTime())
|
||||||
*dt = v_cast<QCborValue>(d)->toDateTime();
|
*dt = d->get<QCborValue>().toDateTime();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
case QMetaType::QDate:
|
case QMetaType::QDate:
|
||||||
*dt = v_cast<QDate>(d)->startOfDay();
|
*dt = d->get<QDate>().startOfDay();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -636,7 +636,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QByteArray *ba = static_cast<QByteArray *>(result);
|
QByteArray *ba = static_cast<QByteArray *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*ba = v_cast<QString>(d)->toUtf8();
|
*ba = d->get<QString>().toUtf8();
|
||||||
break;
|
break;
|
||||||
case QMetaType::Double:
|
case QMetaType::Double:
|
||||||
*ba = QByteArray::number(d->data.d, 'g', QLocale::FloatingPointShortest);
|
*ba = QByteArray::number(d->data.d, 'g', QLocale::FloatingPointShortest);
|
||||||
@ -665,15 +665,15 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
*ba = QByteArray(d->data.b ? "true" : "false");
|
*ba = QByteArray(d->data.b ? "true" : "false");
|
||||||
break;
|
break;
|
||||||
case QMetaType::QUuid:
|
case QMetaType::QUuid:
|
||||||
*ba = v_cast<QUuid>(d)->toByteArray();
|
*ba = d->get<QUuid>().toByteArray();
|
||||||
break;
|
break;
|
||||||
case QMetaType::Nullptr:
|
case QMetaType::Nullptr:
|
||||||
*ba = QByteArray();
|
*ba = QByteArray();
|
||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (v_cast<QCborValue>(d)->isByteArray())
|
if (d->get<QCborValue>().isByteArray())
|
||||||
*ba = v_cast<QCborValue>(d)->toByteArray();
|
*ba = d->get<QCborValue>().toByteArray();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
@ -736,7 +736,7 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
*b = qt_convertToBool<QString, QLatin1String>(d);
|
*b = qt_convertToBool<QString, QLatin1String>(d);
|
||||||
break;
|
break;
|
||||||
case QMetaType::QChar:
|
case QMetaType::QChar:
|
||||||
*b = !v_cast<QChar>(d)->isNull();
|
*b = !d->get<QChar>().isNull();
|
||||||
break;
|
break;
|
||||||
case QMetaType::Double:
|
case QMetaType::Double:
|
||||||
case QMetaType::Int:
|
case QMetaType::Int:
|
||||||
@ -757,13 +757,13 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
*b = v_cast<QCborValue>(d)->toBool();
|
*b = d->get<QCborValue>().toBool();
|
||||||
if (!v_cast<QCborValue>(d)->isBool())
|
if (!d->get<QCborValue>().isBool())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
*b = v_cast<QJsonValue>(d)->toBool(false);
|
*b = d->get<QJsonValue>().toBool(false);
|
||||||
if (!v_cast<QJsonValue>(d)->isBool())
|
if (!d->get<QJsonValue>().isBool())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
@ -777,10 +777,10 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
double *f = static_cast<double *>(result);
|
double *f = static_cast<double *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*f = v_cast<QString>(d)->toDouble(&ok);
|
*f = d->get<QString>().toDouble(&ok);
|
||||||
return ok;
|
return ok;
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
*f = v_cast<QByteArray>(d)->toDouble(&ok);
|
*f = d->get<QByteArray>().toDouble(&ok);
|
||||||
return ok;
|
return ok;
|
||||||
case QMetaType::Bool:
|
case QMetaType::Bool:
|
||||||
*f = double(d->data.b);
|
*f = double(d->data.b);
|
||||||
@ -805,13 +805,13 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
*f = v_cast<QCborValue>(d)->toDouble();
|
*f = d->get<QCborValue>().toDouble();
|
||||||
if (!v_cast<QCborValue>(d)->isDouble())
|
if (!d->get<QCborValue>().isDouble())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
*f = v_cast<QJsonValue>(d)->toDouble(0.0);
|
*f = d->get<QJsonValue>().toDouble(0.0);
|
||||||
if (!v_cast<QJsonValue>(d)->isDouble())
|
if (!d->get<QJsonValue>().isDouble())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
@ -825,10 +825,10 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
float *f = static_cast<float *>(result);
|
float *f = static_cast<float *>(result);
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*f = v_cast<QString>(d)->toFloat(&ok);
|
*f = d->get<QString>().toFloat(&ok);
|
||||||
return ok;
|
return ok;
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
*f = v_cast<QByteArray>(d)->toFloat(&ok);
|
*f = d->get<QByteArray>().toFloat(&ok);
|
||||||
return ok;
|
return ok;
|
||||||
case QMetaType::Bool:
|
case QMetaType::Bool:
|
||||||
*f = float(d->data.b);
|
*f = float(d->data.b);
|
||||||
@ -853,13 +853,13 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
*f = v_cast<QCborValue>(d)->toDouble();
|
*f = d->get<QCborValue>().toDouble();
|
||||||
if (!v_cast<QCborValue>(d)->isDouble())
|
if (!d->get<QCborValue>().isDouble())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
*f = v_cast<QJsonValue>(d)->toDouble(0.0);
|
*f = d->get<QJsonValue>().toDouble(0.0);
|
||||||
if (!v_cast<QJsonValue>(d)->isDouble())
|
if (!d->get<QJsonValue>().isDouble())
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
@ -872,24 +872,24 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QVariantList:
|
case QMetaType::QVariantList:
|
||||||
if (d->type().id() == QMetaType::QStringList) {
|
if (d->type().id() == QMetaType::QStringList) {
|
||||||
QVariantList *lst = static_cast<QVariantList *>(result);
|
QVariantList *lst = static_cast<QVariantList *>(result);
|
||||||
const QStringList *slist = v_cast<QStringList>(d);
|
const QStringList &slist = d->get<QStringList>();
|
||||||
const int size = slist->size();
|
const int size = slist.size();
|
||||||
lst->reserve(size);
|
lst->reserve(size);
|
||||||
for (int i = 0; i < size; ++i)
|
for (int i = 0; i < size; ++i)
|
||||||
lst->append(QVariant(slist->at(i)));
|
lst->append(QVariant(slist.at(i)));
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
} else if (d->type().id() == QMetaType::QCborValue) {
|
} else if (d->type().id() == QMetaType::QCborValue) {
|
||||||
if (!v_cast<QCborValue>(d)->isArray())
|
if (!d->get<QCborValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantList *>(result) = v_cast<QCborValue>(d)->toArray().toVariantList();
|
*static_cast<QVariantList *>(result) = d->get<QCborValue>().toArray().toVariantList();
|
||||||
} else if (d->type().id() == QMetaType::QCborArray) {
|
} else if (d->type().id() == QMetaType::QCborArray) {
|
||||||
*static_cast<QVariantList *>(result) = v_cast<QCborArray>(d)->toVariantList();
|
*static_cast<QVariantList *>(result) = d->get<QCborArray>().toVariantList();
|
||||||
} else if (d->type().id() == QMetaType::QJsonValue) {
|
} else if (d->type().id() == QMetaType::QJsonValue) {
|
||||||
if (!v_cast<QJsonValue>(d)->isArray())
|
if (!d->get<QJsonValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantList *>(result) = v_cast<QJsonValue>(d)->toArray().toVariantList();
|
*static_cast<QVariantList *>(result) = d->get<QJsonValue>().toArray().toVariantList();
|
||||||
} else if (d->type().id() == QMetaType::QJsonArray) {
|
} else if (d->type().id() == QMetaType::QJsonArray) {
|
||||||
*static_cast<QVariantList *>(result) = v_cast<QJsonArray>(d)->toVariantList();
|
*static_cast<QVariantList *>(result) = d->get<QJsonArray>().toVariantList();
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
@ -898,23 +898,23 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QVariantMap:
|
case QMetaType::QVariantMap:
|
||||||
if (d->type().id() == QMetaType::QVariantHash) {
|
if (d->type().id() == QMetaType::QVariantHash) {
|
||||||
QVariantMap *map = static_cast<QVariantMap *>(result);
|
QVariantMap *map = static_cast<QVariantMap *>(result);
|
||||||
const QVariantHash *hash = v_cast<QVariantHash>(d);
|
const QVariantHash &hash = d->get<QVariantHash>();
|
||||||
const auto end = hash->end();
|
const auto end = hash.end();
|
||||||
for (auto it = hash->begin(); it != end; ++it)
|
for (auto it = hash.begin(); it != end; ++it)
|
||||||
map->insert(it.key(), it.value());
|
map->insert(it.key(), it.value());
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
} else if (d->type().id() == QMetaType::QCborValue) {
|
} else if (d->type().id() == QMetaType::QCborValue) {
|
||||||
if (!v_cast<QCborValue>(d)->isMap())
|
if (!d->get<QCborValue>().isMap())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantMap *>(result) = v_cast<QCborValue>(d)->toMap().toVariantMap();
|
*static_cast<QVariantMap *>(result) = d->get<QCborValue>().toMap().toVariantMap();
|
||||||
} else if (d->type().id() == QMetaType::QCborMap) {
|
} else if (d->type().id() == QMetaType::QCborMap) {
|
||||||
*static_cast<QVariantMap *>(result) = v_cast<QCborMap>(d)->toVariantMap();
|
*static_cast<QVariantMap *>(result) = d->get<QCborMap>().toVariantMap();
|
||||||
} else if (d->type().id() == QMetaType::QJsonValue) {
|
} else if (d->type().id() == QMetaType::QJsonValue) {
|
||||||
if (!v_cast<QJsonValue>(d)->isObject())
|
if (!d->get<QJsonValue>().isObject())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantMap *>(result) = v_cast<QJsonValue>(d)->toObject().toVariantMap();
|
*static_cast<QVariantMap *>(result) = d->get<QJsonValue>().toObject().toVariantMap();
|
||||||
} else if (d->type().id() == QMetaType::QJsonObject) {
|
} else if (d->type().id() == QMetaType::QJsonObject) {
|
||||||
*static_cast<QVariantMap *>(result) = v_cast<QJsonObject>(d)->toVariantMap();
|
*static_cast<QVariantMap *>(result) = d->get<QJsonObject>().toVariantMap();
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
@ -923,23 +923,23 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QVariantHash:
|
case QMetaType::QVariantHash:
|
||||||
if (d->type().id() == QMetaType::QVariantMap) {
|
if (d->type().id() == QMetaType::QVariantMap) {
|
||||||
QVariantHash *hash = static_cast<QVariantHash *>(result);
|
QVariantHash *hash = static_cast<QVariantHash *>(result);
|
||||||
const QVariantMap *map = v_cast<QVariantMap>(d);
|
const QVariantMap &map = d->get<QVariantMap>();
|
||||||
const auto end = map->end();
|
const auto end = map.end();
|
||||||
for (auto it = map->begin(); it != end; ++it)
|
for (auto it = map.begin(); it != end; ++it)
|
||||||
hash->insert(it.key(), it.value());
|
hash->insert(it.key(), it.value());
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
} else if (d->type().id() == QMetaType::QCborValue) {
|
} else if (d->type().id() == QMetaType::QCborValue) {
|
||||||
if (!v_cast<QCborValue>(d)->isMap())
|
if (!d->get<QCborValue>().isMap())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantHash *>(result) = v_cast<QCborValue>(d)->toMap().toVariantHash();
|
*static_cast<QVariantHash *>(result) = d->get<QCborValue>().toMap().toVariantHash();
|
||||||
} else if (d->type().id() == QMetaType::QCborMap) {
|
} else if (d->type().id() == QMetaType::QCborMap) {
|
||||||
*static_cast<QVariantHash *>(result) = v_cast<QCborMap>(d)->toVariantHash();
|
*static_cast<QVariantHash *>(result) = d->get<QCborMap>().toVariantHash();
|
||||||
} else if (d->type().id() == QMetaType::QJsonValue) {
|
} else if (d->type().id() == QMetaType::QJsonValue) {
|
||||||
if (!v_cast<QJsonValue>(d)->isObject())
|
if (!d->get<QJsonValue>().isObject())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QVariantHash *>(result) = v_cast<QJsonValue>(d)->toObject().toVariantHash();
|
*static_cast<QVariantHash *>(result) = d->get<QJsonValue>().toObject().toVariantHash();
|
||||||
} else if (d->type().id() == QMetaType::QJsonObject) {
|
} else if (d->type().id() == QMetaType::QJsonObject) {
|
||||||
*static_cast<QVariantHash *>(result) = v_cast<QJsonObject>(d)->toVariantHash();
|
*static_cast<QVariantHash *>(result) = d->get<QJsonObject>().toVariantHash();
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
@ -948,25 +948,25 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
#ifndef QT_NO_GEOM_VARIANT
|
#ifndef QT_NO_GEOM_VARIANT
|
||||||
case QMetaType::QRect:
|
case QMetaType::QRect:
|
||||||
if (d->type().id() == QMetaType::QRectF)
|
if (d->type().id() == QMetaType::QRectF)
|
||||||
*static_cast<QRect *>(result) = (v_cast<QRectF>(d))->toRect();
|
*static_cast<QRect *>(result) = d->get<QRectF>().toRect();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QRectF:
|
case QMetaType::QRectF:
|
||||||
if (d->type().id() == QMetaType::QRect)
|
if (d->type().id() == QMetaType::QRect)
|
||||||
*static_cast<QRectF *>(result) = *v_cast<QRect>(d);
|
*static_cast<QRectF *>(result) = d->get<QRect>();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QPointF:
|
case QMetaType::QPointF:
|
||||||
if (d->type().id() == QMetaType::QPoint)
|
if (d->type().id() == QMetaType::QPoint)
|
||||||
*static_cast<QPointF *>(result) = *v_cast<QPoint>(d);
|
*static_cast<QPointF *>(result) = d->get<QPoint>();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
case QMetaType::QPoint:
|
case QMetaType::QPoint:
|
||||||
if (d->type().id() == QMetaType::QPointF)
|
if (d->type().id() == QMetaType::QPointF)
|
||||||
*static_cast<QPoint *>(result) = (v_cast<QPointF>(d))->toPoint();
|
*static_cast<QPoint *>(result) = d->get<QPointF>().toPoint();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
@ -979,16 +979,16 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QUuid:
|
case QMetaType::QUuid:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*static_cast<QUuid *>(result) = QUuid(*v_cast<QString>(d));
|
*static_cast<QUuid *>(result) = QUuid(d->get<QString>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
*static_cast<QUuid *>(result) = QUuid(*v_cast<QByteArray>(d));
|
*static_cast<QUuid *>(result) = QUuid(d->get<QByteArray>());
|
||||||
break;
|
break;
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isUuid())
|
if (!d->get<QCborValue>().isUuid())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QUuid *>(result) = v_cast<QCborValue>(d)->toUuid();
|
*static_cast<QUuid *>(result) = d->get<QCborValue>().toUuid();
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
@ -999,11 +999,11 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
*static_cast<std::nullptr_t *>(result) = nullptr;
|
*static_cast<std::nullptr_t *>(result) = nullptr;
|
||||||
if (QMetaType::typeFlags(t) & (QMetaType::PointerToGadget | QMetaType::PointerToQObject)
|
if (QMetaType::typeFlags(t) & (QMetaType::PointerToGadget | QMetaType::PointerToQObject)
|
||||||
|| d->type().id() == QMetaType::VoidStar) {
|
|| d->type().id() == QMetaType::VoidStar) {
|
||||||
if (v_cast<const void *>(d) == nullptr)
|
if (d->get<const void *>() == nullptr)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#ifndef QT_BOOTSTRAPPED
|
#ifndef QT_BOOTSTRAPPED
|
||||||
if (d->type().id() == QMetaType::QCborValue && v_cast<QCborValue>(d)->isNull())
|
if (d->type().id() == QMetaType::QCborValue && d->get<QCborValue>().isNull())
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
return false;
|
return false;
|
||||||
@ -1012,9 +1012,9 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
#if QT_CONFIG(regularexpression)
|
#if QT_CONFIG(regularexpression)
|
||||||
case QMetaType::QRegularExpression:
|
case QMetaType::QRegularExpression:
|
||||||
if (d->type().id() != QMetaType::QCborValue
|
if (d->type().id() != QMetaType::QCborValue
|
||||||
|| !v_cast<QCborValue>(d)->isRegularExpression())
|
|| !d->get<QCborValue>().isRegularExpression())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QRegularExpression *>(result) = v_cast<QCborValue>(d)->toRegularExpression();
|
*static_cast<QRegularExpression *>(result) = d->get<QCborValue>().toRegularExpression();
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
@ -1042,39 +1042,39 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
Q_ASSERT(ok);
|
Q_ASSERT(ok);
|
||||||
break;
|
break;
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(*v_cast<QString>(d));
|
*static_cast<QJsonValue *>(result) = QJsonValue(d->get<QString>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonArray::fromStringList(*v_cast<QStringList>(d)));
|
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonArray::fromStringList(d->get<QStringList>()));
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantList:
|
case QMetaType::QVariantList:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonArray::fromVariantList(*v_cast<QVariantList>(d)));
|
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonArray::fromVariantList(d->get<QVariantList>()));
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantMap:
|
case QMetaType::QVariantMap:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonObject::fromVariantMap(*v_cast<QVariantMap>(d)));
|
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonObject::fromVariantMap(d->get<QVariantMap>()));
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantHash:
|
case QMetaType::QVariantHash:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonObject::fromVariantHash(*v_cast<QVariantHash>(d)));
|
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonObject::fromVariantHash(d->get<QVariantHash>()));
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonObject:
|
case QMetaType::QJsonObject:
|
||||||
*static_cast<QJsonValue *>(result) = *v_cast<QJsonObject>(d);
|
*static_cast<QJsonValue *>(result) = d->get<QJsonObject>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonArray:
|
case QMetaType::QJsonArray:
|
||||||
*static_cast<QJsonValue *>(result) = *v_cast<QJsonArray>(d);
|
*static_cast<QJsonValue *>(result) = d->get<QJsonArray>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument: {
|
case QMetaType::QJsonDocument: {
|
||||||
QJsonDocument doc = *v_cast<QJsonDocument>(d);
|
QJsonDocument doc = d->get<QJsonDocument>();
|
||||||
*static_cast<QJsonValue *>(result) = doc.isArray() ? QJsonValue(doc.array()) : QJsonValue(doc.object());
|
*static_cast<QJsonValue *>(result) = doc.isArray() ? QJsonValue(doc.array()) : QJsonValue(doc.object());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
*static_cast<QJsonValue *>(result) = v_cast<QCborValue>(d)->toJsonValue();
|
*static_cast<QJsonValue *>(result) = d->get<QCborValue>().toJsonValue();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborMap:
|
case QMetaType::QCborMap:
|
||||||
*static_cast<QJsonValue *>(result) = v_cast<QCborMap>(d)->toJsonObject();
|
*static_cast<QJsonValue *>(result) = d->get<QCborMap>().toJsonObject();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborArray:
|
case QMetaType::QCborArray:
|
||||||
*static_cast<QJsonValue *>(result) = v_cast<QCborArray>(d)->toJsonArray();
|
*static_cast<QJsonValue *>(result) = d->get<QCborArray>().toJsonArray();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonValue::Undefined);
|
*static_cast<QJsonValue *>(result) = QJsonValue(QJsonValue::Undefined);
|
||||||
@ -1084,28 +1084,28 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QJsonArray:
|
case QMetaType::QJsonArray:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
*static_cast<QJsonArray *>(result) = QJsonArray::fromStringList(*v_cast<QStringList>(d));
|
*static_cast<QJsonArray *>(result) = QJsonArray::fromStringList(d->get<QStringList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantList:
|
case QMetaType::QVariantList:
|
||||||
*static_cast<QJsonArray *>(result) = QJsonArray::fromVariantList(*v_cast<QVariantList>(d));
|
*static_cast<QJsonArray *>(result) = QJsonArray::fromVariantList(d->get<QVariantList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isArray())
|
if (!d->get<QJsonValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonArray *>(result) = v_cast<QJsonValue>(d)->toArray();
|
*static_cast<QJsonArray *>(result) = d->get<QJsonValue>().toArray();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument:
|
case QMetaType::QJsonDocument:
|
||||||
if (!v_cast<QJsonDocument>(d)->isArray())
|
if (!d->get<QJsonDocument>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonArray *>(result) = v_cast<QJsonDocument>(d)->array();
|
*static_cast<QJsonArray *>(result) = d->get<QJsonDocument>().array();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isArray())
|
if (!d->get<QCborValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonArray *>(result) = v_cast<QCborValue>(d)->toArray().toJsonArray();
|
*static_cast<QJsonArray *>(result) = d->get<QCborValue>().toArray().toJsonArray();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborArray:
|
case QMetaType::QCborArray:
|
||||||
*static_cast<QJsonArray *>(result) = v_cast<QCborArray>(d)->toJsonArray();
|
*static_cast<QJsonArray *>(result) = d->get<QCborArray>().toJsonArray();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -1114,36 +1114,36 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QJsonObject:
|
case QMetaType::QJsonObject:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QVariantMap:
|
case QMetaType::QVariantMap:
|
||||||
*static_cast<QJsonObject *>(result) = QJsonObject::fromVariantMap(*v_cast<QVariantMap>(d));
|
*static_cast<QJsonObject *>(result) = QJsonObject::fromVariantMap(d->get<QVariantMap>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantHash:
|
case QMetaType::QVariantHash:
|
||||||
*static_cast<QJsonObject *>(result) = QJsonObject::fromVariantHash(*v_cast<QVariantHash>(d));
|
*static_cast<QJsonObject *>(result) = QJsonObject::fromVariantHash(d->get<QVariantHash>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isObject())
|
if (!d->get<QJsonValue>().isObject())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonObject *>(result) = v_cast<QJsonValue>(d)->toObject();
|
*static_cast<QJsonObject *>(result) = d->get<QJsonValue>().toObject();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument:
|
case QMetaType::QJsonDocument:
|
||||||
if (v_cast<QJsonDocument>(d)->isArray())
|
if (d->get<QJsonDocument>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonObject *>(result) = v_cast<QJsonDocument>(d)->object();
|
*static_cast<QJsonObject *>(result) = d->get<QJsonDocument>().object();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isMap())
|
if (!d->get<QCborValue>().isMap())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QJsonObject *>(result) = v_cast<QCborValue>(d)->toMap().toJsonObject();
|
*static_cast<QJsonObject *>(result) = d->get<QCborValue>().toMap().toJsonObject();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborMap:
|
case QMetaType::QCborMap:
|
||||||
*static_cast<QJsonObject *>(result) = v_cast<QCborMap>(d)->toJsonObject();
|
*static_cast<QJsonObject *>(result) = d->get<QCborMap>().toJsonObject();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborSimpleType:
|
case QMetaType::QCborSimpleType:
|
||||||
if (d->type().id() == QMetaType::QCborValue && v_cast<QCborValue>(d)->isSimpleType()) {
|
if (d->type().id() == QMetaType::QCborValue && d->get<QCborValue>().isSimpleType()) {
|
||||||
*static_cast<QCborSimpleType *>(result) = v_cast<QCborValue>(d)->toSimpleType();
|
*static_cast<QCborSimpleType *>(result) = d->get<QCborValue>().toSimpleType();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@ -1175,51 +1175,51 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
Q_ASSERT(ok);
|
Q_ASSERT(ok);
|
||||||
break;
|
break;
|
||||||
case QMetaType::QString:
|
case QMetaType::QString:
|
||||||
*static_cast<QCborValue *>(result) = *v_cast<QString>(d);
|
*static_cast<QCborValue *>(result) = d->get<QString>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
*static_cast<QCborValue *>(result) = QCborArray::fromStringList(*v_cast<QStringList>(d));
|
*static_cast<QCborValue *>(result) = QCborArray::fromStringList(d->get<QStringList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QByteArray:
|
case QMetaType::QByteArray:
|
||||||
*static_cast<QCborValue *>(result) = *v_cast<QByteArray>(d);
|
*static_cast<QCborValue *>(result) = d->get<QByteArray>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QDate:
|
case QMetaType::QDate:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue(v_cast<QDate>(d)->startOfDay());
|
*static_cast<QCborValue *>(result) = QCborValue(d->get<QDate>().startOfDay());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QDateTime:
|
case QMetaType::QDateTime:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue(*v_cast<QDateTime>(d));
|
*static_cast<QCborValue *>(result) = QCborValue(d->get<QDateTime>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QUrl:
|
case QMetaType::QUrl:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue(*v_cast<QUrl>(d));
|
*static_cast<QCborValue *>(result) = QCborValue(d->get<QUrl>());
|
||||||
break;
|
break;
|
||||||
#if QT_CONFIG(regularexpression)
|
#if QT_CONFIG(regularexpression)
|
||||||
case QMetaType::QRegularExpression:
|
case QMetaType::QRegularExpression:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue(*v_cast<QRegularExpression>(d));
|
*static_cast<QCborValue *>(result) = QCborValue(d->get<QRegularExpression>());
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case QMetaType::QUuid:
|
case QMetaType::QUuid:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue(*v_cast<QUuid>(d));
|
*static_cast<QCborValue *>(result) = QCborValue(d->get<QUuid>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantList:
|
case QMetaType::QVariantList:
|
||||||
*static_cast<QCborValue *>(result) = QCborArray::fromVariantList(*v_cast<QVariantList>(d));
|
*static_cast<QCborValue *>(result) = QCborArray::fromVariantList(d->get<QVariantList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantMap:
|
case QMetaType::QVariantMap:
|
||||||
*static_cast<QCborValue *>(result) = QCborMap::fromVariantMap(*v_cast<QVariantMap>(d));
|
*static_cast<QCborValue *>(result) = QCborMap::fromVariantMap(d->get<QVariantMap>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantHash:
|
case QMetaType::QVariantHash:
|
||||||
*static_cast<QCborValue *>(result) = QCborMap::fromVariantHash(*v_cast<QVariantHash>(d));
|
*static_cast<QCborValue *>(result) = QCborMap::fromVariantHash(d->get<QVariantHash>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
*static_cast<QCborValue *>(result) = QCborValue::fromJsonValue(*v_cast<QJsonValue>(d));
|
*static_cast<QCborValue *>(result) = QCborValue::fromJsonValue(d->get<QJsonValue>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonObject:
|
case QMetaType::QJsonObject:
|
||||||
*static_cast<QCborValue *>(result) = QCborMap::fromJsonObject(*v_cast<QJsonObject>(d));
|
*static_cast<QCborValue *>(result) = QCborMap::fromJsonObject(d->get<QJsonObject>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonArray:
|
case QMetaType::QJsonArray:
|
||||||
*static_cast<QCborValue *>(result) = QCborArray::fromJsonArray(*v_cast<QJsonArray>(d));
|
*static_cast<QCborValue *>(result) = QCborArray::fromJsonArray(d->get<QJsonArray>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument: {
|
case QMetaType::QJsonDocument: {
|
||||||
QJsonDocument doc = *v_cast<QJsonDocument>(d);
|
QJsonDocument doc = d->get<QJsonDocument>();
|
||||||
if (doc.isArray())
|
if (doc.isArray())
|
||||||
*static_cast<QCborValue *>(result) = QCborArray::fromJsonArray(doc.array());
|
*static_cast<QCborValue *>(result) = QCborArray::fromJsonArray(doc.array());
|
||||||
else
|
else
|
||||||
@ -1227,13 +1227,13 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case QMetaType::QCborSimpleType:
|
case QMetaType::QCborSimpleType:
|
||||||
*static_cast<QCborValue *>(result) = *v_cast<QCborSimpleType>(d);
|
*static_cast<QCborValue *>(result) = d->get<QCborSimpleType>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborMap:
|
case QMetaType::QCborMap:
|
||||||
*static_cast<QCborValue *>(result) = *v_cast<QCborMap>(d);
|
*static_cast<QCborValue *>(result) = d->get<QCborMap>();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborArray:
|
case QMetaType::QCborArray:
|
||||||
*static_cast<QCborValue *>(result) = *v_cast<QCborArray>(d);
|
*static_cast<QCborValue *>(result) = d->get<QCborArray>();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
*static_cast<QCborValue *>(result) = {};
|
*static_cast<QCborValue *>(result) = {};
|
||||||
@ -1243,28 +1243,28 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QCborArray:
|
case QMetaType::QCborArray:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QStringList:
|
case QMetaType::QStringList:
|
||||||
*static_cast<QCborArray *>(result) = QCborArray::fromStringList(*v_cast<QStringList>(d));
|
*static_cast<QCborArray *>(result) = QCborArray::fromStringList(d->get<QStringList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantList:
|
case QMetaType::QVariantList:
|
||||||
*static_cast<QCborArray *>(result) = QCborArray::fromVariantList(*v_cast<QVariantList>(d));
|
*static_cast<QCborArray *>(result) = QCborArray::fromVariantList(d->get<QVariantList>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isArray())
|
if (!d->get<QCborValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborArray *>(result) = v_cast<QCborValue>(d)->toArray();
|
*static_cast<QCborArray *>(result) = d->get<QCborValue>().toArray();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument:
|
case QMetaType::QJsonDocument:
|
||||||
if (!v_cast<QJsonDocument>(d)->isArray())
|
if (!d->get<QJsonDocument>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(v_cast<QJsonDocument>(d)->array());
|
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(d->get<QJsonDocument>().array());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isArray())
|
if (!d->get<QJsonValue>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(v_cast<QJsonValue>(d)->toArray());
|
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(d->get<QJsonValue>().toArray());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonArray:
|
case QMetaType::QJsonArray:
|
||||||
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(*v_cast<QJsonArray>(d));
|
*static_cast<QCborArray *>(result) = QCborArray::fromJsonArray(d->get<QJsonArray>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -1273,28 +1273,28 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
case QMetaType::QCborMap:
|
case QMetaType::QCborMap:
|
||||||
switch (d->type().id()) {
|
switch (d->type().id()) {
|
||||||
case QMetaType::QVariantMap:
|
case QMetaType::QVariantMap:
|
||||||
*static_cast<QCborMap *>(result) = QCborMap::fromVariantMap(*v_cast<QVariantMap>(d));
|
*static_cast<QCborMap *>(result) = QCborMap::fromVariantMap(d->get<QVariantMap>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QVariantHash:
|
case QMetaType::QVariantHash:
|
||||||
*static_cast<QCborMap *>(result) = QCborMap::fromVariantHash(*v_cast<QVariantHash>(d));
|
*static_cast<QCborMap *>(result) = QCborMap::fromVariantHash(d->get<QVariantHash>());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QCborValue:
|
case QMetaType::QCborValue:
|
||||||
if (!v_cast<QCborValue>(d)->isMap())
|
if (!d->get<QCborValue>().isMap())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborMap *>(result) = v_cast<QCborValue>(d)->toMap();
|
*static_cast<QCborMap *>(result) = d->get<QCborValue>().toMap();
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonDocument:
|
case QMetaType::QJsonDocument:
|
||||||
if (v_cast<QJsonDocument>(d)->isArray())
|
if (d->get<QJsonDocument>().isArray())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(v_cast<QJsonDocument>(d)->object());
|
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(d->get<QJsonDocument>().object());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonValue:
|
case QMetaType::QJsonValue:
|
||||||
if (!v_cast<QJsonValue>(d)->isObject())
|
if (!d->get<QJsonValue>().isObject())
|
||||||
return false;
|
return false;
|
||||||
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(v_cast<QJsonValue>(d)->toObject());
|
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(d->get<QJsonValue>().toObject());
|
||||||
break;
|
break;
|
||||||
case QMetaType::QJsonObject:
|
case QMetaType::QJsonObject:
|
||||||
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(*v_cast<QJsonObject>(d));
|
*static_cast<QCborMap *>(result) = QCborMap::fromJsonObject(d->get<QJsonObject>());
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -1308,8 +1308,8 @@ static bool convert(const QVariant::Private *d, int t, void *result)
|
|||||||
QMetaEnum en = metaEnumFromType(QMetaType(t));
|
QMetaEnum en = metaEnumFromType(QMetaType(t));
|
||||||
if (en.isValid()) {
|
if (en.isValid()) {
|
||||||
QByteArray keys = (d->type().id() == QMetaType::QString)
|
QByteArray keys = (d->type().id() == QMetaType::QString)
|
||||||
? v_cast<QString>(d)->toUtf8()
|
? d->get<QString>().toUtf8()
|
||||||
: *v_cast<QByteArray>(d);
|
: d->get<QByteArray>();
|
||||||
int value = en.keysToValue(keys.constData(), &ok);
|
int value = en.keysToValue(keys.constData(), &ok);
|
||||||
if (ok) {
|
if (ok) {
|
||||||
switch (QMetaType::sizeOf(t)) {
|
switch (QMetaType::sizeOf(t)) {
|
||||||
@ -2470,7 +2470,7 @@ inline T qVariantToHelper(const QVariant::Private &d)
|
|||||||
{
|
{
|
||||||
QMetaType targetType = QMetaType::fromType<T>();
|
QMetaType targetType = QMetaType::fromType<T>();
|
||||||
if (d.type() == targetType)
|
if (d.type() == targetType)
|
||||||
return *v_cast<T>(&d);
|
return d.get<T>();
|
||||||
|
|
||||||
T ret;
|
T ret;
|
||||||
if (d.type().id() >= QMetaType::LastCoreType || targetType.id() >= QMetaType::LastCoreType) {
|
if (d.type().id() >= QMetaType::LastCoreType || targetType.id() >= QMetaType::LastCoreType) {
|
||||||
@ -3511,7 +3511,7 @@ bool QVariant::canConvert(int targetTypeId) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (targetTypeId == String && currentType == StringList)
|
if (targetTypeId == String && currentType == StringList)
|
||||||
return v_cast<QStringList>(&d)->count() == 1;
|
return d.get<QStringList>().count() == 1;
|
||||||
return currentType < qCanConvertMatrixMaximumTargetType
|
return currentType < qCanConvertMatrixMaximumTargetType
|
||||||
&& qCanConvertMatrix[targetTypeId] & (1U << currentType);
|
&& qCanConvertMatrix[targetTypeId] & (1U << currentType);
|
||||||
}
|
}
|
||||||
|
@ -58,36 +58,10 @@
|
|||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
template<typename T>
|
|
||||||
struct QVariantIntegrator
|
|
||||||
{
|
|
||||||
static constexpr bool CanUseInternalSpace = sizeof(T) <= sizeof(QVariant::Private::Data);
|
|
||||||
typedef std::integral_constant<bool, CanUseInternalSpace> CanUseInternalSpace_t;
|
|
||||||
};
|
|
||||||
static_assert(QVariantIntegrator<double>::CanUseInternalSpace);
|
|
||||||
static_assert(QVariantIntegrator<long int>::CanUseInternalSpace);
|
|
||||||
static_assert(QVariantIntegrator<qulonglong>::CanUseInternalSpace);
|
|
||||||
|
|
||||||
template <typename T>
|
|
||||||
inline const T *v_cast(const QVariant::Private *d, T * = nullptr)
|
|
||||||
{
|
|
||||||
return !QVariantIntegrator<T>::CanUseInternalSpace
|
|
||||||
? static_cast<const T *>(d->data.shared->data())
|
|
||||||
: static_cast<const T *>(static_cast<const void *>(&d->data));
|
|
||||||
}
|
|
||||||
|
|
||||||
template <typename T>
|
|
||||||
inline T *v_cast(QVariant::Private *d, T * = nullptr)
|
|
||||||
{
|
|
||||||
return !QVariantIntegrator<T>::CanUseInternalSpace
|
|
||||||
? static_cast<T *>(d->data.shared->data())
|
|
||||||
: static_cast<T *>(static_cast<void *>(&d->data));
|
|
||||||
}
|
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
inline void v_construct(QVariant::Private *x, const T &t)
|
inline void v_construct(QVariant::Private *x, const T &t)
|
||||||
{
|
{
|
||||||
if constexpr (QVariantIntegrator<T>::CanUseInternalSpace) {
|
if constexpr (QVariant::Private::CanUseInternalSpace<T>) {
|
||||||
new (&x->data) T(t);
|
new (&x->data) T(t);
|
||||||
x->is_shared = false;
|
x->is_shared = false;
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user