diff options
author | Ivan Komissarov <ABBAPOH@gmail.com> | 2019-02-19 19:37:37 +0100 |
---|---|---|
committer | Ivan Komissarov <ABBAPOH@gmail.com> | 2019-03-07 12:39:16 +0000 |
commit | 936eee744db9b2fd1b9b66d168d80a113002aad2 (patch) | |
tree | 84a4ab7f0f18c7ad9af5e6521012a86a6eef1189 /src/lib | |
parent | f3056e49c3b2443c5dd9abf78c46381fdbbbd731 (diff) |
Use pass-by-value and move
This fixes -Wmodernize-pass-by-value
Change-Id: I85a732867866e43c39c1d77937fbc645433c96bd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/lib')
55 files changed, 136 insertions, 120 deletions
diff --git a/src/lib/corelib/api/internaljobs.cpp b/src/lib/corelib/api/internaljobs.cpp index 32f288659..95c3dc02c 100644 --- a/src/lib/corelib/api/internaljobs.cpp +++ b/src/lib/corelib/api/internaljobs.cpp @@ -125,11 +125,11 @@ private: }; -InternalJob::InternalJob(const Logger &logger, QObject *parent) +InternalJob::InternalJob(Logger logger, QObject *parent) : QObject(parent) , m_observer(new JobObserver(this)) , m_ownsObserver(true) - , m_logger(logger) + , m_logger(std::move(logger)) , m_timed(false) { } diff --git a/src/lib/corelib/api/internaljobs.h b/src/lib/corelib/api/internaljobs.h index 71e6615bf..0ed9248e6 100644 --- a/src/lib/corelib/api/internaljobs.h +++ b/src/lib/corelib/api/internaljobs.h @@ -80,7 +80,7 @@ public: void shareObserverWith(InternalJob *otherJob); protected: - explicit InternalJob(const Logger &logger, QObject *parent = nullptr); + explicit InternalJob(Logger logger, QObject *parent = nullptr); JobObserver *observer() const { return m_observer; } void setTimed(bool timed) { m_timed = timed; } diff --git a/src/lib/corelib/api/runenvironment.cpp b/src/lib/corelib/api/runenvironment.cpp index f65cc6e3a..df5b4337d 100644 --- a/src/lib/corelib/api/runenvironment.cpp +++ b/src/lib/corelib/api/runenvironment.cpp @@ -71,16 +71,16 @@ using namespace Internal; class RunEnvironment::RunEnvironmentPrivate { public: - RunEnvironmentPrivate(const ResolvedProductPtr &product, const TopLevelProjectConstPtr &project, - const InstallOptions &installOptions, const QProcessEnvironment &environment, - const QStringList &setupRunEnvConfig, Settings *settings, const Logger &logger) - : resolvedProduct(product) - , project(project) - , installOptions(installOptions) + RunEnvironmentPrivate(ResolvedProductPtr product, TopLevelProjectConstPtr project, + InstallOptions installOptions, const QProcessEnvironment &environment, + QStringList setupRunEnvConfig, Settings *settings, Logger logger) + : resolvedProduct(std::move(product)) + , project(std::move(project)) + , installOptions(std::move(installOptions)) , environment(environment) - , setupRunEnvConfig(setupRunEnvConfig) + , setupRunEnvConfig(std::move(setupRunEnvConfig)) , settings(settings) - , logger(logger) + , logger(std::move(logger)) , evalContext(this->logger) { } diff --git a/src/lib/corelib/buildgraph/abstractcommandexecutor.cpp b/src/lib/corelib/buildgraph/abstractcommandexecutor.cpp index 4626c6a1a..1a1d51f11 100644 --- a/src/lib/corelib/buildgraph/abstractcommandexecutor.cpp +++ b/src/lib/corelib/buildgraph/abstractcommandexecutor.cpp @@ -49,14 +49,14 @@ namespace qbs { namespace Internal { -AbstractCommandExecutor::AbstractCommandExecutor(const Logger &logger, QObject *parent) +AbstractCommandExecutor::AbstractCommandExecutor(Logger logger, QObject *parent) : QObject(parent) , m_echoMode(defaultCommandEchoMode()) , m_command(nullptr) , m_transformer(nullptr) , m_mainThreadScriptEngine(nullptr) , m_dryRun(false) - , m_logger(logger) + , m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/abstractcommandexecutor.h b/src/lib/corelib/buildgraph/abstractcommandexecutor.h index f140b5d82..60b2b40b2 100644 --- a/src/lib/corelib/buildgraph/abstractcommandexecutor.h +++ b/src/lib/corelib/buildgraph/abstractcommandexecutor.h @@ -58,7 +58,7 @@ class AbstractCommandExecutor : public QObject { Q_OBJECT public: - explicit AbstractCommandExecutor(const Internal::Logger &logger, QObject *parent = nullptr); + explicit AbstractCommandExecutor(Internal::Logger logger, QObject *parent = nullptr); void setMainThreadScriptEngine(ScriptEngine *engine) { m_mainThreadScriptEngine = engine; } void setDryRunEnabled(bool enabled) { m_dryRun = enabled; } diff --git a/src/lib/corelib/buildgraph/artifactcleaner.cpp b/src/lib/corelib/buildgraph/artifactcleaner.cpp index 232591e10..000dfda02 100644 --- a/src/lib/corelib/buildgraph/artifactcleaner.cpp +++ b/src/lib/corelib/buildgraph/artifactcleaner.cpp @@ -1,3 +1,5 @@ +#include <utility> + /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. @@ -98,12 +100,12 @@ static void removeArtifactFromDisk(Artifact *artifact, bool dryRun, const Logger class CleanupVisitor : public ArtifactVisitor { public: - CleanupVisitor(const CleanOptions &options, const ProgressObserver *observer, - const Logger &logger) + CleanupVisitor(CleanOptions options, const ProgressObserver *observer, + Logger logger) : ArtifactVisitor(Artifact::Generated) - , m_options(options) + , m_options(std::move(options)) , m_observer(observer) - , m_logger(logger) + , m_logger(std::move(logger)) , m_hasError(false) { } @@ -154,8 +156,8 @@ private: Set<QString> m_directories; }; -ArtifactCleaner::ArtifactCleaner(const Logger &logger, ProgressObserver *observer) - : m_logger(logger), m_observer(observer) +ArtifactCleaner::ArtifactCleaner(Logger logger, ProgressObserver *observer) + : m_logger(std::move(logger)), m_observer(observer) { } diff --git a/src/lib/corelib/buildgraph/artifactcleaner.h b/src/lib/corelib/buildgraph/artifactcleaner.h index 4d8c86ea8..5a28b981a 100644 --- a/src/lib/corelib/buildgraph/artifactcleaner.h +++ b/src/lib/corelib/buildgraph/artifactcleaner.h @@ -53,7 +53,7 @@ class ProgressObserver; class ArtifactCleaner { public: - ArtifactCleaner(const Logger &logger, ProgressObserver *observer); + ArtifactCleaner(Logger logger, ProgressObserver *observer); void cleanup(const TopLevelProjectPtr &project, const QList<ResolvedProductPtr> &products, const CleanOptions &options); diff --git a/src/lib/corelib/buildgraph/buildgraphloader.cpp b/src/lib/corelib/buildgraph/buildgraphloader.cpp index fc0492ef3..289dcea26 100644 --- a/src/lib/corelib/buildgraph/buildgraphloader.cpp +++ b/src/lib/corelib/buildgraph/buildgraphloader.cpp @@ -76,8 +76,8 @@ namespace qbs { namespace Internal { -BuildGraphLoader::BuildGraphLoader(const Logger &logger) : - m_logger(logger) +BuildGraphLoader::BuildGraphLoader(Logger logger) : + m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/buildgraphloader.h b/src/lib/corelib/buildgraph/buildgraphloader.h index 94eb01c5d..9d34e2577 100644 --- a/src/lib/corelib/buildgraph/buildgraphloader.h +++ b/src/lib/corelib/buildgraph/buildgraphloader.h @@ -72,7 +72,7 @@ public: class BuildGraphLoader { public: - BuildGraphLoader(const Logger &logger); + BuildGraphLoader(Logger logger); ~BuildGraphLoader(); BuildGraphLoadResult load(const TopLevelProjectPtr &existingProject, diff --git a/src/lib/corelib/buildgraph/cycledetector.cpp b/src/lib/corelib/buildgraph/cycledetector.cpp index a008cc096..5daed55fd 100644 --- a/src/lib/corelib/buildgraph/cycledetector.cpp +++ b/src/lib/corelib/buildgraph/cycledetector.cpp @@ -51,8 +51,8 @@ namespace qbs { namespace Internal { -CycleDetector::CycleDetector(const Logger &logger) - : m_parent(nullptr), m_logger(logger) +CycleDetector::CycleDetector(Logger logger) + : m_parent(nullptr), m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/cycledetector.h b/src/lib/corelib/buildgraph/cycledetector.h index fffe6ed2f..5bfb44ef8 100644 --- a/src/lib/corelib/buildgraph/cycledetector.h +++ b/src/lib/corelib/buildgraph/cycledetector.h @@ -52,7 +52,7 @@ class BuildGraphNode; class QBS_AUTOTEST_EXPORT CycleDetector : private BuildGraphVisitor { public: - CycleDetector(const Logger &logger); + CycleDetector(Logger logger); void visitProject(const TopLevelProjectConstPtr &project); void visitProduct(const ResolvedProductConstPtr &product); diff --git a/src/lib/corelib/buildgraph/depscanner.cpp b/src/lib/corelib/buildgraph/depscanner.cpp index a2a39e4b2..0bf644286 100644 --- a/src/lib/corelib/buildgraph/depscanner.cpp +++ b/src/lib/corelib/buildgraph/depscanner.cpp @@ -154,9 +154,9 @@ bool PluginDependencyScanner::areModulePropertiesCompatible(const PropertyMapCon return true; } -UserDependencyScanner::UserDependencyScanner(const ResolvedScannerConstPtr &scanner, +UserDependencyScanner::UserDependencyScanner(ResolvedScannerConstPtr scanner, ScriptEngine *engine) - : m_scanner(scanner), + : m_scanner(std::move(scanner)), m_engine(engine), m_product(nullptr) { diff --git a/src/lib/corelib/buildgraph/depscanner.h b/src/lib/corelib/buildgraph/depscanner.h index b8f8721aa..ffc0b83de 100644 --- a/src/lib/corelib/buildgraph/depscanner.h +++ b/src/lib/corelib/buildgraph/depscanner.h @@ -102,7 +102,7 @@ private: class UserDependencyScanner : public DependencyScanner { public: - UserDependencyScanner(const ResolvedScannerConstPtr &scanner, ScriptEngine *engine); + UserDependencyScanner(ResolvedScannerConstPtr scanner, ScriptEngine *engine); private: QStringList collectSearchPaths(Artifact *artifact) override; diff --git a/src/lib/corelib/buildgraph/emptydirectoriesremover.cpp b/src/lib/corelib/buildgraph/emptydirectoriesremover.cpp index b3cc6c840..ebbcf67a7 100644 --- a/src/lib/corelib/buildgraph/emptydirectoriesremover.cpp +++ b/src/lib/corelib/buildgraph/emptydirectoriesremover.cpp @@ -49,8 +49,8 @@ namespace qbs { namespace Internal { EmptyDirectoriesRemover::EmptyDirectoriesRemover(const TopLevelProject *project, - const Logger &logger) - : m_project(project), m_logger(logger) + Logger logger) + : m_project(project), m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/emptydirectoriesremover.h b/src/lib/corelib/buildgraph/emptydirectoriesremover.h index 6ec42c627..7d73fb819 100644 --- a/src/lib/corelib/buildgraph/emptydirectoriesremover.h +++ b/src/lib/corelib/buildgraph/emptydirectoriesremover.h @@ -53,7 +53,7 @@ class TopLevelProject; class EmptyDirectoriesRemover { public: - EmptyDirectoriesRemover(const TopLevelProject *project, const Logger &logger); + EmptyDirectoriesRemover(const TopLevelProject *project, Logger logger); void removeEmptyParentDirectories(const QStringList &artifactFilePaths); void removeEmptyParentDirectories(const ArtifactSet &artifacts); diff --git a/src/lib/corelib/buildgraph/executor.cpp b/src/lib/corelib/buildgraph/executor.cpp index 444ab568f..aeb199a64 100644 --- a/src/lib/corelib/buildgraph/executor.cpp +++ b/src/lib/corelib/buildgraph/executor.cpp @@ -86,10 +86,10 @@ bool Executor::ComparePriority::operator() (const BuildGraphNode *x, const Build } -Executor::Executor(const Logger &logger, QObject *parent) +Executor::Executor(Logger logger, QObject *parent) : QObject(parent) , m_productInstaller(nullptr) - , m_logger(logger) + , m_logger(std::move(logger)) , m_progressObserver(nullptr) , m_state(ExecutorIdle) , m_cancelationTimer(new QTimer(this)) diff --git a/src/lib/corelib/buildgraph/executor.h b/src/lib/corelib/buildgraph/executor.h index 003ba9a22..f938d90c4 100644 --- a/src/lib/corelib/buildgraph/executor.h +++ b/src/lib/corelib/buildgraph/executor.h @@ -77,7 +77,7 @@ class Executor : public QObject, private BuildGraphVisitor public: void build(); - Executor(const Logger &logger, QObject *parent = nullptr); + Executor(Logger logger, QObject *parent = nullptr); ~Executor(); void setProject(const TopLevelProjectPtr &project); diff --git a/src/lib/corelib/buildgraph/inputartifactscanner.cpp b/src/lib/corelib/buildgraph/inputartifactscanner.cpp index 48722186d..c8b2cb779 100644 --- a/src/lib/corelib/buildgraph/inputartifactscanner.cpp +++ b/src/lib/corelib/buildgraph/inputartifactscanner.cpp @@ -116,12 +116,12 @@ static void resolveDepencency(const RawScannedDependency &dependency, } InputArtifactScanner::InputArtifactScanner(Artifact *artifact, InputArtifactScannerContext *ctx, - const Logger &logger) + Logger logger) : m_artifact(artifact), m_rawScanResults(artifact->product->topLevelProject()->buildData->rawScanResults), m_context(ctx), m_newDependencyAdded(false), - m_logger(logger) + m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/inputartifactscanner.h b/src/lib/corelib/buildgraph/inputartifactscanner.h index 92d5f516f..ac51af579 100644 --- a/src/lib/corelib/buildgraph/inputartifactscanner.h +++ b/src/lib/corelib/buildgraph/inputartifactscanner.h @@ -118,7 +118,7 @@ class InputArtifactScanner { public: InputArtifactScanner(Artifact *artifact, InputArtifactScannerContext *ctx, - const Logger &logger); + Logger logger); void scan(); bool newDependencyAdded() const { return m_newDependencyAdded; } diff --git a/src/lib/corelib/buildgraph/jscommandexecutor.cpp b/src/lib/corelib/buildgraph/jscommandexecutor.cpp index 4b7adb221..9972ce796 100644 --- a/src/lib/corelib/buildgraph/jscommandexecutor.cpp +++ b/src/lib/corelib/buildgraph/jscommandexecutor.cpp @@ -71,8 +71,8 @@ class JsCommandExecutorThreadObject : public QObject { Q_OBJECT public: - JsCommandExecutorThreadObject(const Logger &logger) - : m_logger(logger) + JsCommandExecutorThreadObject(Logger logger) + : m_logger(std::move(logger)) , m_scriptEngine(nullptr) { } diff --git a/src/lib/corelib/buildgraph/productinstaller.cpp b/src/lib/corelib/buildgraph/productinstaller.cpp index cfd74c205..d4acc9ace 100644 --- a/src/lib/corelib/buildgraph/productinstaller.cpp +++ b/src/lib/corelib/buildgraph/productinstaller.cpp @@ -59,14 +59,14 @@ namespace qbs { namespace Internal { -ProductInstaller::ProductInstaller(const TopLevelProjectPtr &project, - const std::vector<ResolvedProductPtr> &products, const InstallOptions &options, - ProgressObserver *observer, const Logger &logger) - : m_project(project), - m_products(products), - m_options(options), +ProductInstaller::ProductInstaller(TopLevelProjectPtr project, + std::vector<ResolvedProductPtr> products, InstallOptions options, + ProgressObserver *observer, Logger logger) + : m_project(std::move(project)), + m_products(std::move(products)), + m_options(std::move(options)), m_observer(observer), - m_logger(logger) + m_logger(std::move(logger)) { if (!m_options.installRoot().isEmpty()) { QFileInfo installRootFileInfo(m_options.installRoot()); @@ -85,7 +85,7 @@ ProductInstaller::ProductInstaller(const TopLevelProjectPtr &project, if (m_options.removeExistingInstallation()) throw ErrorInfo(Tr::tr("Refusing to remove sysroot.")); } - initInstallRoot(project.get(), m_options); + initInstallRoot(m_project.get(), m_options); } void ProductInstaller::install() diff --git a/src/lib/corelib/buildgraph/productinstaller.h b/src/lib/corelib/buildgraph/productinstaller.h index 8379adb4c..09828cfe9 100644 --- a/src/lib/corelib/buildgraph/productinstaller.h +++ b/src/lib/corelib/buildgraph/productinstaller.h @@ -55,9 +55,9 @@ class ProgressObserver; class ProductInstaller { public: - ProductInstaller(const TopLevelProjectPtr &project, - const std::vector<ResolvedProductPtr> &products, - const InstallOptions &options, ProgressObserver *observer, const Logger &logger); + ProductInstaller(TopLevelProjectPtr project, + std::vector<ResolvedProductPtr> products, + InstallOptions options, ProgressObserver *observer, Logger logger); void install(); static QString targetFilePath(const TopLevelProject *project, const QString &productSourceDir, diff --git a/src/lib/corelib/buildgraph/projectbuilddata.cpp b/src/lib/corelib/buildgraph/projectbuilddata.cpp index dcb10b45b..6a145dacc 100644 --- a/src/lib/corelib/buildgraph/projectbuilddata.cpp +++ b/src/lib/corelib/buildgraph/projectbuilddata.cpp @@ -266,7 +266,7 @@ void ProjectBuildData::store(PersistentPool &pool) } -BuildDataResolver::BuildDataResolver(const Logger &logger) : m_logger(logger) +BuildDataResolver::BuildDataResolver(Logger logger) : m_logger(std::move(logger)) { } diff --git a/src/lib/corelib/buildgraph/projectbuilddata.h b/src/lib/corelib/buildgraph/projectbuilddata.h index 785a86cbb..49101a716 100644 --- a/src/lib/corelib/buildgraph/projectbuilddata.h +++ b/src/lib/corelib/buildgraph/projectbuilddata.h @@ -110,7 +110,7 @@ private: class BuildDataResolver { public: - BuildDataResolver(const Logger &logger); + BuildDataResolver(Logger logger); void resolveBuildData(const TopLevelProjectPtr &resolvedProject, const RulesEvaluationContextPtr &evalContext); void resolveProductBuildDataForExistingProject(const TopLevelProjectPtr &project, diff --git a/src/lib/corelib/buildgraph/rulesapplicator.cpp b/src/lib/corelib/buildgraph/rulesapplicator.cpp index 1bc0cdedb..406f92783 100644 --- a/src/lib/corelib/buildgraph/rulesapplicator.cpp +++ b/src/lib/corelib/buildgraph/rulesapplicator.cpp @@ -1,3 +1,5 @@ +#include <utility> + /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. @@ -76,15 +78,15 @@ namespace qbs { namespace Internal { RulesApplicator::RulesApplicator( - const ResolvedProductPtr &product, - const std::unordered_map<QString, const ResolvedProduct *> &productsByName, - const std::unordered_map<QString, const ResolvedProject *> &projectsByName, - const Logger &logger) - : m_product(product) - , m_productsByName(productsByName) - , m_projectsByName(projectsByName) + ResolvedProductPtr product, + std::unordered_map<QString, const ResolvedProduct *> productsByName, + std::unordered_map<QString, const ResolvedProject *> projectsByName, + Logger logger) + : m_product(std::move(product)) + , m_productsByName(std::move(productsByName)) + , m_projectsByName(std::move(projectsByName)) , m_mocScanner(nullptr) - , m_logger(logger) + , m_logger(std::move(logger)) { } @@ -545,8 +547,8 @@ class ArtifactBindingsExtractor { struct Entry { - Entry(const QString &module, const QString &name, const QVariant &value) - : module(module), name(name), value(value) + Entry(QString module, QString name, QVariant value) + : module(std::move(module)), name(std::move(name)), value(std::move(value)) {} QString module; diff --git a/src/lib/corelib/buildgraph/rulesapplicator.h b/src/lib/corelib/buildgraph/rulesapplicator.h index f6fadb1ec..1160f3d09 100644 --- a/src/lib/corelib/buildgraph/rulesapplicator.h +++ b/src/lib/corelib/buildgraph/rulesapplicator.h @@ -62,10 +62,10 @@ class ScriptEngine; class RulesApplicator { public: - RulesApplicator(const ResolvedProductPtr &product, - const std::unordered_map<QString, const ResolvedProduct *> &productsByName, - const std::unordered_map<QString, const ResolvedProject *> &projectsByName, - const Logger &logger); + RulesApplicator(ResolvedProductPtr product, + std::unordered_map<QString, const ResolvedProduct *> productsByName, + std::unordered_map<QString, const ResolvedProject *> projectsByName, + Logger logger); ~RulesApplicator(); const NodeSet &createdArtifacts() const { return m_createdArtifacts; } diff --git a/src/lib/corelib/buildgraph/rulesevaluationcontext.cpp b/src/lib/corelib/buildgraph/rulesevaluationcontext.cpp index c81e40c4f..6ae230329 100644 --- a/src/lib/corelib/buildgraph/rulesevaluationcontext.cpp +++ b/src/lib/corelib/buildgraph/rulesevaluationcontext.cpp @@ -53,8 +53,8 @@ namespace qbs { namespace Internal { -RulesEvaluationContext::RulesEvaluationContext(const Logger &logger) - : m_logger(logger), +RulesEvaluationContext::RulesEvaluationContext(Logger logger) + : m_logger(std::move(logger)), m_engine(ScriptEngine::create(m_logger, EvalContext::RuleExecution)), m_observer(nullptr), m_initScopeCalls(0) diff --git a/src/lib/corelib/buildgraph/rulesevaluationcontext.h b/src/lib/corelib/buildgraph/rulesevaluationcontext.h index d3bf0e5bd..a5d81ce61 100644 --- a/src/lib/corelib/buildgraph/rulesevaluationcontext.h +++ b/src/lib/corelib/buildgraph/rulesevaluationcontext.h @@ -56,7 +56,7 @@ class ScriptEngine; class RulesEvaluationContext { public: - RulesEvaluationContext(const Logger &logger); + RulesEvaluationContext(Logger logger); ~RulesEvaluationContext(); class Scope diff --git a/src/lib/corelib/generators/generatableprojectiterator.cpp b/src/lib/corelib/generators/generatableprojectiterator.cpp index c6d990f02..7267662e8 100644 --- a/src/lib/corelib/generators/generatableprojectiterator.cpp +++ b/src/lib/corelib/generators/generatableprojectiterator.cpp @@ -41,8 +41,8 @@ namespace qbs { -GeneratableProjectIterator::GeneratableProjectIterator(const GeneratableProject &project) - : project(project) +GeneratableProjectIterator::GeneratableProjectIterator(GeneratableProject project) + : project(std::move(project)) { } diff --git a/src/lib/corelib/generators/generatableprojectiterator.h b/src/lib/corelib/generators/generatableprojectiterator.h index 793627512..993144ce3 100644 --- a/src/lib/corelib/generators/generatableprojectiterator.h +++ b/src/lib/corelib/generators/generatableprojectiterator.h @@ -49,7 +49,7 @@ class QBS_EXPORT GeneratableProjectIterator { GeneratableProject project; public: - GeneratableProjectIterator(const GeneratableProject &project); + GeneratableProjectIterator(GeneratableProject project); void accept(IGeneratableProjectVisitor *visitor); private: diff --git a/src/lib/corelib/language/itemreaderastvisitor.cpp b/src/lib/corelib/language/itemreaderastvisitor.cpp index 2ea306138..901772d16 100644 --- a/src/lib/corelib/language/itemreaderastvisitor.cpp +++ b/src/lib/corelib/language/itemreaderastvisitor.cpp @@ -67,9 +67,9 @@ namespace qbs { namespace Internal { ItemReaderASTVisitor::ItemReaderASTVisitor(ItemReaderVisitorState &visitorState, - const FileContextPtr &file, ItemPool *itemPool, Logger &logger) + FileContextPtr file, ItemPool *itemPool, Logger &logger) : m_visitorState(visitorState) - , m_file(file) + , m_file(std::move(file)) , m_itemPool(itemPool) , m_logger(logger) { diff --git a/src/lib/corelib/language/itemreaderastvisitor.h b/src/lib/corelib/language/itemreaderastvisitor.h index 4a0bedc91..963b78471 100644 --- a/src/lib/corelib/language/itemreaderastvisitor.h +++ b/src/lib/corelib/language/itemreaderastvisitor.h @@ -60,7 +60,7 @@ class ItemReaderVisitorState; class ItemReaderASTVisitor : public QbsQmlJS::AST::Visitor { public: - ItemReaderASTVisitor(ItemReaderVisitorState &visitorState, const FileContextPtr &file, + ItemReaderASTVisitor(ItemReaderVisitorState &visitorState, FileContextPtr file, ItemPool *itemPool, Logger &logger); void checkItemTypes() { doCheckItemTypes(rootItem()); } diff --git a/src/lib/corelib/language/language.cpp b/src/lib/corelib/language/language.cpp index 239eddf1f..9c9313e17 100644 --- a/src/lib/corelib/language/language.cpp +++ b/src/lib/corelib/language/language.cpp @@ -91,8 +91,8 @@ template<typename T> bool equals(const T *v1, const T *v2) * \brief The \c FileTagger class maps 1:1 to the respective item in a qbs source file. */ -FileTagger::FileTagger(const QStringList &patterns, const FileTags &fileTags, int priority) - : m_fileTags(fileTags), m_priority(priority) +FileTagger::FileTagger(const QStringList &patterns, FileTags fileTags, int priority) + : m_fileTags(std::move(fileTags)), m_priority(priority) { setPatterns(patterns); } diff --git a/src/lib/corelib/language/language.h b/src/lib/corelib/language/language.h index 82d9f94a2..945ec9806 100644 --- a/src/lib/corelib/language/language.h +++ b/src/lib/corelib/language/language.h @@ -98,7 +98,7 @@ public: } private: - FileTagger(const QStringList &patterns, const FileTags &fileTags, int priority); + FileTagger(const QStringList &patterns, FileTags fileTags, int priority); FileTagger() {} void setPatterns(const QStringList &patterns); diff --git a/src/lib/corelib/language/loader.cpp b/src/lib/corelib/language/loader.cpp index e27ccca74..f248fbb1a 100644 --- a/src/lib/corelib/language/loader.cpp +++ b/src/lib/corelib/language/loader.cpp @@ -61,8 +61,8 @@ namespace qbs { namespace Internal { -Loader::Loader(ScriptEngine *engine, const Logger &logger) - : m_logger(logger) +Loader::Loader(ScriptEngine *engine, Logger logger) + : m_logger(std::move(logger)) , m_progressObserver(nullptr) , m_engine(engine) { @@ -167,7 +167,7 @@ TopLevelProjectPtr Loader::loadProject(const SetupProjectParameters &_parameters moduleLoader.setStoredProfiles(m_storedProfiles); moduleLoader.setStoredModuleProviderInfo(m_storedModuleProviderInfo); const ModuleLoaderResult loadResult = moduleLoader.load(parameters); - ProjectResolver resolver(&evaluator, loadResult, parameters, m_logger); + ProjectResolver resolver(&evaluator, loadResult, std::move(parameters), m_logger); resolver.setProgressObserver(m_progressObserver); const TopLevelProjectPtr project = resolver.resolve(); project->lastStartResolveTime = resolveTime; diff --git a/src/lib/corelib/language/loader.h b/src/lib/corelib/language/loader.h index 48a0b6065..d172a74ed 100644 --- a/src/lib/corelib/language/loader.h +++ b/src/lib/corelib/language/loader.h @@ -57,7 +57,7 @@ class ScriptEngine; class QBS_AUTOTEST_EXPORT Loader { public: - Loader(ScriptEngine *engine, const Logger &logger); + Loader(ScriptEngine *engine, Logger logger); void setProgressObserver(ProgressObserver *observer); void setSearchPaths(const QStringList &searchPaths); diff --git a/src/lib/corelib/language/projectresolver.cpp b/src/lib/corelib/language/projectresolver.cpp index 4e073a36a..50c177f43 100644 --- a/src/lib/corelib/language/projectresolver.cpp +++ b/src/lib/corelib/language/projectresolver.cpp @@ -114,14 +114,14 @@ struct ProjectResolver::ModuleContext class CancelException { }; -ProjectResolver::ProjectResolver(Evaluator *evaluator, const ModuleLoaderResult &loadResult, - const SetupProjectParameters &setupParameters, Logger &logger) +ProjectResolver::ProjectResolver(Evaluator *evaluator, ModuleLoaderResult loadResult, + SetupProjectParameters setupParameters, Logger &logger) : m_evaluator(evaluator) , m_logger(logger) , m_engine(m_evaluator->engine()) , m_progressObserver(nullptr) - , m_setupParams(setupParameters) - , m_loadResult(loadResult) + , m_setupParams(std::move(setupParameters)) + , m_loadResult(std::move(loadResult)) { QBS_CHECK(FileInfo::isAbsolute(m_setupParams.buildRoot())); } diff --git a/src/lib/corelib/language/projectresolver.h b/src/lib/corelib/language/projectresolver.h index 0732b1c9b..c958127e4 100644 --- a/src/lib/corelib/language/projectresolver.h +++ b/src/lib/corelib/language/projectresolver.h @@ -67,8 +67,8 @@ class ScriptEngine; class ProjectResolver { public: - ProjectResolver(Evaluator *evaluator, const ModuleLoaderResult &loadResult, - const SetupProjectParameters &setupParameters, Logger &logger); + ProjectResolver(Evaluator *evaluator, ModuleLoaderResult loadResult, + SetupProjectParameters setupParameters, Logger &logger); ~ProjectResolver(); void setProgressObserver(ProgressObserver *observer); @@ -185,7 +185,7 @@ private: mutable QHash<CodeLocation, ScriptFunctionPtr> m_scriptFunctionMap; mutable QHash<std::pair<QStringRef, QStringList>, QString> m_scriptFunctions; mutable QHash<QStringRef, QString> m_sourceCode; - const SetupProjectParameters &m_setupParams; + const SetupProjectParameters m_setupParams; ModuleLoaderResult m_loadResult; Set<CodeLocation> m_groupLocationWarnings; std::vector<std::pair<ResolvedProductPtr, Item *>> m_productExportInfo; diff --git a/src/lib/corelib/language/scriptengine.cpp b/src/lib/corelib/language/scriptengine.cpp index 1c6d0cb0d..205a3a4d9 100644 --- a/src/lib/corelib/language/scriptengine.cpp +++ b/src/lib/corelib/language/scriptengine.cpp @@ -817,9 +817,11 @@ void ScriptEngine::uninstallImportFunctions() globalObject().setProperty(requireString(), QScriptValue()); } -ScriptEngine::PropertyCacheKey::PropertyCacheKey(const QString &moduleName, - const QString &propertyName, const PropertyMapConstPtr &propertyMap) - : m_moduleName(moduleName), m_propertyName(propertyName), m_propertyMap(propertyMap) +ScriptEngine::PropertyCacheKey::PropertyCacheKey(QString moduleName, + QString propertyName, PropertyMapConstPtr propertyMap) + : m_moduleName(std::move(moduleName)) + , m_propertyName(std::move(propertyName)) + , m_propertyMap(std::move(propertyMap)) { } diff --git a/src/lib/corelib/language/scriptengine.h b/src/lib/corelib/language/scriptengine.h index 89863189a..57802b018 100644 --- a/src/lib/corelib/language/scriptengine.h +++ b/src/lib/corelib/language/scriptengine.h @@ -302,8 +302,8 @@ private: class PropertyCacheKey { public: - PropertyCacheKey(const QString &moduleName, const QString &propertyName, - const PropertyMapConstPtr &propertyMap); + PropertyCacheKey(QString moduleName, QString propertyName, + PropertyMapConstPtr propertyMap); private: const QString m_moduleName; const QString m_propertyName; diff --git a/src/lib/corelib/language/value.cpp b/src/lib/corelib/language/value.cpp index 16cbbeeff..656f38874 100644 --- a/src/lib/corelib/language/value.cpp +++ b/src/lib/corelib/language/value.cpp @@ -183,9 +183,9 @@ ValuePtr ItemValue::clone() const return create(m_item->clone(), createdByPropertiesBlock()); } -VariantValue::VariantValue(const QVariant &v) +VariantValue::VariantValue(QVariant v) : Value(VariantValueType, false) - , m_value(v) + , m_value(std::move(v)) { } diff --git a/src/lib/corelib/language/value.h b/src/lib/corelib/language/value.h index b9a869d73..0b1b3c222 100644 --- a/src/lib/corelib/language/value.h +++ b/src/lib/corelib/language/value.h @@ -207,7 +207,7 @@ private: class VariantValue : public Value { - VariantValue(const QVariant &v); + VariantValue(QVariant v); public: static VariantValuePtr create(const QVariant &v = QVariant()); diff --git a/src/lib/corelib/tools/buildgraphlocker.cpp b/src/lib/corelib/tools/buildgraphlocker.cpp index c166c6e2d..28a58e3f4 100644 --- a/src/lib/corelib/tools/buildgraphlocker.cpp +++ b/src/lib/corelib/tools/buildgraphlocker.cpp @@ -55,8 +55,8 @@ namespace qbs { namespace Internal { -DirectoryManager::DirectoryManager(const QString &dir, const Logger &logger) - : m_dir(dir), m_logger(logger) +DirectoryManager::DirectoryManager(QString dir, Logger logger) + : m_dir(std::move(dir)), m_logger(std::move(logger)) { rememberCreatedDirectories(); } diff --git a/src/lib/corelib/tools/buildgraphlocker.h b/src/lib/corelib/tools/buildgraphlocker.h index 17d452130..f85fc0768 100644 --- a/src/lib/corelib/tools/buildgraphlocker.h +++ b/src/lib/corelib/tools/buildgraphlocker.h @@ -55,7 +55,7 @@ class ProgressObserver; class DirectoryManager { public: - DirectoryManager(const QString &dir, const Logger &logger); + DirectoryManager(QString dir, Logger logger); ~DirectoryManager(); QString dir() const { return m_dir; } diff --git a/src/lib/corelib/tools/executablefinder.cpp b/src/lib/corelib/tools/executablefinder.cpp index 7c5d1210e..4342c82f0 100644 --- a/src/lib/corelib/tools/executablefinder.cpp +++ b/src/lib/corelib/tools/executablefinder.cpp @@ -64,10 +64,9 @@ static QStringList populateExecutableSuffixes() QStringList ExecutableFinder::m_executableSuffixes = populateExecutableSuffixes(); -ExecutableFinder::ExecutableFinder(const ResolvedProductPtr &m_product, - const QProcessEnvironment &env) - : m_product(m_product) - , m_environment(env) +ExecutableFinder::ExecutableFinder(ResolvedProductPtr product, QProcessEnvironment env) + : m_product(std::move(product)) + , m_environment(std::move(env)) { } diff --git a/src/lib/corelib/tools/executablefinder.h b/src/lib/corelib/tools/executablefinder.h index cb965b5d1..55a8cbe3a 100644 --- a/src/lib/corelib/tools/executablefinder.h +++ b/src/lib/corelib/tools/executablefinder.h @@ -53,7 +53,7 @@ namespace Internal { class ExecutableFinder { public: - ExecutableFinder(const ResolvedProductPtr &product, const QProcessEnvironment &env); + ExecutableFinder(ResolvedProductPtr product, QProcessEnvironment env); QString findExecutable(const QString &path, const QString &workingDirPath); diff --git a/src/lib/corelib/tools/filesaver.cpp b/src/lib/corelib/tools/filesaver.cpp index 0fd652657..5a0a68c1f 100644 --- a/src/lib/corelib/tools/filesaver.cpp +++ b/src/lib/corelib/tools/filesaver.cpp @@ -48,8 +48,8 @@ namespace qbs { namespace Internal { -FileSaver::FileSaver(const std::string &filePath, bool overwriteIfUnchanged) - : m_filePath(filePath), m_overwriteIfUnchanged(overwriteIfUnchanged) +FileSaver::FileSaver(std::string filePath, bool overwriteIfUnchanged) + : m_filePath(std::move(filePath)), m_overwriteIfUnchanged(overwriteIfUnchanged) { } diff --git a/src/lib/corelib/tools/filesaver.h b/src/lib/corelib/tools/filesaver.h index 275ad0f01..8b4c01669 100644 --- a/src/lib/corelib/tools/filesaver.h +++ b/src/lib/corelib/tools/filesaver.h @@ -55,7 +55,7 @@ namespace Internal { */ class QBS_EXPORT FileSaver { public: - FileSaver(const std::string &filePath, bool overwriteIfUnchanged = false); + FileSaver(std::string filePath, bool overwriteIfUnchanged = false); std::ostream *device(); bool open(); diff --git a/src/lib/corelib/tools/msvcinfo.cpp b/src/lib/corelib/tools/msvcinfo.cpp index cbec7b457..c1312c8c9 100644 --- a/src/lib/corelib/tools/msvcinfo.cpp +++ b/src/lib/corelib/tools/msvcinfo.cpp @@ -121,7 +121,7 @@ static QByteArray runProcess(const QString &exeFilePath, const QStringList &args class DummyFile { public: - DummyFile(const QString &fp) : filePath(fp) { } + DummyFile(QString fp) : filePath(std::move(fp)) { } ~DummyFile() { QFile::remove(filePath); } const QString filePath; }; diff --git a/src/lib/corelib/tools/preferences.cpp b/src/lib/corelib/tools/preferences.cpp index 644c2722f..4db271758 100644 --- a/src/lib/corelib/tools/preferences.cpp +++ b/src/lib/corelib/tools/preferences.cpp @@ -1,3 +1,5 @@ +#include <utility> + /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. @@ -51,13 +53,13 @@ namespace qbs { * If a non-empty \c profileName is given, the profile's preferences take precedence over global * ones. Otherwise, the global preferences are used. */ -Preferences::Preferences(Settings *settings, const QString &profileName) - : m_settings(settings), m_profile(profileName) +Preferences::Preferences(Settings *settings, QString profileName) + : m_settings(settings), m_profile(std::move(profileName)) { } -Preferences::Preferences(Settings *settings, const QVariantMap &profileContents) - : m_settings(settings), m_profileContents(profileContents) +Preferences::Preferences(Settings *settings, QVariantMap profileContents) + : m_settings(settings), m_profileContents(std::move(profileContents)) { } diff --git a/src/lib/corelib/tools/preferences.h b/src/lib/corelib/tools/preferences.h index 661b39d7f..2824ebf2c 100644 --- a/src/lib/corelib/tools/preferences.h +++ b/src/lib/corelib/tools/preferences.h @@ -54,8 +54,8 @@ class Settings; class QBS_EXPORT Preferences { public: - explicit Preferences(Settings *settings, const QString &profileName = QString()); - Preferences(Settings *settings, const QVariantMap &profileContents); + explicit Preferences(Settings *settings, QString profileName = QString()); + Preferences(Settings *settings, QVariantMap profileContents); bool useColoredOutput() const; int jobs() const; diff --git a/src/lib/corelib/tools/settingscreator.cpp b/src/lib/corelib/tools/settingscreator.cpp index cddc3b93d..eaaf2802c 100644 --- a/src/lib/corelib/tools/settingscreator.cpp +++ b/src/lib/corelib/tools/settingscreator.cpp @@ -1,3 +1,5 @@ +#include <utility> + /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. @@ -56,8 +58,9 @@ static QSettings::Format format() } -SettingsCreator::SettingsCreator(const QString &baseDir) - : m_settingsBaseDir(baseDir), m_qbsVersion(Version::fromString(QLatin1String(QBS_VERSION))) +SettingsCreator::SettingsCreator(QString baseDir) + : m_settingsBaseDir(std::move(baseDir)) + , m_qbsVersion(Version::fromString(QLatin1String(QBS_VERSION))) { } diff --git a/src/lib/corelib/tools/settingscreator.h b/src/lib/corelib/tools/settingscreator.h index 6bc2a5cb7..39da80a7f 100644 --- a/src/lib/corelib/tools/settingscreator.h +++ b/src/lib/corelib/tools/settingscreator.h @@ -56,7 +56,7 @@ namespace Internal { class SettingsCreator { public: - SettingsCreator(const QString &baseDir); + SettingsCreator(QString baseDir); QSettings *getQSettings(); diff --git a/src/lib/corelib/tools/setupprojectparameters.cpp b/src/lib/corelib/tools/setupprojectparameters.cpp index 6b13570d7..6d817c8f3 100644 --- a/src/lib/corelib/tools/setupprojectparameters.cpp +++ b/src/lib/corelib/tools/setupprojectparameters.cpp @@ -109,6 +109,8 @@ SetupProjectParameters::SetupProjectParameters(const SetupProjectParameters &oth { } +SetupProjectParameters::SetupProjectParameters(SetupProjectParameters &&other) Q_DECL_NOEXCEPT = default; + SetupProjectParameters::~SetupProjectParameters() { } @@ -119,6 +121,8 @@ SetupProjectParameters &SetupProjectParameters::operator=(const SetupProjectPara return *this; } +SetupProjectParameters &SetupProjectParameters::operator=(SetupProjectParameters &&other) Q_DECL_NOEXCEPT = default; + /*! * \brief Returns the name of the top-level profile for building the project. */ diff --git a/src/lib/corelib/tools/setupprojectparameters.h b/src/lib/corelib/tools/setupprojectparameters.h index c462ca212..cf3b200cb 100644 --- a/src/lib/corelib/tools/setupprojectparameters.h +++ b/src/lib/corelib/tools/setupprojectparameters.h @@ -65,9 +65,11 @@ class QBS_EXPORT SetupProjectParameters public: SetupProjectParameters(); SetupProjectParameters(const SetupProjectParameters &other); + SetupProjectParameters(SetupProjectParameters &&other) Q_DECL_NOEXCEPT; ~SetupProjectParameters(); SetupProjectParameters &operator=(const SetupProjectParameters &other); + SetupProjectParameters &operator=(SetupProjectParameters &&other) Q_DECL_NOEXCEPT; QString topLevelProfile() const; void setTopLevelProfile(const QString &profile); |