diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2020-08-21 10:00:25 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2020-08-21 15:03:10 +0000 |
commit | 450ccbdf8b9981d91980fd8917f428949129559d (patch) | |
tree | 623f64a2d0d4cd3ff22907733d4e56792108ee9e /src | |
parent | 173763e292a96f3657f5b4e18bcf60a00b459f47 (diff) |
C++17: Simplify some templates
Change-Id: I6e0eaf625a1d90b4be97e4a6c352b4541f174413
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/corelib/language/scriptengine.h | 8 | ||||
-rw-r--r-- | src/lib/corelib/tools/persistence.h | 12 | ||||
-rw-r--r-- | src/lib/corelib/tools/set.h | 4 |
3 files changed, 12 insertions, 12 deletions
diff --git a/src/lib/corelib/language/scriptengine.h b/src/lib/corelib/language/scriptengine.h index 24e133dff..4f096376e 100644 --- a/src/lib/corelib/language/scriptengine.h +++ b/src/lib/corelib/language/scriptengine.h @@ -231,10 +231,10 @@ public: using QScriptEngine::newFunction; template <typename T, typename E, - typename = std::enable_if_t<std::is_pointer<T>::value>, - typename = std::enable_if_t<std::is_pointer<E>::value>, - typename = std::enable_if_t<std::is_base_of< - QScriptEngine, std::remove_pointer_t<E>>::value> + typename = std::enable_if_t<std::is_pointer_v<T>>, + typename = std::enable_if_t<std::is_pointer_v<E>>, + typename = std::enable_if_t<std::is_base_of_v< + QScriptEngine, std::remove_pointer_t<E>>> > QScriptValue newFunction(QScriptValue (*signature)(QScriptContext *, E, T), T arg) { return QScriptEngine::newFunction( reinterpret_cast<FunctionWithArgSignature>(signature), diff --git a/src/lib/corelib/tools/persistence.h b/src/lib/corelib/tools/persistence.h index f97604b42..b0fed9f68 100644 --- a/src/lib/corelib/tools/persistence.h +++ b/src/lib/corelib/tools/persistence.h @@ -340,8 +340,8 @@ struct PPHelper /***** Specializations of Helper class *****/ template<typename T> -struct PPHelper<T, std::enable_if_t<std::is_member_function_pointer< - decltype(&T::template completeSerializationOp<PersistentPool::Load>)>::value>> +struct PPHelper<T, std::enable_if_t<std::is_member_function_pointer_v< + decltype(&T::template completeSerializationOp<PersistentPool::Load>)>>> { static void store(const T &value, PersistentPool *pool) { @@ -353,7 +353,7 @@ struct PPHelper<T, std::enable_if_t<std::is_member_function_pointer< } }; -template<typename T> struct PPHelper<T, std::enable_if_t<std::is_integral<T>::value>> +template<typename T> struct PPHelper<T, std::enable_if_t<std::is_integral_v<T>>> { static void store(const T &value, PersistentPool *pool) { pool->m_stream << value; } static void load(T &value, PersistentPool *pool) { pool->m_stream >> value; } @@ -370,7 +370,7 @@ template<> struct PPHelper<long> } }; -template<typename T> struct PPHelper<T, std::enable_if_t<std::is_enum<T>::value>> +template<typename T> struct PPHelper<T, std::enable_if_t<std::is_enum_v<T>>> { using U = std::underlying_type_t<T>; static void store(const T &value, PersistentPool *pool) @@ -413,8 +413,8 @@ template<typename T> struct PPHelper<T *> static void load(T* &value, PersistentPool *pool) { value = pool->idLoad<T>(); } }; -template<typename T> struct PPHelper<T, std::enable_if_t<std::is_same<T, QString>::value - || std::is_same<T, QStringList>::value || std::is_same<T, QProcessEnvironment>::value>> +template<typename T> struct PPHelper<T, std::enable_if_t<std::is_same_v<T, QString> + || std::is_same_v<T, QStringList> || std::is_same_v<T, QProcessEnvironment>>> { static void store(const T &v, PersistentPool *pool) { pool->idStoreValue(v); } static void load(T &v, PersistentPool *pool) { v = pool->idLoadValue<T>(); } diff --git a/src/lib/corelib/tools/set.h b/src/lib/corelib/tools/set.h index d2af77d73..75db0528b 100644 --- a/src/lib/corelib/tools/set.h +++ b/src/lib/corelib/tools/set.h @@ -349,8 +349,8 @@ typename Set<T>::iterator Set<T>::asMutableIterator(typename Set<T>::const_itera template<typename T> template<typename U> Set<T> Set<T>::filtered(const Set<U> &s) { - static_assert(std::is_pointer<T>::value, "Set::filtered() assumes pointer types"); - static_assert(std::is_pointer<U>::value, "Set::filtered() assumes pointer types"); + static_assert(std::is_pointer_v<T>, "Set::filtered() assumes pointer types"); + static_assert(std::is_pointer_v<U>, "Set::filtered() assumes pointer types"); Set<T> filteredSet; for (auto &u : s) { if (hasDynamicType<std::remove_pointer_t<T>>(u)) |