forked from qt-creator/qt-creator
QmlDesigner: Fix warning
Use a static constexpr variable instead of a global variable. skipModules is only used in the function. Change-Id: Icb4ad4663ce84f8aaa0c286acdc997dcd2e67aa0 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -675,39 +675,47 @@ void TextToModelMerger::setupImports(const Document::Ptr &doc,
|
||||
|
||||
namespace {
|
||||
|
||||
class StartsWith : public QStringView
|
||||
#ifndef QDS_USE_PROJECTSTORAGE
|
||||
bool skipModule(QStringView moduleName)
|
||||
{
|
||||
public:
|
||||
class StartsWith : public QStringView
|
||||
{
|
||||
public:
|
||||
using QStringView::QStringView;
|
||||
|
||||
bool operator()(QStringView moduleName) const { return moduleName.startsWith(*this); }
|
||||
};
|
||||
};
|
||||
|
||||
class EndsWith : public QStringView
|
||||
{
|
||||
public:
|
||||
class EndsWith : public QStringView
|
||||
{
|
||||
public:
|
||||
using QStringView::QStringView;
|
||||
bool operator()(QStringView moduleName) const { return moduleName.endsWith(*this); }
|
||||
};
|
||||
|
||||
class StartsAndEndsWith : public std::pair<QStringView, QStringView>
|
||||
{
|
||||
public:
|
||||
bool operator()(QStringView moduleName) const { return moduleName.endsWith(*this); }
|
||||
};
|
||||
|
||||
class StartsAndEndsWith : public std::pair<QStringView, QStringView>
|
||||
{
|
||||
public:
|
||||
using Base = std::pair<QStringView, QStringView>;
|
||||
using Base::Base;
|
||||
|
||||
bool operator()(QStringView moduleName) const
|
||||
{
|
||||
return moduleName.startsWith(first) && moduleName.endsWith(second);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
class Equals : public QStringView
|
||||
{
|
||||
public:
|
||||
class Equals : public QStringView
|
||||
{
|
||||
public:
|
||||
using QStringView::QStringView;
|
||||
bool operator()(QStringView moduleName) const { return moduleName == *this; }
|
||||
};
|
||||
|
||||
constexpr auto skipModules = std::make_tuple(EndsWith(u".impl"),
|
||||
bool operator()(QStringView moduleName) const { return moduleName == *this; }
|
||||
};
|
||||
|
||||
static constexpr auto skipModules = std::make_tuple(
|
||||
EndsWith(u".impl"),
|
||||
StartsWith(u"QML"),
|
||||
StartsWith(u"QtQml"),
|
||||
StartsAndEndsWith(u"QtQuick", u".PrivateWidgets"),
|
||||
@@ -758,8 +766,7 @@ constexpr auto skipModules = std::make_tuple(EndsWith(u".impl"),
|
||||
StartsWith(u"QtQuick.Templates"),
|
||||
StartsWith(u"QtQuick.VirtualKeyboard"),
|
||||
StartsWith(u"QtQuick.tooling"),
|
||||
StartsWith(
|
||||
u"QtQuick3D MateriablacklistImportslEditor"),
|
||||
StartsWith(u"QtQuick3D MateriablacklistImportslEditor"),
|
||||
StartsWith(u"QtQuick3D.ParticleEffects"),
|
||||
StartsWith(u"QtRemoteObjects"),
|
||||
StartsWith(u"QtRemoveObjects"),
|
||||
@@ -772,9 +779,6 @@ constexpr auto skipModules = std::make_tuple(EndsWith(u".impl"),
|
||||
StartsWith(u"QtWebSockets"),
|
||||
StartsWith(u"QtWebView"));
|
||||
|
||||
#ifndef QDS_USE_PROJECTSTORAGE
|
||||
bool skipModule(QStringView moduleName)
|
||||
{
|
||||
return std::apply([=](const auto &...skipModule) { return (skipModule(moduleName) || ...); },
|
||||
skipModules);
|
||||
}
|
||||
|
Reference in New Issue
Block a user