diff options
-rw-r--r-- | src/concurrent/qtconcurrentfilter.h | 4 | ||||
-rw-r--r-- | src/concurrent/qtconcurrentfunctionwrappers.h | 19 | ||||
-rw-r--r-- | src/concurrent/qtconcurrentmap.h | 4 |
3 files changed, 10 insertions, 17 deletions
diff --git a/src/concurrent/qtconcurrentfilter.h b/src/concurrent/qtconcurrentfilter.h index dce4f35db69..2fdc8f9d0f4 100644 --- a/src/concurrent/qtconcurrentfilter.h +++ b/src/concurrent/qtconcurrentfilter.h @@ -333,7 +333,7 @@ QFuture<ResultType> filteredReduced(QThreadPool *pool, } template <typename Iterator, typename KeepFunctor, typename ReduceFunctor, - std::enable_if_t<QtPrivate::isIterator<Iterator>::value, int> = 0, + std::enable_if_t<QtPrivate::isIterator_v<Iterator>, int> = 0, typename ResultType = typename QtPrivate::ReduceResultTypeHelper<ReduceFunctor>::type, typename InitialValueType, std::enable_if_t<std::is_convertible_v<InitialValueType, ResultType>, int> = 0> @@ -673,7 +673,7 @@ ResultType blockingFilteredReduced(QThreadPool *pool, } template <typename Iterator, typename KeepFunctor, typename ReduceFunctor, - std::enable_if_t<QtPrivate::isIterator<Iterator>::value, int> = 0, + std::enable_if_t<QtPrivate::isIterator_v<Iterator>, int> = 0, typename ResultType = typename QtPrivate::ReduceResultTypeHelper<ReduceFunctor>::type, typename InitialValueType, std::enable_if_t<std::is_convertible_v<InitialValueType, ResultType>, int> = 0> diff --git a/src/concurrent/qtconcurrentfunctionwrappers.h b/src/concurrent/qtconcurrentfunctionwrappers.h index 08966115d6d..e9154070bc8 100644 --- a/src/concurrent/qtconcurrentfunctionwrappers.h +++ b/src/concurrent/qtconcurrentfunctionwrappers.h @@ -142,24 +142,17 @@ struct ReduceResultType<T(C::*)(U) noexcept> }; template<class T, class Enable = void> -struct hasCallOperator : std::false_type -{ -}; +inline constexpr bool hasCallOperator_v = false; template<class T> -struct hasCallOperator<T, std::void_t<decltype(&T::operator())>> : std::true_type -{ -}; +inline constexpr bool hasCallOperator_v<T, std::void_t<decltype(&T::operator())>> = true; template<class T, class Enable = void> -struct isIterator : std::false_type -{ -}; +inline constexpr bool isIterator_v = false; template<class T> -struct isIterator<T, std::void_t<typename std::iterator_traits<T>::value_type>> : std::true_type -{ -}; +inline constexpr bool isIterator_v<T, std::void_t<typename std::iterator_traits<T>::value_type>> = + true; template <class Callable, class Sequence> using isInvocable = std::is_invocable<Callable, typename std::decay_t<Sequence>::value_type>; @@ -180,7 +173,7 @@ struct ReduceResultTypeHelper<Callable, template <class Callable> struct ReduceResultTypeHelper<Callable, typename std::enable_if_t<!std::is_function_v<std::remove_pointer_t<std::decay_t<Callable>>> - && hasCallOperator<std::decay_t<Callable>>::value>> + && hasCallOperator_v<std::decay_t<Callable>>>> { using type = std::decay_t<typename QtPrivate::ArgResolver<Callable>::First>; }; diff --git a/src/concurrent/qtconcurrentmap.h b/src/concurrent/qtconcurrentmap.h index 3e20f8b4dce..64e9fe938c0 100644 --- a/src/concurrent/qtconcurrentmap.h +++ b/src/concurrent/qtconcurrentmap.h @@ -352,7 +352,7 @@ template <typename Iterator, typename MapFunctor, typename ReduceFunctor, typena typename InitialValueType> #else template<typename Iterator, typename MapFunctor, typename ReduceFunctor, - std::enable_if_t<QtPrivate::isIterator<Iterator>::value, int> = 0, + std::enable_if_t<QtPrivate::isIterator_v<Iterator>, int> = 0, typename ResultType = typename QtPrivate::ReduceResultTypeHelper<ReduceFunctor>::type, typename InitialValueType, std::enable_if_t<std::is_convertible_v<InitialValueType, ResultType>, int> = 0> @@ -739,7 +739,7 @@ template <typename Iterator, typename MapFunctor, typename ReduceFunctor, typena typename InitialValueType> #else template <typename Iterator, typename MapFunctor, typename ReduceFunctor, - std::enable_if_t<QtPrivate::isIterator<Iterator>::value, int> = 0, + std::enable_if_t<QtPrivate::isIterator_v<Iterator>, int> = 0, typename ResultType = typename QtPrivate::ReduceResultTypeHelper<ReduceFunctor>::type, typename InitialValueType, std::enable_if_t<std::is_convertible_v<InitialValueType, ResultType>, int> = 0> |