Parcourir la source

entity_like: move the concept to the file it belongs to, and fix it - see #1244

skypjack il y a 1 jour
Parent
commit
720dda4103
2 fichiers modifiés avec 9 ajouts et 18 suppressions
  1. 9 0
      src/entt/entity/entity.hpp
  2. 0 18
      src/entt/entity/fwd.hpp

+ 9 - 0
src/entt/entity/entity.hpp

@@ -60,6 +60,15 @@ struct entt_traits<std::uint64_t> {
 } // namespace internal
 /*! @endcond */
 
+/**
+ * @brief Specifies that a type is an entity-like type.
+ * @tparam Type Type to check.
+ */
+template<typename Type>
+concept entity_like = requires {
+    typename internal::entt_traits<Type>::value_type;
+};
+
 /**
  * @brief Common basic entity traits implementation.
  * @tparam Traits Actual entity traits to use.

+ 0 - 18
src/entt/entity/fwd.hpp

@@ -11,24 +11,6 @@
 
 namespace entt {
 
-/*! @cond ENTT_INTERNAL */
-namespace internal {
-
-template<typename>
-struct entt_traits;
-
-} // namespace internal
-/*! @endcond */
-
-/**
- * @brief Specifies that a type is an entity-like type.
- * @tparam Type Type to check.
- */
-template<typename Type>
-concept entity_like = requires {
-    typename internal::entt_traits<Type>;
-};
-
 /*! @brief Default entity identifier. */
 enum class entity : id_type {};