From 690abaac0e4bd57b5510e68730f7965c01a113da Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Fri, 22 May 2020 17:00:50 +0200 Subject: Port QSettings from QStringRef to QStringView Task-number: QTBUG-84319 Change-Id: If2b5d8eb78ab5ca78d365f137d9680b1f0646c6b Reviewed-by: Volker Hilsheimer --- src/corelib/io/qsettings.cpp | 12 ++++++------ src/corelib/io/qsettings_mac.cpp | 6 +++--- src/corelib/io/qsettings_p.h | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/corelib/io/qsettings.cpp b/src/corelib/io/qsettings.cpp index 855ba0680b..a15dbb772f 100644 --- a/src/corelib/io/qsettings.cpp +++ b/src/corelib/io/qsettings.cpp @@ -303,7 +303,7 @@ QSettingsPrivate *QSettingsPrivate::create(const QString &fileName, QSettings::F } #endif -void QSettingsPrivate::processChild(QStringRef key, ChildSpec spec, QStringList &result) +void QSettingsPrivate::processChild(QStringView key, ChildSpec spec, QStringList &result) { if (spec != AllKeys) { int slashPos = key.indexOf(QLatin1Char('/')); @@ -478,9 +478,9 @@ QVariant QSettingsPrivate::stringToVariant(const QString &s) if (s.startsWith(QLatin1Char('@'))) { if (s.endsWith(QLatin1Char(')'))) { if (s.startsWith(QLatin1String("@ByteArray("))) { - return QVariant(s.midRef(11, s.size() - 12).toLatin1()); + return QVariant(QStringView{s}.mid(11, s.size() - 12).toLatin1()); } else if (s.startsWith(QLatin1String("@String("))) { - return QVariant(s.midRef(8, s.size() - 9).toString()); + return QVariant(QStringView{s}.mid(8, s.size() - 9).toString()); } else if (s.startsWith(QLatin1String("@Variant(")) || s.startsWith(QLatin1String("@DateTime("))) { #ifndef QT_NO_DATASTREAM @@ -493,7 +493,7 @@ QVariant QSettingsPrivate::stringToVariant(const QString &s) version = QDataStream::Qt_4_0; offset = 9; } - QByteArray a = s.midRef(offset).toLatin1(); + QByteArray a = QStringView{s}.mid(offset).toLatin1(); QDataStream stream(&a, QIODevice::ReadOnly); stream.setVersion(version); QVariant result; @@ -1309,14 +1309,14 @@ QStringList QConfFileSettingsPrivate::children(const QString &prefix, ChildSpec &confFile->originalKeys)->lowerBound( thePrefix); while (j != confFile->originalKeys.constEnd() && j.key().startsWith(thePrefix)) { if (!confFile->removedKeys.contains(j.key())) - processChild(j.key().originalCaseKey().midRef(startPos), spec, result); + processChild(QStringView{j.key().originalCaseKey()}.mid(startPos), spec, result); ++j; } j = const_cast( &confFile->addedKeys)->lowerBound(thePrefix); while (j != confFile->addedKeys.constEnd() && j.key().startsWith(thePrefix)) { - processChild(j.key().originalCaseKey().midRef(startPos), spec, result); + processChild(QStringView{j.key().originalCaseKey()}.mid(startPos), spec, result); ++j; } diff --git a/src/corelib/io/qsettings_mac.cpp b/src/corelib/io/qsettings_mac.cpp index 443e6bb00a..a2b943f9ec 100644 --- a/src/corelib/io/qsettings_mac.cpp +++ b/src/corelib/io/qsettings_mac.cpp @@ -413,11 +413,11 @@ QMacSettingsPrivate::QMacSettingsPrivate(QSettings::Scope scope, const QString & } while ((nextDot = domainName.indexOf(QLatin1Char('.'), curPos)) != -1) { - javaPackageName.prepend(domainName.midRef(curPos, nextDot - curPos)); + javaPackageName.prepend(QStringView{domainName}.mid(curPos, nextDot - curPos)); javaPackageName.prepend(QLatin1Char('.')); curPos = nextDot + 1; } - javaPackageName.prepend(domainName.midRef(curPos)); + javaPackageName.prepend(QStringView{domainName}.mid(curPos)); javaPackageName = std::move(javaPackageName).toLower(); if (curPos == 0) javaPackageName.prepend(QLatin1String("com.")); @@ -509,7 +509,7 @@ QStringList QMacSettingsPrivate::children(const QString &prefix, ChildSpec spec) QString currentKey = qtKey(static_cast(CFArrayGetValueAtIndex(cfarray, k))); if (currentKey.startsWith(prefix)) - processChild(currentKey.midRef(startPos), spec, result); + processChild(QStringView{currentKey}.mid(startPos), spec, result); } } } diff --git a/src/corelib/io/qsettings_p.h b/src/corelib/io/qsettings_p.h index 795781cf77..8ddebd2359 100644 --- a/src/corelib/io/qsettings_p.h +++ b/src/corelib/io/qsettings_p.h @@ -224,7 +224,7 @@ public: const QString &organization, const QString &application); static QSettingsPrivate *create(const QString &fileName, QSettings::Format format); - static void processChild(QStringRef key, ChildSpec spec, QStringList &result); + static void processChild(QStringView key, ChildSpec spec, QStringList &result); // Variant streaming functions static QStringList variantListToStringList(const QVariantList &l); -- cgit v1.2.3