From 0af3d579805006ca1f390bab63fdaad658be69ee Mon Sep 17 00:00:00 2001 From: Fabian Kosmale Date: Sat, 5 Feb 2022 11:02:21 +0100 Subject: [PATCH] qmetatype: Remove left-over module association code Qt 6's metatype does no longer care whether the type is from Core, GUI or a user metatype. Change-Id: I4f41d44a61a9839f58b957219c2404512630587a Reviewed-by: Lars Knoll Reviewed-by: Qt CI Bot --- src/corelib/kernel/qmetatype.cpp | 6 ---- src/corelib/kernel/qmetatype_p.h | 61 -------------------------------- src/gui/kernel/qguivariant.cpp | 6 ---- 3 files changed, 73 deletions(-) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 954878f6db..ec9f84c6e5 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -100,12 +100,6 @@ QT_BEGIN_NAMESPACE QT_IMPL_METATYPE_EXTERN_TAGGED(QtMetaTypePrivate::QPairVariantInterfaceImpl, QPairVariantInterfaceImpl) namespace { -struct DefinedTypesFilter { - template - struct Acceptor { - static const bool IsAccepted = QtMetaTypePrivate::TypeDefinition::IsAvailable && QModulesPrivate::QTypeModuleInfo::IsCore; - }; -}; struct QMetaTypeCustomRegistry { diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index d8119135c8..0f1bd5d705 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -56,67 +56,6 @@ QT_BEGIN_NAMESPACE -namespace QModulesPrivate { -enum Names { Core, Gui, Widgets, Unknown, ModulesCount /* ModulesCount has to be at the end */ }; - -template -class QTypeModuleInfo -{ -public: - enum Module : bool { - IsCore = false, - IsWidget = false, - IsGui = false, - IsUnknown = true - }; -}; - -#define QT_ASSIGN_TYPE_TO_MODULE(TYPE, MODULE) \ -template<> \ -class QTypeModuleInfo \ -{ \ -public: \ - enum Module : bool { \ - IsCore = (((MODULE) == (QModulesPrivate::Core))), \ - IsWidget = (((MODULE) == (QModulesPrivate::Widgets))), \ - IsGui = (((MODULE) == (QModulesPrivate::Gui))), \ - IsUnknown = !(IsCore || IsWidget || IsGui) \ - }; \ - static inline int module() { return MODULE; } \ - static_assert((IsUnknown && !(IsCore || IsWidget || IsGui)) \ - || (IsCore && !(IsUnknown || IsWidget || IsGui)) \ - || (IsWidget && !(IsUnknown || IsCore || IsGui)) \ - || (IsGui && !(IsUnknown || IsCore || IsWidget))); \ -}; - - -#define QT_DECLARE_CORE_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Core) -#define QT_DECLARE_GUI_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Gui) -#define QT_DECLARE_WIDGETS_MODULE_TYPES_ITER(TypeName, TypeId, Name) \ - QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Widgets) - -QT_WARNING_PUSH -#if defined(Q_CC_CLANG) && Q_CC_CLANG >= 900 -QT_WARNING_DISABLE_CLANG("-Wconstant-logical-operand") -#endif - -QT_FOR_EACH_STATIC_PRIMITIVE_TYPE(QT_DECLARE_CORE_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_PRIMITIVE_POINTER(QT_DECLARE_CORE_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_CORE_CLASS(QT_DECLARE_CORE_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_CORE_POINTER(QT_DECLARE_CORE_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_CORE_TEMPLATE(QT_DECLARE_CORE_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_GUI_CLASS(QT_DECLARE_GUI_MODULE_TYPES_ITER) -QT_FOR_EACH_STATIC_WIDGETS_CLASS(QT_DECLARE_WIDGETS_MODULE_TYPES_ITER) - -QT_WARNING_POP -} // namespace QModulesPrivate - -#undef QT_DECLARE_CORE_MODULE_TYPES_ITER -#undef QT_DECLARE_GUI_MODULE_TYPES_ITER -#undef QT_DECLARE_WIDGETS_MODULE_TYPES_ITER - #define QMETATYPE_CONVERTER(To, From, assign_and_return) \ case makePair(QMetaType::To, QMetaType::From): \ if (onlyCheck) \ diff --git a/src/gui/kernel/qguivariant.cpp b/src/gui/kernel/qguivariant.cpp index 1b455a57bf..180be177b9 100644 --- a/src/gui/kernel/qguivariant.cpp +++ b/src/gui/kernel/qguivariant.cpp @@ -92,12 +92,6 @@ QT_BEGIN_NAMESPACE namespace { -struct GuiTypesFilter { - template - struct Acceptor { - static const bool IsAccepted = QModulesPrivate::QTypeModuleInfo::IsGui && QtMetaTypePrivate::TypeDefinition::IsAvailable; - }; -}; static const struct : QMetaTypeModuleHelper {