qobjectdefs.h: optimize AreOldStyleArgs

Use a template alias instead of C++98-style inheritance.

Saves one template instantiation.

Change-Id: I95ee9cf1e5eac1db5fc8e05cd95f5e745134214d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit b37b820ce8801613139241036d15baa581a6a403)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Marc Mutz 2023-03-01 14:00:23 +01:00 committed by Qt Cherry-pick Bot
parent bb115cc21d
commit c773473d75

View File

@ -145,9 +145,9 @@ struct QMetaMethodReturnArgument
namespace QtPrivate {
namespace Invoke {
#if QT_VERSION <= QT_VERSION_CHECK(7, 0, 0)
template <typename... Args> struct AreOldStyleArgs :
std::disjunction<std::is_base_of<QGenericArgument, Args>...>
{};
template <typename... Args>
using AreOldStyleArgs = std::disjunction<std::is_base_of<QGenericArgument, Args>...>;
template <typename T, typename... Args> using IfNotOldStyleArgs =
std::enable_if_t<!AreOldStyleArgs<Args...>::value, T>;
#else