Просмотр исходного кода

type_traits: avoid redefining type again and again

Michele Caini 2 лет назад
Родитель
Сommit
1ec2f3eeb8
1 измененных файлов с 2 добавлено и 6 удалено
  1. 2 6
      src/entt/core/type_traits.hpp

+ 2 - 6
src/entt/core/type_traits.hpp

@@ -257,12 +257,8 @@ template<typename...>
 struct type_list_unique;
 
 template<typename First, typename... Other, typename... Type>
-struct type_list_unique<type_list<First, Other...>, Type...> {
-    using type = std::conditional_t<
-        (std::is_same_v<First, Type> || ...),
-        typename type_list_unique<type_list<Other...>, Type...>::type,
-        typename type_list_unique<type_list<Other...>, Type..., First>::type>;
-};
+struct type_list_unique<type_list<First, Other...>, Type...>
+    : std::conditional_t<(std::is_same_v<First, Type> || ...), type_list_unique<type_list<Other...>, Type...>, type_list_unique<type_list<Other...>, Type..., First>> {};
 
 template<typename... Type>
 struct type_list_unique<type_list<>, Type...> {