aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJake Petroules <jake.petroules@qt.io>2017-10-24 08:40:54 -0700
committerJake Petroules <jake.petroules@qt.io>2017-11-14 18:24:18 +0000
commitb5613da1391789fe661063ab9d30850aa96efd59 (patch)
treed38dba0aefb774dd32268ec94bea5ddc0c9cea0d /src
parentf40667f6fb026fa1747a1e330d6e397bf79435c7 (diff)
STL compatibility: use front() instead of first()
This is a simple find and replace with manual sanity check. Change-Id: I82f0eb38b6a5a3b75a4ed38d97bdb6ce164d09b3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/app/config-ui/commandlineparser.cpp2
-rw-r--r--src/app/config-ui/mainwindow.cpp2
-rw-r--r--src/app/config/configcommandexecutor.cpp2
-rw-r--r--src/app/config/configcommandlineparser.cpp12
-rw-r--r--src/app/qbs-setup-android/commandlineparser.cpp2
-rw-r--r--src/app/qbs-setup-qt/commandlineparser.cpp2
-rw-r--r--src/app/qbs-setup-qt/setupqt.cpp4
-rw-r--r--src/app/qbs-setup-toolchains/commandlineparser.cpp2
-rw-r--r--src/app/qbs-setup-toolchains/probe.cpp2
-rw-r--r--src/app/qbs/commandlinefrontend.cpp32
-rw-r--r--src/app/qbs/parser/commandlineparser.cpp10
-rw-r--r--src/app/qbs/parser/parsercommand.cpp6
-rw-r--r--src/lib/corelib/api/changeset.cpp4
-rw-r--r--src/lib/corelib/api/project.cpp20
-rw-r--r--src/lib/corelib/api/projectfileupdater.cpp14
-rw-r--r--src/lib/corelib/buildgraph/executor.cpp2
-rw-r--r--src/lib/corelib/buildgraph/productinstaller.cpp2
-rw-r--r--src/lib/corelib/buildgraph/qtmocscanner.cpp6
-rw-r--r--src/lib/corelib/language/astimportshandler.cpp6
-rw-r--r--src/lib/corelib/language/itemreaderastvisitor.cpp2
-rw-r--r--src/lib/corelib/language/loader.cpp2
-rw-r--r--src/lib/corelib/language/moduleloader.cpp14
-rw-r--r--src/lib/corelib/tools/applecodesignutils.cpp2
-rw-r--r--src/lib/corelib/tools/scripttools.cpp8
-rw-r--r--src/lib/corelib/tools/settingsmodel.cpp4
-rw-r--r--src/lib/corelib/tools/shellutils.cpp2
26 files changed, 83 insertions, 83 deletions
diff --git a/src/app/config-ui/commandlineparser.cpp b/src/app/config-ui/commandlineparser.cpp
index 718b64b0a..5c5606442 100644
--- a/src/app/config-ui/commandlineparser.cpp
+++ b/src/app/config-ui/commandlineparser.cpp
@@ -59,7 +59,7 @@ void CommandLineParser::parse(const QStringList &commandLine)
if (m_commandLine.isEmpty())
return;
- const QString &arg = m_commandLine.first();
+ const QString &arg = m_commandLine.front();
if (arg == helpOptionShort() || arg == helpOptionLong()) {
m_commandLine.removeFirst();
m_helpRequested = true;
diff --git a/src/app/config-ui/mainwindow.cpp b/src/app/config-ui/mainwindow.cpp
index c5f629278..4de5c85d8 100644
--- a/src/app/config-ui/mainwindow.cpp
+++ b/src/app/config-ui/mainwindow.cpp
@@ -184,7 +184,7 @@ bool MainWindow::eventFilter(QObject *watched, QEvent *event)
if (keyEvent->matches(QKeySequence::Delete)) {
const QModelIndexList indexes = ui->treeView->selectionModel()->selectedRows();
if (indexes.count() == 1) {
- const QModelIndex index = indexes.first();
+ const QModelIndex index = indexes.front();
if (index.isValid()) {
m_model->removeKey(index);
return true;
diff --git a/src/app/config/configcommandexecutor.cpp b/src/app/config/configcommandexecutor.cpp
index 9341663dd..a8ae28f66 100644
--- a/src/app/config/configcommandexecutor.cpp
+++ b/src/app/config/configcommandexecutor.cpp
@@ -63,7 +63,7 @@ void ConfigCommandExecutor::execute(const ConfigCommand &command)
printSettings(command);
break;
case ConfigCommand::CfgSet:
- setValue(command.varNames.first(), command.varValue);
+ setValue(command.varNames.front(), command.varValue);
break;
case ConfigCommand::CfgUnset:
foreach (const QString &varName, command.varNames)
diff --git a/src/app/config/configcommandlineparser.cpp b/src/app/config/configcommandlineparser.cpp
index 595a23ef4..45fb79231 100644
--- a/src/app/config/configcommandlineparser.cpp
+++ b/src/app/config/configcommandlineparser.cpp
@@ -55,13 +55,13 @@ void ConfigCommandLineParser::parse(const QStringList &commandLine)
m_commandLine = commandLine;
if (m_commandLine.isEmpty())
throw ErrorInfo(Tr::tr("No parameters supplied."));
- if (m_commandLine.count() == 1 && (m_commandLine.first() == QLatin1String("--help")
- || m_commandLine.first() == QLatin1String("-h"))) {
+ if (m_commandLine.count() == 1 && (m_commandLine.front() == QLatin1String("--help")
+ || m_commandLine.front() == QLatin1String("-h"))) {
m_helpRequested = true;
return;
}
- while (!m_commandLine.isEmpty() && m_commandLine.first().startsWith(QLatin1String("--"))) {
+ while (!m_commandLine.isEmpty() && m_commandLine.front().startsWith(QLatin1String("--"))) {
const QString arg = m_commandLine.takeFirst().mid(2);
if (arg == QLatin1String("list"))
setCommand(ConfigCommand::CfgList);
@@ -83,7 +83,7 @@ void ConfigCommandLineParser::parse(const QStringList &commandLine)
throw ErrorInfo(Tr::tr("No parameters supplied."));
if (m_commandLine.count() > 2)
throw ErrorInfo(Tr::tr("Too many arguments."));
- m_command.varNames << m_commandLine.first();
+ m_command.varNames << m_commandLine.front();
if (m_commandLine.count() == 1) {
setCommand(ConfigCommand::CfgList);
} else {
@@ -99,12 +99,12 @@ void ConfigCommandLineParser::parse(const QStringList &commandLine)
case ConfigCommand::CfgExport:
if (m_commandLine.count() != 1)
throw ErrorInfo(Tr::tr("Need name of file to which to export."));
- m_command.fileName = m_commandLine.first();
+ m_command.fileName = m_commandLine.front();
break;
case ConfigCommand::CfgImport:
if (m_commandLine.count() != 1)
throw ErrorInfo(Tr::tr("Need name of file from which to import."));
- m_command.fileName = m_commandLine.first();
+ m_command.fileName = m_commandLine.front();
break;
case ConfigCommand::CfgList:
m_command.varNames = m_commandLine;
diff --git a/src/app/qbs-setup-android/commandlineparser.cpp b/src/app/qbs-setup-android/commandlineparser.cpp
index f5a5c3aa3..d2465f395 100644
--- a/src/app/qbs-setup-android/commandlineparser.cpp
+++ b/src/app/qbs-setup-android/commandlineparser.cpp
@@ -72,7 +72,7 @@ void CommandLineParser::parse(const QStringList &commandLine)
throwError(Tr::tr("No command-line arguments provided."));
while (!m_commandLine.isEmpty()) {
- const QString arg = m_commandLine.first();
+ const QString arg = m_commandLine.front();
if (!arg.startsWith(QLatin1Char('-')))
break;
m_commandLine.removeFirst();
diff --git a/src/app/qbs-setup-qt/commandlineparser.cpp b/src/app/qbs-setup-qt/commandlineparser.cpp
index 9a6a003f7..c51af58a0 100644
--- a/src/app/qbs-setup-qt/commandlineparser.cpp
+++ b/src/app/qbs-setup-qt/commandlineparser.cpp
@@ -65,7 +65,7 @@ void CommandLineParser::parse(const QStringList &commandLine)
throwError(Tr::tr("No command-line arguments provided."));
while (!m_commandLine.isEmpty()) {
- const QString arg = m_commandLine.first();
+ const QString arg = m_commandLine.front();
if (!arg.startsWith(QLatin1Char('-')))
break;
m_commandLine.removeFirst();
diff --git a/src/app/qbs-setup-qt/setupqt.cpp b/src/app/qbs-setup-qt/setupqt.cpp
index d6eb282eb..23a5b2736 100644
--- a/src/app/qbs-setup-qt/setupqt.cpp
+++ b/src/app/qbs-setup-qt/setupqt.cpp
@@ -566,9 +566,9 @@ void SetupQt::saveToQbsSettings(const QString &qtVersionName, const QtEnvironmen
QString bestMatch;
if (fullMatches.count() == 1)
- bestMatch = fullMatches.first();
+ bestMatch = fullMatches.front();
else if (fullMatches.isEmpty() && partialMatches.count() == 1)
- bestMatch = partialMatches.first();
+ bestMatch = partialMatches.front();
if (bestMatch.isEmpty()) {
QString message = Tr::tr("You need to set up toolchain information before you can "
"use this Qt version for building. ");
diff --git a/src/app/qbs-setup-toolchains/commandlineparser.cpp b/src/app/qbs-setup-toolchains/commandlineparser.cpp
index b1cbc9129..f67a24ab3 100644
--- a/src/app/qbs-setup-toolchains/commandlineparser.cpp
+++ b/src/app/qbs-setup-toolchains/commandlineparser.cpp
@@ -67,7 +67,7 @@ void CommandLineParser::parse(const QStringList &commandLine)
throwError(Tr::tr("No command-line arguments provided."));
while (!m_commandLine.isEmpty()) {
- const QString arg = m_commandLine.first();
+ const QString arg = m_commandLine.front();
if (!arg.startsWith(QLatin1Char('-')))
break;
m_commandLine.removeFirst();
diff --git a/src/app/qbs-setup-toolchains/probe.cpp b/src/app/qbs-setup-toolchains/probe.cpp
index 2bb99abfd..c2bc06c7d 100644
--- a/src/app/qbs-setup-toolchains/probe.cpp
+++ b/src/app/qbs-setup-toolchains/probe.cpp
@@ -290,7 +290,7 @@ void probe(Settings *settings)
if (profiles.isEmpty()) {
qStderr << Tr::tr("Could not detect any toolchains. No profile created.") << endl;
} else if (profiles.count() == 1 && settings->defaultProfile().isEmpty()) {
- const QString profileName = profiles.first().name();
+ const QString profileName = profiles.front().name();
qStdout << Tr::tr("Making profile '%1' the default.").arg(profileName) << endl;
settings->setValue(QLatin1String("defaultProfile"), profileName);
}
diff --git a/src/app/qbs/commandlinefrontend.cpp b/src/app/qbs/commandlinefrontend.cpp
index 2a6dae2b6..2c4290c46 100644
--- a/src/app/qbs/commandlinefrontend.cpp
+++ b/src/app/qbs/commandlinefrontend.cpp
@@ -374,7 +374,7 @@ void CommandLineFrontend::handleProjectsResolved()
qApp->exit(runShell());
break;
case StatusCommandType:
- qApp->exit(printStatus(m_projects.first().projectData()));
+ qApp->exit(printStatus(m_projects.front().projectData()));
break;
case GenerateCommandType:
checkGeneratorName();
@@ -431,20 +431,20 @@ int CommandLineFrontend::runShell()
case 0: // No specific product, use project-global environment.
break;
case 1:
- productToRun = productsToUse().values().first().first();
+ productToRun = productsToUse().values().front().front();
break;
default:
throw ErrorInfo(Tr::tr("The command '%1' cannot take more than one product."));
}
- RunEnvironment runEnvironment = m_projects.first().getRunEnvironment(productToRun,
- m_parser.installOptions(m_projects.first().profile()),
+ RunEnvironment runEnvironment = m_projects.front().getRunEnvironment(productToRun,
+ m_parser.installOptions(m_projects.front().profile()),
QProcessEnvironment::systemEnvironment(), m_settings);
return runEnvironment.doRunShell();
}
BuildOptions CommandLineFrontend::buildOptions(const Project &project) const
{
- BuildOptions options = m_parser.buildOptions(m_projects.first().profile());
+ BuildOptions options = m_parser.buildOptions(m_projects.front().profile());
if (options.maxJobCount() <= 0) {
const QString profileName = project.profile();
QBS_CHECK(!profileName.isEmpty());
@@ -541,8 +541,8 @@ int CommandLineFrontend::runTarget()
throw ErrorInfo(Tr::tr("Cannot run: Product '%1' is not an application.")
.arg(productToRun.name()));
}
- RunEnvironment runEnvironment = m_projects.first().getRunEnvironment(productToRun,
- m_parser.installOptions(m_projects.first().profile()),
+ RunEnvironment runEnvironment = m_projects.front().getRunEnvironment(productToRun,
+ m_parser.installOptions(m_projects.front().profile()),
QProcessEnvironment::systemEnvironment(), m_settings);
return runEnvironment.doRunTarget(executableFilePath, m_parser.runArgs());
}
@@ -560,8 +560,8 @@ void CommandLineFrontend::dumpNodesTree()
{
QFile stdOut;
stdOut.open(stdout, QIODevice::WriteOnly);
- const ErrorInfo error = m_projects.first().dumpNodesTree(stdOut, productsToUse()
- .value(m_projects.first()));
+ const ErrorInfo error = m_projects.front().dumpNodesTree(stdOut, productsToUse()
+ .value(m_projects.front()));
if (error.hasError())
throw error;
}
@@ -615,8 +615,8 @@ ProductData CommandLineFrontend::getTheOneRunnableProduct()
QBS_CHECK(m_projects.count() == 1); // Has been checked earlier.
if (m_parser.products().count() == 1) {
- foreach (const ProductData &p, m_projects.first().projectData().allProducts()) {
- if (p.name() == m_parser.products().first())
+ foreach (const ProductData &p, m_projects.front().projectData().allProducts()) {
+ if (p.name() == m_parser.products().front())
return p;
}
QBS_CHECK(false);
@@ -624,13 +624,13 @@ ProductData CommandLineFrontend::getTheOneRunnableProduct()
QBS_CHECK(m_parser.products().count() == 0);
QList<ProductData> runnableProducts;
- foreach (const ProductData &p, m_projects.first().projectData().allProducts()) {
+ foreach (const ProductData &p, m_projects.front().projectData().allProducts()) {
if (p.isRunnable())
runnableProducts << p;
}
if (runnableProducts.count() == 1)
- return runnableProducts.first();
+ return runnableProducts.front();
if (runnableProducts.isEmpty()) {
throw ErrorInfo(Tr::tr("Cannot execute command '%1': Project has no runnable product.")
@@ -642,7 +642,7 @@ ProductData CommandLineFrontend::getTheOneRunnableProduct()
error.append(Tr::tr("Use the '--products' option with one of the following products:"));
foreach (const ProductData &p, runnableProducts) {
QString productRepr = QLatin1String("\t") + p.name();
- if (p.profile() != m_projects.first().profile()) {
+ if (p.profile() != m_projects.front().profile()) {
productRepr.append(QLatin1String(" [")).append(p.profile())
.append(QLatin1Char(']'));
}
@@ -654,7 +654,7 @@ ProductData CommandLineFrontend::getTheOneRunnableProduct()
void CommandLineFrontend::install()
{
Q_ASSERT(m_projects.count() == 1);
- const Project project = m_projects.first();
+ const Project project = m_projects.front();
InstallJob *installJob;
if (m_parser.products().isEmpty()) {
const Project::ProductSelection productSelection = m_parser.withNonDefaultProducts()
@@ -662,7 +662,7 @@ void CommandLineFrontend::install()
installJob = project.installAllProducts(m_parser.installOptions(project.profile()),
productSelection);
} else {
- const Project project = m_projects.first();
+ const Project project = m_projects.front();
const ProductMap products = productsToUse();
installJob = project.installSomeProducts(products.value(project),
m_parser.installOptions(project.profile()));
diff --git a/src/app/qbs/parser/commandlineparser.cpp b/src/app/qbs/parser/commandlineparser.cpp
index 434ddf126..c223ea735 100644
--- a/src/app/qbs/parser/commandlineparser.cpp
+++ b/src/app/qbs/parser/commandlineparser.cpp
@@ -321,16 +321,16 @@ void CommandLineParser::CommandLineParserPrivate::doParse()
if (commandLine.isEmpty()) { // No command given, use default.
command = commandPool.getCommand(BuildCommandType);
} else {
- command = commandFromString(commandLine.first());
+ command = commandFromString(commandLine.front());
if (command) {
commandLine.removeFirst();
} else { // No command given.
- if (commandLine.first() == QLatin1String("-h")
- || commandLine.first() == QLatin1String("--help")) {
+ if (commandLine.front() == QLatin1String("-h")
+ || commandLine.front() == QLatin1String("--help")) {
command = commandPool.getCommand(HelpCommandType);
commandLine.takeFirst();
- } else if (commandLine.first() == QLatin1String("-V")
- || commandLine.first() == QLatin1String("--version")) {
+ } else if (commandLine.front() == QLatin1String("-V")
+ || commandLine.front() == QLatin1String("--version")) {
command = commandPool.getCommand(VersionCommandType);
commandLine.takeFirst();
} else {
diff --git a/src/app/qbs/parser/parsercommand.cpp b/src/app/qbs/parser/parsercommand.cpp
index dd07f2cce..7bf147cea 100644
--- a/src/app/qbs/parser/parsercommand.cpp
+++ b/src/app/qbs/parser/parsercommand.cpp
@@ -101,7 +101,7 @@ QList<CommandLineOption::Type> Command::actualSupportedOptions() const
void Command::parseOption(QStringList &input)
{
- const QString optionString = input.first();
+ const QString optionString = input.front();
QBS_CHECK(optionString.startsWith(QLatin1Char('-')));
input.removeFirst();
if (optionString.count() == 1)
@@ -148,7 +148,7 @@ void Command::parseOption(QStringList &input)
void Command::parseNext(QStringList &input)
{
QBS_CHECK(!input.empty());
- if (input.first().startsWith(QLatin1Char('-')))
+ if (input.front().startsWith(QLatin1Char('-')))
parseOption(input);
else
parsePropertyAssignment(input.takeFirst());
@@ -392,7 +392,7 @@ QList<CommandLineOption::Type> RunCommand::supportedOptions() const
void RunCommand::parseNext(QStringList &input)
{
QBS_CHECK(!input.empty());
- if (input.first() != QLatin1String("--")) {
+ if (input.front() != QLatin1String("--")) {
Command::parseNext(input);
return;
}
diff --git a/src/lib/corelib/api/changeset.cpp b/src/lib/corelib/api/changeset.cpp
index ad070744c..bd04fe006 100644
--- a/src/lib/corelib/api/changeset.cpp
+++ b/src/lib/corelib/api/changeset.cpp
@@ -373,7 +373,7 @@ void ChangeSet::apply_helper()
QList<EditOp> replaceList;
{
while (!m_operationList.isEmpty()) {
- const EditOp cmd(m_operationList.first());
+ const EditOp cmd(m_operationList.front());
m_operationList.removeFirst();
convertToReplace(cmd, &replaceList);
}
@@ -384,7 +384,7 @@ void ChangeSet::apply_helper()
m_cursor->beginEditBlock();
while (!replaceList.isEmpty()) {
- const EditOp cmd(replaceList.first());
+ const EditOp cmd(replaceList.front());
replaceList.removeFirst();
doReplace(cmd, &replaceList);
}
diff --git a/src/lib/corelib/api/project.cpp b/src/lib/corelib/api/project.cpp
index 648022b32..4101f705d 100644
--- a/src/lib/corelib/api/project.cpp
+++ b/src/lib/corelib/api/project.cpp
@@ -337,14 +337,14 @@ void ProjectPrivate::addGroup(const ProductData &product, const QString &groupNa
const QList<ResolvedProductPtr> resolvedProducts = internalProducts(products);
QBS_CHECK(products.count() == resolvedProducts.count());
- for (const GroupPtr &resolvedGroup : qAsConst(resolvedProducts.first()->groups)) {
+ for (const GroupPtr &resolvedGroup : qAsConst(resolvedProducts.front()->groups)) {
if (resolvedGroup->name == groupName) {
throw ErrorInfo(Tr::tr("Group '%1' already exists in product '%2'.")
.arg(groupName, product.name()), resolvedGroup->location);
}
}
- ProjectFileGroupInserter groupInserter(products.first(), groupName);
+ ProjectFileGroupInserter groupInserter(products.front(), groupName);
groupInserter.apply();
m_projectData.d.detach(); // The data we already gave out must stay as it is.
@@ -354,7 +354,7 @@ void ProjectPrivate::addGroup(const ProductData &product, const QString &groupNa
updateExternalCodeLocations(m_projectData, groupInserter.itemPosition(),
groupInserter.lineOffset());
- products = findProductsByName(products.first().name()); // These are new objects.
+ products = findProductsByName(products.front().name()); // These are new objects.
QBS_CHECK(products.count() == resolvedProducts.count());
for (int i = 0; i < products.count(); ++i) {
const GroupPtr resolvedGroup = ResolvedGroup::create();
@@ -451,7 +451,7 @@ ProjectPrivate::FileListUpdateContext ProjectPrivate::getFileListContext(const P
throw ErrorInfo(Tr::tr("File '%1' appears more than once.").arg(absPath));
if (forAdding && !FileInfo(absPath).exists())
throw ErrorInfo(Tr::tr("File '%1' does not exist.").arg(absPath));
- if (matchesWildcard(absPath, groupContext.resolvedGroups.first())) {
+ if (matchesWildcard(absPath, groupContext.resolvedGroups.front())) {
filesContext.absoluteFilePathsFromWildcards << absPath;
} else {
filesContext.absoluteFilePaths << absPath;
@@ -490,8 +490,8 @@ void ProjectPrivate::addFiles(const ProductData &product, const GroupData &group
}
}
- ProjectFileFilesAdder adder(groupContext.products.first(),
- group.isValid() ? groupContext.groups.first() : GroupData(),
+ ProjectFileFilesAdder adder(groupContext.products.front(),
+ group.isValid() ? groupContext.groups.front() : GroupData(),
filesContext.relativeFilePaths);
adder.apply();
@@ -559,7 +559,7 @@ void ProjectPrivate::removeFiles(const ProductData &product, const GroupData &gr
}
QStringList filesNotFound = filesContext.absoluteFilePaths;
QList<SourceArtifactPtr> sourceArtifacts;
- for (const SourceArtifactPtr &sa : qAsConst(groupContext.resolvedGroups.first()->files)) {
+ for (const SourceArtifactPtr &sa : qAsConst(groupContext.resolvedGroups.front()->files)) {
if (filesNotFound.removeOne(sa->absoluteFilePath))
sourceArtifacts << sa;
}
@@ -568,8 +568,8 @@ void ProjectPrivate::removeFiles(const ProductData &product, const GroupData &gr
.arg(filesNotFound.join(QLatin1String(", "))));
}
- ProjectFileFilesRemover remover(groupContext.products.first(),
- group.isValid() ? groupContext.groups.first() : GroupData(),
+ ProjectFileFilesRemover remover(groupContext.products.front(),
+ group.isValid() ? groupContext.groups.front() : GroupData(),
filesContext.relativeFilePaths);
remover.apply();
@@ -595,7 +595,7 @@ void ProjectPrivate::removeGroup(const ProductData &product, const GroupData &gr
{
GroupUpdateContext context = getGroupContext(product, group);
- ProjectFileGroupRemover remover(context.products.first(), context.groups.first());
+ ProjectFileGroupRemover remover(context.products.front(), context.groups.front());
remover.apply();
for (int i = 0; i < context.resolvedProducts.count(); ++i) {
diff --git a/src/lib/corelib/api/projectfileupdater.cpp b/src/lib/corelib/api/projectfileupdater.cpp
index 942ab0efa..ced85e123 100644
--- a/src/lib/corelib/api/projectfileupdater.cpp
+++ b/src/lib/corelib/api/projectfileupdater.cpp
@@ -233,7 +233,7 @@ void ProjectFileGroupInserter::doApply(QString &fileContent, UiProgram *ast)
int lineOffset = 3 + 1; // Our text + a leading newline that is always added by the rewriter.
const QList<ChangeSet::EditOp> &editOps = changeSet.operationList();
QBS_CHECK(editOps.count() == 1);
- const ChangeSet::EditOp &insertOp = editOps.first();
+ const ChangeSet::EditOp &insertOp = editOps.front();
setLineOffset(lineOffset);
int insertionLine = fileContent.left(insertOp.pos1).count(QLatin1Char('\n'));
@@ -256,7 +256,7 @@ static const ChangeSet::EditOp &getEditOp(const ChangeSet &changeSet)
{
const QList<ChangeSet::EditOp> &editOps = changeSet.operationList();
QBS_CHECK(editOps.count() == 1);
- return editOps.first();
+ return editOps.front();
}
static int getLineOffsetForChangedBinding(const ChangeSet &changeSet, const QString &oldRhs)
@@ -345,9 +345,9 @@ void ProjectFileFilesAdder::doApply(QString &fileContent, UiProgram *ast)
}
// Insert new files "sorted", but do not change the order of existing files.
- const QString firstNewFileRepr = toJSLiteral(sortedFiles.first());
+ const QString firstNewFileRepr = toJSLiteral(sortedFiles.front());
while (!oldFileReprs.isEmpty()) {
- if (oldFileReprs.first() > firstNewFileRepr)
+ if (oldFileReprs.front() > firstNewFileRepr)
break;
addToFilesRepr(filesRepresentation, oldFileReprs.takeFirst(), arrayElemIndentation);
}
@@ -486,9 +486,9 @@ void ProjectFileFilesRemover::doApply(QString &fileContent, UiProgram *ast)
}
const QString existingFile
= static_cast<StringLiteral *>(exprStatement->expression)->value.toString();
- if (existingFile != m_files.first()) {
+ if (existingFile != m_files.front()) {
throw ErrorInfo(Tr::tr("File '%1' could not be found in the 'files' list.")
- .arg(m_files.first()), bindingLocation);
+ .arg(m_files.front()), bindingLocation);
}
rewriter.changeBinding(itemFinder.item()->initializer, QLatin1String("files"),
QLatin1String("[]"), Rewriter::ScriptBinding);
@@ -539,7 +539,7 @@ void ProjectFileGroupRemover::doApply(QString &fileContent, UiProgram *ast)
setItemPosition(m_group.location());
const QList<ChangeSet::EditOp> &editOps = changeSet.operationList();
QBS_CHECK(editOps.count() == 1);
- const ChangeSet::EditOp &op = editOps.first();
+ const ChangeSet::EditOp &op = editOps.front();
const QString removedText = fileContent.mid(op.pos1, op.length1);
setLineOffset(-removedText.count(QLatin1Char('\n')));
diff --git a/src/lib/corelib/buildgraph/executor.cpp b/src/lib/corelib/buildgraph/executor.cpp
index 8913c5469..0d86142ef 100644
--- a/src/lib/corelib/buildgraph/executor.cpp
+++ b/src/lib/corelib/buildgraph/executor.cpp
@@ -257,7 +257,7 @@ void Executor::doBuild()
InstallOptions installOptions;
installOptions.setDryRun(m_buildOptions.dryRun());
- installOptions.setInstallRoot(m_productsToBuild.first()->moduleProperties
+ installOptions.setInstallRoot(m_productsToBuild.front()->moduleProperties
->qbsPropertyValue(QLatin1String("installRoot")).toString());
installOptions.setKeepGoing(m_buildOptions.keepGoing());
m_productInstaller = new ProductInstaller(m_project, m_productsToBuild, installOptions,
diff --git a/src/lib/corelib/buildgraph/productinstaller.cpp b/src/lib/corelib/buildgraph/productinstaller.cpp
index 1b1e507bb..89e7c94a9 100644
--- a/src/lib/corelib/buildgraph/productinstaller.cpp
+++ b/src/lib/corelib/buildgraph/productinstaller.cpp
@@ -192,7 +192,7 @@ void ProductInstaller::copyFile(const Artifact *artifact)
{
if (m_observer->canceled()) {
throw ErrorInfo(Tr::tr("Installation canceled for configuration '%1'.")
- .arg(m_products.first()->project->topLevelProject()->id()));
+ .arg(m_products.front()->project->topLevelProject()->id()));
}
const QString targetFilePath = this->targetFilePath(m_project.get(),
diff --git a/src/lib/corelib/buildgraph/qtmocscanner.cpp b/src/lib/corelib/buildgraph/qtmocscanner.cpp
index 3251ff167..9f369bdd1 100644
--- a/src/lib/corelib/buildgraph/qtmocscanner.cpp
+++ b/src/lib/corelib/buildgraph/qtmocscanner.cpp
@@ -216,15 +216,15 @@ QScriptValue QtMocScanner::apply(QScriptEngine *engine, const Artifact *artifact
QList<ScannerPlugin *> scanners = ScannerPluginManager::scannersForFileTag(m_tags.cpp);
if (scanners.count() != 1)
return scannerCountError(engine, scanners.count(), m_tags.cpp.toString());
- m_cppScanner = scanners.first();
+ m_cppScanner = scanners.front();
scanners = ScannerPluginManager::scannersForFileTag(m_tags.objcpp);
if (scanners.count() != 1)
return scannerCountError(engine, scanners.count(), m_tags.objcpp.toString());
- m_objcppScanner = scanners.first();
+ m_objcppScanner = scanners.front();
scanners = ScannerPluginManager::scannersForFileTag(m_tags.hpp);
if (scanners.count() != 1)
return scannerCountError(engine, scanners.count(), m_tags.hpp.toString());
- m_hppScanner = scanners.first();
+ m_hppScanner = scanners.front();
}
findIncludedMocCppFiles();
diff --git a/src/lib/corelib/language/astimportshandler.cpp b/src/lib/corelib/language/astimportshandler.cpp
index c4c701f22..1f3c10a0f 100644
--- a/src/lib/corelib/language/astimportshandler.cpp
+++ b/src/lib/corelib/language/astimportshandler.cpp
@@ -87,8 +87,8 @@ void ASTImportsHandler::handleImport(const QbsQmlJS::AST::UiImport *import)
bool isBase = false;
if (import->importUri) {
importUri = toStringList(import->importUri);
- isBase = (importUri.size() == 1 && importUri.first() == QLatin1String("qbs"))
- || (importUri.size() == 2 && importUri.first() == QLatin1String("qbs")
+ isBase = (importUri.size() == 1 && importUri.front() == QLatin1String("qbs"))
+ || (importUri.size() == 2 && importUri.front() == QLatin1String("qbs")
&& importUri.last() == QLatin1String("base"));
if (isBase) {
checkImportVersion(import->versionToken);
@@ -105,7 +105,7 @@ void ASTImportsHandler::handleImport(const QbsQmlJS::AST::UiImport *import)
toCodeLocation(m_file->filePath(), import->importIdToken));
}
} else {
- if (importUri.count() == 2 && importUri.first() == QLatin1String("qbs")) {
+ if (importUri.count() == 2 && importUri.front() == QLatin1String("qbs")) {
const QString extensionName = importUri.last();
if (JsExtensions::hasExtension(extensionName)) {
if (Q_UNLIKELY(!import->importId.isNull())) {
diff --git a/src/lib/corelib/language/itemreaderastvisitor.cpp b/src/lib/corelib/language/itemreaderastvisitor.cpp
index 9d77472c2..76bdc7ff0 100644
--- a/src/lib/corelib/language/itemreaderastvisitor.cpp
+++ b/src/lib/corelib/language/itemreaderastvisitor.cpp
@@ -195,7 +195,7 @@ bool ItemReaderASTVisitor::visit(AST::UiScriptBinding *ast)
const QStringList bindingName = toStringList(ast->qualifiedId);
- if (bindingName.length() == 1 && bindingName.first() == QLatin1String("id")) {
+ if (bindingName.length() == 1 && bindingName.front() == QLatin1String("id")) {
const auto * const expStmt = AST::cast<AST::ExpressionStatement *>(ast->statement);
if (Q_UNLIKELY(!expStmt))
throw ErrorInfo(Tr::tr("id: must be followed by identifier"));
diff --git a/src/lib/corelib/language/loader.cpp b/src/lib/corelib/language/loader.cpp
index d7da2ca67..6926ed61f 100644
--- a/src/lib/corelib/language/loader.cpp
+++ b/src/lib/corelib/language/loader.cpp
@@ -204,7 +204,7 @@ void Loader::setupProjectFilePath(SetupProjectParameters &parameters)
throw ErrorInfo(Tr::tr("More than one project file found in directory '%1'.")
.arg(projectFilePath));
}
- projectFilePath.append(QLatin1Char('/')).append(actualFileNames.first());
+ projectFilePath.append(QLatin1Char('/')).append(actualFileNames.front());
projectFilePath = QDir::current().filePath(projectFilePath);
projectFilePath = QDir::cleanPath(projectFilePath);
diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp
index 1ee216100..9b683c5dd 100644
--- a/src/lib/corelib/language/moduleloader.cpp
+++ b/src/lib/corelib/language/moduleloader.cpp
@@ -1752,11 +1752,11 @@ void ModuleLoader::propagateModulesFromParent(ProductContext *productContext, It
for (Item::Module depMod : oldModules) {
depMod.item = moduleInstancesForGroup.value(depMod.name);
adaptedModules << depMod;
- if (depMod.name.first() == module.name.first())
+ if (depMod.name.front() == module.name.front())
continue;
- const ItemValuePtr &modulePrefix = groupItem->itemProperty(depMod.name.first());
+ const ItemValuePtr &modulePrefix = groupItem->itemProperty(depMod.name.front());
QBS_CHECK(modulePrefix);
- module.item->setProperty(depMod.name.first(), modulePrefix);
+ module.item->setProperty(depMod.name.front(), modulePrefix);
}
module.item->setModules(adaptedModules);
}
@@ -2114,7 +2114,7 @@ void ModuleLoader::resolveDependsItem(DependsContext *dependsContext, Item *pare
ErrorInfo e(Tr::tr("Dependency '%1' not found for product '%2'.")
.arg(moduleName.toString(), dependsContext->product->name),
dependsItem->location());
- if (moduleName.count() == 2 && moduleName.first() == QLatin1String("Qt")) {
+ if (moduleName.count() == 2 && moduleName.front() == QLatin1String("Qt")) {
e.append(Tr::tr("Please create a Qt profile using the qbs-setup-qt tool "
"if you haven't already done so."));
}
@@ -2355,7 +2355,7 @@ private:
static bool isBaseModule(const QualifiedId &moduleName)
{
- return moduleName.count() == 1 && moduleName.first() == QLatin1String("qbs");
+ return moduleName.count() == 1 && moduleName.front() == QLatin1String("qbs");
}
class DelayedPropertyChanger
@@ -2419,7 +2419,7 @@ Item *ModuleLoader::loadModule(ProductContext *productContext, Item *exportingPr
if (Q_UNLIKELY(moduleInstance->type() == ItemType::ModulePrefix)) {
for (const Item::Module &m : item->modules()) {
- if (m.name.first() == moduleName.first())
+ if (m.name.front() == moduleName.front())
throwModuleNamePrefixError(moduleName, m.name, dependsItemLocation);
}
}
@@ -2849,7 +2849,7 @@ void ModuleLoader::instantiateModule(ProductContext *productContext, Item *expor
Item *item = moduleInstanceItem(moduleInstance, iip.first);
item->setPrototype(iip.second->item());
if (iip.second->createdByPropertiesBlock()) {
- ItemValuePtr itemValue = moduleInstance->itemProperty(iip.first.first());
+ ItemValuePtr itemValue = moduleInstance->itemProperty(iip.first.front());
for (int i = 1; i < iip.first.size(); ++i)
itemValue = itemValue->item()->itemProperty(iip.first.at(i));
itemValue->setCreatedByPropertiesBlock(true);
diff --git a/src/lib/corelib/tools/applecodesignutils.cpp b/src/lib/corelib/tools/applecodesignutils.cpp
index f5f8b06fa..b77850a55 100644
--- a/src/lib/corelib/tools/applecodesignutils.cpp
+++ b/src/lib/corelib/tools/applecodesignutils.cpp
@@ -90,7 +90,7 @@ QVariantMap certificateInfo(const QByteArray &data)
const auto subjectInfo = [](const QSslCertificate &cert) {
QVariantMap map;
for (const auto &attr : cert.subjectInfoAttributes())
- map.insert(QString::fromLatin1(attr), cert.subjectInfo(attr).first());
+ map.insert(QString::fromLatin1(attr), cert.subjectInfo(attr).front());
return map;
};
diff --git a/src/lib/corelib/tools/scripttools.cpp b/src/lib/corelib/tools/scripttools.cpp
index 7f094f9bb..adf930cf0 100644
--- a/src/lib/corelib/tools/scripttools.cpp
+++ b/src/lib/corelib/tools/scripttools.cpp
@@ -49,9 +49,9 @@ namespace Internal {
void setConfigProperty(QVariantMap &cfg, const QStringList &name, const QVariant &value)
{
if (name.length() == 1) {
- cfg.insert(name.first(), value);
+ cfg.insert(name.front(), value);
} else {
- QVariant &subCfg = cfg[name.first()];
+ QVariant &subCfg = cfg[name.front()];
QVariantMap subCfgMap = subCfg.toMap();
setConfigProperty(subCfgMap, name.mid(1), value);
subCfg = subCfgMap;
@@ -61,9 +61,9 @@ void setConfigProperty(QVariantMap &cfg, const QStringList &name, const QVariant
QVariant getConfigProperty(const QVariantMap &cfg, const QStringList &name)
{
if (name.length() == 1)
- return cfg.value(name.first());
+ return cfg.value(name.front());
else
- return getConfigProperty(cfg.value(name.first()).toMap(), name.mid(1));
+ return getConfigProperty(cfg.value(name.front()).toMap(), name.mid(1));
}
TemporaryGlobalObjectSetter::TemporaryGlobalObjectSetter(const QScriptValue &object)
diff --git a/src/lib/corelib/tools/settingsmodel.cpp b/src/lib/corelib/tools/settingsmodel.cpp
index ed52455ea..4544fa5d0 100644
--- a/src/lib/corelib/tools/settingsmodel.cpp
+++ b/src/lib/corelib/tools/settingsmodel.cpp
@@ -329,7 +329,7 @@ void SettingsModel::SettingsModelPrivate::readSettings()
for (QVariantMap::ConstIterator it = additionalProperties.constBegin();
it != additionalProperties.constEnd(); ++it) {
const QStringList nameAsList = it.key().split(QLatin1Char('.'), QString::SkipEmptyParts);
- addNode(&rootNode, nameAsList.first(), nameAsList.mid(1), it.value());
+ addNode(&rootNode, nameAsList.front(), nameAsList.mid(1), it.value());
}
dirty = false;
}
@@ -371,7 +371,7 @@ void SettingsModel::SettingsModelPrivate::addNode(qbs::Internal::Node *parentNod
currentNode->value = settingsValueToRepresentation(value);
currentNode->isFromSettings = false;
} else {
- addNode(currentNode, restOfName.first(), restOfName.mid(1), value);
+ addNode(currentNode, restOfName.front(), restOfName.mid(1), value);
}
}
diff --git a/src/lib/corelib/tools/shellutils.cpp b/src/lib/corelib/tools/shellutils.cpp
index 4521e018c..c1992551f 100644
--- a/src/lib/corelib/tools/shellutils.cpp
+++ b/src/lib/corelib/tools/shellutils.cpp
@@ -54,7 +54,7 @@ QString shellInterpreter(const QString &filePath) {
const QString shebang = ts.readLine();
if (shebang.startsWith(QLatin1String("#!"))) {
return (shebang.mid(2).split(QRegExp(QLatin1String("\\s")),
- QString::SkipEmptyParts) << QString()).first();
+ QString::SkipEmptyParts) << QString()).front();
}
}