@@ -104,7 +104,7 @@ class DataAllocator
104104 template <typename T, typename ... Args>
105105 decltype (auto ) make(const Output& spec, Args... args)
106106 {
107- if constexpr (is_specialization <T, UninitializedVector>::value ) {
107+ if constexpr (is_specialization_v <T, UninitializedVector>) {
108108 // plain buffer as polymorphic spectator std::vector, which does not run constructors / destructors
109109 using ValueType = typename T::value_type;
110110 auto & timingInfo = mRegistry ->get <TimingInfo>();
@@ -116,7 +116,7 @@ class DataAllocator
116116 return context.add <MessageContext::VectorObject<ValueType, MessageContext::ContainerRefObject<std::vector<ValueType, o2::pmr::NoConstructAllocator<ValueType>>>>>(
117117 std::move (headerMessage), channel, 0 , std::forward<Args>(args)...)
118118 .get ();
119- } else if constexpr (is_specialization <T, std::vector>::value && has_messageable_value_type<T>::value) {
119+ } else if constexpr (is_specialization_v <T, std::vector> && has_messageable_value_type<T>::value) {
120120 // this catches all std::vector objects with messageable value type before checking if is also
121121 // has a root dictionary, so non-serialized transmission is preferred
122122 using ValueType = typename T::value_type;
@@ -160,9 +160,9 @@ class DataAllocator
160160 constexpr bool isBoostSerializable = framework::is_boost_serializable<T>::value;
161161 if constexpr (is_messageable<T>::value == true ) {
162162 return *reinterpret_cast <T*>(newChunk (spec, sizeof (T)).data ());
163- } else if constexpr (is_specialization <T, BoostSerialized>::value == true ) {
163+ } else if constexpr (is_specialization_v <T, BoostSerialized> == true ) {
164164 return make_boost<typename T::wrapped_type>(std::move (spec));
165- } else if constexpr (is_specialization <T, BoostSerialized>::value == false && isBoostSerializable == true && std::is_base_of<std::string, T>::value == false ) {
165+ } else if constexpr (is_specialization_v <T, BoostSerialized> == false && isBoostSerializable == true && std::is_base_of<std::string, T>::value == false ) {
166166 return make_boost<T>(std::move (spec));
167167 } else {
168168 static_assert (always_static_assert_v<T>, ERROR_STRING );
@@ -187,7 +187,7 @@ class DataAllocator
187187 create (spec, &writer, schema);
188188 return writer;
189189 }
190- } else if constexpr (is_specialization <T, BoostSerialized>::value ) {
190+ } else if constexpr (is_specialization_v <T, BoostSerialized>) {
191191 return make_boost<FirstArg>(std::move (spec));
192192 } else {
193193 static_assert (always_static_assert_v<T>, ERROR_STRING );
@@ -227,7 +227,7 @@ class DataAllocator
227227 // / Adopt a raw buffer in the framework and serialize / send
228228 // / it to the consumers of @a spec once done.
229229 template <typename T>
230- typename std::enable_if<is_specialization <T, BoostSerialized>::value == true , void >::type
230+ typename std::enable_if<is_specialization_v <T, BoostSerialized> == true , void >::type
231231 adopt (const Output& spec, T* ptr)
232232 {
233233 adopt_boost (std::move (spec), std::move (ptr ()));
@@ -289,7 +289,7 @@ class DataAllocator
289289 memcpy (payloadMessage->GetData (), &object, sizeof (T));
290290
291291 serializationType = o2::header::gSerializationMethodNone ;
292- } else if constexpr (is_specialization <T, std::vector>::value == true ||
292+ } else if constexpr (is_specialization_v <T, std::vector> == true ||
293293 (gsl::details::is_span<T>::value && has_messageable_value_type<T>::value)) {
294294 using ElementType = typename std::remove_pointer<typename T::value_type>::type;
295295 if constexpr (is_messageable<ElementType>::value) {
@@ -324,10 +324,10 @@ class DataAllocator
324324 " \n - pointers to those"
325325 " \n - types with ROOT dictionary and implementing ROOT ClassDef interface" );
326326 }
327- } else if constexpr (has_root_dictionary<T>::value == true || is_specialization <T, ROOTSerialized>::value == true ) {
327+ } else if constexpr (has_root_dictionary<T>::value == true || is_specialization_v <T, ROOTSerialized> == true ) {
328328 // Serialize a snapshot of an object with root dictionary
329329 payloadMessage = proxy.createMessage ();
330- if constexpr (is_specialization <T, ROOTSerialized>::value == true ) {
330+ if constexpr (is_specialization_v <T, ROOTSerialized> == true ) {
331331 // Explicitely ROOT serialize a snapshot of object.
332332 // An object wrapped into type `ROOTSerialized` is explicitely marked to be ROOT serialized
333333 // and is expected to have a ROOT dictionary. Availability can not be checked at compile time
0 commit comments