From cfaa8cb70766dd6f43a95f355e4eb123b66e98b6 Mon Sep 17 00:00:00 2001 From: Ivan Komissarov Date: Sun, 5 Jan 2020 14:46:45 +0300 Subject: generators: make VersionInfo non-virtual There is no need to check if marketing version is a "known" version since all generators are created only based on the list on known versions, i.e. there is no way how "unknown" version object can be created If this will be required in the future, it's better to use templates or overloaded functions instead of virtual functions here Change-Id: I85367c0722dc8561b2a937d4b496677af8f901f3 Reviewed-by: Christian Kandeler --- src/lib/corelib/generators/generatorversioninfo.h | 3 +-- src/plugins/generator/iarew/iarewversioninfo.cpp | 12 ------------ src/plugins/generator/iarew/iarewversioninfo.h | 2 -- src/plugins/generator/keiluv/keiluvversioninfo.cpp | 12 ------------ src/plugins/generator/keiluv/keiluvversioninfo.h | 2 -- 5 files changed, 1 insertion(+), 30 deletions(-) (limited to 'src') diff --git a/src/lib/corelib/generators/generatorversioninfo.h b/src/lib/corelib/generators/generatorversioninfo.h index 65bfcf685..21d515411 100644 --- a/src/lib/corelib/generators/generatorversioninfo.h +++ b/src/lib/corelib/generators/generatorversioninfo.h @@ -55,7 +55,6 @@ class QBS_EXPORT VersionInfo public: VersionInfo(const Version &version, const std::set &archs); - virtual ~VersionInfo() = default; bool operator<(const VersionInfo &other) const; bool operator==(const VersionInfo &other) const; @@ -63,7 +62,7 @@ public: Version version() const; bool containsArchitecture(utils::Architecture arch) const; - virtual int marketingVersion() const; + int marketingVersion() const; private: Version m_version; diff --git a/src/plugins/generator/iarew/iarewversioninfo.cpp b/src/plugins/generator/iarew/iarewversioninfo.cpp index 41a788e98..d4df7a907 100644 --- a/src/plugins/generator/iarew/iarewversioninfo.cpp +++ b/src/plugins/generator/iarew/iarewversioninfo.cpp @@ -62,16 +62,4 @@ std::set IarewVersionInfo::knownVersions() return known; } -int IarewVersionInfo::marketingVersion() const -{ - const auto mv = gen::VersionInfo::marketingVersion(); - for (const IarewVersionInfo &known : knownVersions()) { - if (known.version().majorVersion() == mv) - return mv; - } - qWarning() << QStringLiteral("Unrecognized IAR EW version: ") - << version().toString(); - return 0; -} - } // namespace qbs diff --git a/src/plugins/generator/iarew/iarewversioninfo.h b/src/plugins/generator/iarew/iarewversioninfo.h index 4fd1b1fbc..d55e8196a 100644 --- a/src/plugins/generator/iarew/iarewversioninfo.h +++ b/src/plugins/generator/iarew/iarewversioninfo.h @@ -51,8 +51,6 @@ public: IarewVersionInfo(const Version &version, const std::set &archs); - int marketingVersion() const final; - static std::set knownVersions(); }; diff --git a/src/plugins/generator/keiluv/keiluvversioninfo.cpp b/src/plugins/generator/keiluv/keiluvversioninfo.cpp index 973d0a420..329bb5dd7 100644 --- a/src/plugins/generator/keiluv/keiluvversioninfo.cpp +++ b/src/plugins/generator/keiluv/keiluvversioninfo.cpp @@ -61,16 +61,4 @@ std::set KeiluvVersionInfo::knownVersions() return known; } -int KeiluvVersionInfo::marketingVersion() const -{ - const auto mv = gen::VersionInfo::marketingVersion(); - for (const KeiluvVersionInfo &known : knownVersions()) { - if (known.version().majorVersion() == mv) - return mv; - } - qWarning() << QStringLiteral("Unrecognized KEIL UV version: ") - << version().toString(); - return 0; -} - } // namespace qbs diff --git a/src/plugins/generator/keiluv/keiluvversioninfo.h b/src/plugins/generator/keiluv/keiluvversioninfo.h index a64513492..02a1af9e9 100644 --- a/src/plugins/generator/keiluv/keiluvversioninfo.h +++ b/src/plugins/generator/keiluv/keiluvversioninfo.h @@ -51,8 +51,6 @@ public: KeiluvVersionInfo(const Version &version, const std::set &archs); - int marketingVersion() const final; - static std::set knownVersions(); }; -- cgit v1.2.3