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

meta: remove unnecessary nested alias

Michele Caini 4 лет назад
Родитель
Сommit
5f50f776c6
2 измененных файлов с 3 добавлено и 5 удалено
  1. 1 4
      src/entt/meta/container.hpp
  2. 2 1
      src/entt/meta/type_traits.hpp

+ 1 - 4
src/entt/meta/container.hpp

@@ -24,10 +24,7 @@ namespace entt {
  * @tparam Trait Traits associated with the underlying container.
  */
 template<typename Container, template<typename> class... Trait>
-struct meta_container_traits: public Trait<Container>... {
-    /*! @brief Type of container. */
-    using type = Container;
-};
+struct meta_container_traits: public Trait<Container>... {};
 
 
 /**

+ 2 - 1
src/entt/meta/type_traits.hpp

@@ -3,6 +3,7 @@
 
 
 #include <type_traits>
+#include <utility>
 
 
 namespace entt {
@@ -43,7 +44,7 @@ struct is_key_only_meta_associative_container: std::true_type {};
 
 /*! @copydoc is_key_only_meta_associative_container */
 template<typename Type>
-struct is_key_only_meta_associative_container<Type, std::void_t<typename meta_associative_container_traits<Type>::type::mapped_type>>
+struct is_key_only_meta_associative_container<Type, std::void_t<decltype(meta_associative_container_traits<Type>::insert(std::declval<Type>(), {}, {}))>>
     : std::false_type
 {};