Bläddra i källkod

stl: introduce type_traits.hpp

skypjack 2 dagar sedan
förälder
incheckning
6054e22df2
48 ändrade filer med 59 tillägg och 45 borttagningar
  1. 1 0
      CMakeLists.txt
  2. 1 1
      src/entt/container/dense_map.hpp
  3. 1 1
      src/entt/container/dense_set.hpp
  4. 1 1
      src/entt/core/any.hpp
  5. 1 1
      src/entt/core/compressed_pair.hpp
  6. 1 1
      src/entt/core/concepts.hpp
  7. 1 1
      src/entt/core/enum.hpp
  8. 1 1
      src/entt/core/ident.hpp
  9. 1 1
      src/entt/core/iterator.hpp
  10. 1 1
      src/entt/core/memory.hpp
  11. 1 1
      src/entt/core/tuple.hpp
  12. 1 1
      src/entt/core/type_info.hpp
  13. 1 1
      src/entt/core/type_traits.hpp
  14. 1 1
      src/entt/core/utility.hpp
  15. 1 1
      src/entt/entity/component.hpp
  16. 1 1
      src/entt/entity/entity.hpp
  17. 1 1
      src/entt/entity/fwd.hpp
  18. 1 1
      src/entt/entity/group.hpp
  19. 1 1
      src/entt/entity/handle.hpp
  20. 1 1
      src/entt/entity/helper.hpp
  21. 1 1
      src/entt/entity/mixin.hpp
  22. 1 1
      src/entt/entity/organizer.hpp
  23. 1 1
      src/entt/entity/registry.hpp
  24. 1 1
      src/entt/entity/snapshot.hpp
  25. 1 1
      src/entt/entity/sparse_set.hpp
  26. 1 1
      src/entt/entity/storage.hpp
  27. 1 1
      src/entt/entity/view.hpp
  28. 1 0
      src/entt/entt.hpp
  29. 1 1
      src/entt/graph/adjacency_matrix.hpp
  30. 1 1
      src/entt/graph/flow.hpp
  31. 1 1
      src/entt/meta/container.hpp
  32. 1 1
      src/entt/meta/factory.hpp
  33. 1 1
      src/entt/meta/meta.hpp
  34. 1 1
      src/entt/meta/node.hpp
  35. 1 1
      src/entt/meta/pointer.hpp
  36. 1 1
      src/entt/meta/policy.hpp
  37. 1 1
      src/entt/meta/resolve.hpp
  38. 1 1
      src/entt/meta/type_traits.hpp
  39. 1 1
      src/entt/meta/utility.hpp
  40. 1 1
      src/entt/poly/poly.hpp
  41. 1 1
      src/entt/process/process.hpp
  42. 1 1
      src/entt/process/scheduler.hpp
  43. 1 1
      src/entt/resource/cache.hpp
  44. 1 1
      src/entt/signal/delegate.hpp
  45. 1 1
      src/entt/signal/dispatcher.hpp
  46. 1 1
      src/entt/signal/emitter.hpp
  47. 1 1
      src/entt/signal/sigh.hpp
  48. 12 0
      src/entt/stl/type_traits.hpp

+ 1 - 0
CMakeLists.txt

@@ -200,6 +200,7 @@ if(ENTT_INCLUDE_HEADERS)
         stl/iterator.hpp
         stl/iterator.hpp
         stl/memory.hpp
         stl/memory.hpp
         stl/tuple.hpp
         stl/tuple.hpp
+        stl/type_traits.hpp
         stl/vector.hpp
         stl/vector.hpp
         tools/davey.hpp
         tools/davey.hpp
         entt.hpp
         entt.hpp

+ 1 - 1
src/entt/container/dense_map.hpp

@@ -9,7 +9,6 @@
 #include <functional>
 #include <functional>
 #include <limits>
 #include <limits>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
@@ -19,6 +18,7 @@
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 1
src/entt/container/dense_set.hpp

@@ -9,7 +9,6 @@
 #include <functional>
 #include <functional>
 #include <limits>
 #include <limits>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
@@ -17,6 +16,7 @@
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 1
src/entt/core/any.hpp

@@ -4,10 +4,10 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "type_info.hpp"
 #include "type_info.hpp"
 #include "type_traits.hpp"
 #include "type_traits.hpp"

+ 1 - 1
src/entt/core/compressed_pair.hpp

@@ -3,9 +3,9 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "type_traits.hpp"
 #include "type_traits.hpp"
 
 

+ 1 - 1
src/entt/core/concepts.hpp

@@ -1,7 +1,7 @@
 #ifndef ENTT_CORE_CONCEPTS_HPP
 #ifndef ENTT_CORE_CONCEPTS_HPP
 #define ENTT_CORE_CONCEPTS_HPP
 #define ENTT_CORE_CONCEPTS_HPP
 
 
-#include <type_traits>
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/core/enum.hpp

@@ -2,7 +2,7 @@
 #define ENTT_CORE_ENUM_HPP
 #define ENTT_CORE_ENUM_HPP
 
 
 #include <concepts>
 #include <concepts>
-#include <type_traits>
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/core/ident.hpp

@@ -2,8 +2,8 @@
 #define ENTT_CORE_IDENT_HPP
 #define ENTT_CORE_IDENT_HPP
 
 
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "type_traits.hpp"
 #include "type_traits.hpp"
 
 

+ 1 - 1
src/entt/core/iterator.hpp

@@ -3,9 +3,9 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/core/memory.hpp

@@ -3,11 +3,11 @@
 
 
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../stl/memory.hpp"
 #include "../stl/memory.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/core/tuple.hpp

@@ -1,9 +1,9 @@
 #ifndef ENTT_CORE_TUPLE_HPP
 #ifndef ENTT_CORE_TUPLE_HPP
 #define ENTT_CORE_TUPLE_HPP
 #define ENTT_CORE_TUPLE_HPP
 
 
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/core/type_info.hpp

@@ -3,9 +3,9 @@
 
 
 #include <compare>
 #include <compare>
 #include <string_view>
 #include <string_view>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "hashed_string.hpp"
 #include "hashed_string.hpp"
 
 

+ 1 - 1
src/entt/core/type_traits.hpp

@@ -3,11 +3,11 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/core/utility.hpp

@@ -1,8 +1,8 @@
 #ifndef ENTT_CORE_UTILITY_HPP
 #ifndef ENTT_CORE_UTILITY_HPP
 #define ENTT_CORE_UTILITY_HPP
 #define ENTT_CORE_UTILITY_HPP
 
 
-#include <type_traits>
 #include <utility>
 #include <utility>
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/entity/component.hpp

@@ -3,9 +3,9 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/entity/entity.hpp

@@ -5,9 +5,9 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <cstdint>
 #include <cstdint>
-#include <type_traits>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/entity/fwd.hpp

@@ -3,11 +3,11 @@
 
 
 #include <cstdint>
 #include <cstdint>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
 #include "../core/fwd.hpp"
 #include "../core/fwd.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/entity/group.hpp

@@ -4,7 +4,6 @@
 #include <array>
 #include <array>
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/algorithm.hpp"
 #include "../core/algorithm.hpp"
@@ -14,6 +13,7 @@
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 1
src/entt/entity/handle.hpp

@@ -1,13 +1,13 @@
 #ifndef ENTT_ENTITY_HANDLE_HPP
 #ifndef ENTT_ENTITY_HANDLE_HPP
 #define ENTT_ENTITY_HANDLE_HPP
 #define ENTT_ENTITY_HANDLE_HPP
 
 
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/iterator.hpp"
 #include "../core/iterator.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 1
src/entt/entity/helper.hpp

@@ -2,10 +2,10 @@
 #define ENTT_ENTITY_HELPER_HPP
 #define ENTT_ENTITY_HELPER_HPP
 
 
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/fwd.hpp"
 #include "../core/fwd.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
+#include "../stl/type_traits.hpp"
 #include "component.hpp"
 #include "component.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "group.hpp"
 #include "group.hpp"

+ 1 - 1
src/entt/entity/mixin.hpp

@@ -2,13 +2,13 @@
 #define ENTT_ENTITY_MIXIN_HPP
 #define ENTT_ENTITY_MIXIN_HPP
 
 
 #include <concepts>
 #include <concepts>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/any.hpp"
 #include "../core/any.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../signal/sigh.hpp"
 #include "../signal/sigh.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

+ 1 - 1
src/entt/entity/organizer.hpp

@@ -2,13 +2,13 @@
 #define ENTT_ENTITY_ORGANIZER_HPP
 #define ENTT_ENTITY_ORGANIZER_HPP
 
 
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/utility.hpp"
 #include "../core/utility.hpp"
 #include "../graph/adjacency_matrix.hpp"
 #include "../graph/adjacency_matrix.hpp"
 #include "../graph/flow.hpp"
 #include "../graph/flow.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "helper.hpp"
 #include "helper.hpp"

+ 1 - 1
src/entt/entity/registry.hpp

@@ -8,7 +8,6 @@
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
@@ -23,6 +22,7 @@
 #include "../stl/functional.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "group.hpp"
 #include "group.hpp"

+ 1 - 1
src/entt/entity/snapshot.hpp

@@ -3,13 +3,13 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "view.hpp"
 #include "view.hpp"

+ 1 - 1
src/entt/entity/sparse_set.hpp

@@ -5,7 +5,6 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/algorithm.hpp"
 #include "../core/algorithm.hpp"
@@ -13,6 +12,7 @@
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

+ 1 - 1
src/entt/entity/storage.hpp

@@ -5,7 +5,6 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
@@ -15,6 +14,7 @@
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/memory.hpp"
 #include "../stl/memory.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "component.hpp"
 #include "component.hpp"
 #include "entity.hpp"
 #include "entity.hpp"

+ 1 - 1
src/entt/entity/view.hpp

@@ -4,7 +4,6 @@
 #include <array>
 #include <array>
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
@@ -12,6 +11,7 @@
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "entity.hpp"
 #include "entity.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 0
src/entt/entt.hpp

@@ -74,5 +74,6 @@ namespace entt::stl {}
 #include "stl/iterator.hpp"
 #include "stl/iterator.hpp"
 #include "stl/memory.hpp"
 #include "stl/memory.hpp"
 #include "stl/tuple.hpp"
 #include "stl/tuple.hpp"
+#include "stl/type_traits.hpp"
 #include "stl/vector.hpp"
 #include "stl/vector.hpp"
 // IWYU pragma: end_exports
 // IWYU pragma: end_exports

+ 1 - 1
src/entt/graph/adjacency_matrix.hpp

@@ -4,11 +4,11 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/iterator.hpp"
 #include "../core/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 

+ 1 - 1
src/entt/graph/flow.hpp

@@ -6,7 +6,6 @@
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
@@ -16,6 +15,7 @@
 #include "../core/iterator.hpp"
 #include "../core/iterator.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "adjacency_matrix.hpp"
 #include "adjacency_matrix.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

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

@@ -5,11 +5,11 @@
 
 
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "context.hpp"
 #include "context.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "meta.hpp"
 #include "meta.hpp"

+ 1 - 1
src/entt/meta/factory.hpp

@@ -6,7 +6,6 @@
 #include <cstdint>
 #include <cstdint>
 #include <functional>
 #include <functional>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
@@ -15,6 +14,7 @@
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../locator/locator.hpp"
 #include "../locator/locator.hpp"
+#include "../stl/type_traits.hpp"
 #include "context.hpp"
 #include "context.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "meta.hpp"
 #include "meta.hpp"

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

@@ -6,7 +6,6 @@
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
 #include <string_view>
 #include <string_view>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/any.hpp"
 #include "../core/any.hpp"
@@ -18,6 +17,7 @@
 #include "../core/utility.hpp"
 #include "../core/utility.hpp"
 #include "../locator/locator.hpp"
 #include "../locator/locator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
+#include "../stl/type_traits.hpp"
 #include "adl_pointer.hpp"
 #include "adl_pointer.hpp"
 #include "context.hpp"
 #include "context.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

+ 1 - 1
src/entt/meta/node.hpp

@@ -5,7 +5,6 @@
 #include <bit>
 #include <bit>
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/bit.hpp"
 #include "../core/bit.hpp"
@@ -15,6 +14,7 @@
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/utility.hpp"
 #include "../core/utility.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "context.hpp"
 #include "context.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

+ 1 - 1
src/entt/meta/pointer.hpp

@@ -4,7 +4,7 @@
 #define ENTT_META_POINTER_HPP
 #define ENTT_META_POINTER_HPP
 
 
 #include <memory>
 #include <memory>
-#include <type_traits>
+#include "../stl/type_traits.hpp"
 #include "type_traits.hpp"
 #include "type_traits.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/meta/policy.hpp

@@ -1,7 +1,7 @@
 #ifndef ENTT_META_POLICY_HPP
 #ifndef ENTT_META_POLICY_HPP
 #define ENTT_META_POLICY_HPP
 #define ENTT_META_POLICY_HPP
 
 
-#include <type_traits>
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/meta/resolve.hpp

@@ -1,9 +1,9 @@
 #ifndef ENTT_META_RESOLVE_HPP
 #ifndef ENTT_META_RESOLVE_HPP
 #define ENTT_META_RESOLVE_HPP
 #define ENTT_META_RESOLVE_HPP
 
 
-#include <type_traits>
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../locator/locator.hpp"
 #include "../locator/locator.hpp"
+#include "../stl/type_traits.hpp"
 #include "context.hpp"
 #include "context.hpp"
 #include "meta.hpp"
 #include "meta.hpp"
 #include "node.hpp"
 #include "node.hpp"

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

@@ -1,8 +1,8 @@
 #ifndef ENTT_META_TYPE_TRAITS_HPP
 #ifndef ENTT_META_TYPE_TRAITS_HPP
 #define ENTT_META_TYPE_TRAITS_HPP
 #define ENTT_META_TYPE_TRAITS_HPP
 
 
-#include <type_traits>
 #include <utility>
 #include <utility>
+#include "../stl/type_traits.hpp"
 
 
 namespace entt {
 namespace entt {
 
 

+ 1 - 1
src/entt/meta/utility.hpp

@@ -3,10 +3,10 @@
 
 
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../locator/locator.hpp"
 #include "../locator/locator.hpp"
+#include "../stl/type_traits.hpp"
 #include "meta.hpp"
 #include "meta.hpp"
 #include "node.hpp"
 #include "node.hpp"
 #include "policy.hpp"
 #include "policy.hpp"

+ 1 - 1
src/entt/poly/poly.hpp

@@ -4,13 +4,13 @@
 #include <concepts>
 #include <concepts>
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/any.hpp"
 #include "../core/any.hpp"
 #include "../core/concepts.hpp"
 #include "../core/concepts.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/process/process.hpp

@@ -3,10 +3,10 @@
 
 
 #include <cstdint>
 #include <cstdint>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../core/compressed_pair.hpp"
 #include "../core/compressed_pair.hpp"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/process/scheduler.hpp

@@ -3,10 +3,10 @@
 
 
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/compressed_pair.hpp"
 #include "../core/compressed_pair.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "process.hpp"
 #include "process.hpp"

+ 1 - 1
src/entt/resource/cache.hpp

@@ -6,7 +6,6 @@
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
 #include "../core/compressed_pair.hpp"
 #include "../core/compressed_pair.hpp"
@@ -15,6 +14,7 @@
 #include "../stl/functional.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/iterator.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "loader.hpp"
 #include "loader.hpp"
 #include "resource.hpp"
 #include "resource.hpp"

+ 1 - 1
src/entt/signal/delegate.hpp

@@ -3,11 +3,11 @@
 
 
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../config/config.h"
 #include "../config/config.h"
 #include "../core/type_traits.hpp"
 #include "../core/type_traits.hpp"
 #include "../stl/tuple.hpp"
 #include "../stl/tuple.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/signal/dispatcher.hpp

@@ -4,7 +4,6 @@
 #include <cstddef>
 #include <cstddef>
 #include <functional>
 #include <functional>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
 #include "../core/compressed_pair.hpp"
 #include "../core/compressed_pair.hpp"
@@ -12,6 +11,7 @@
 #include "../core/fwd.hpp"
 #include "../core/fwd.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/functional.hpp"
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 #include "sigh.hpp"
 #include "sigh.hpp"

+ 1 - 1
src/entt/signal/emitter.hpp

@@ -2,13 +2,13 @@
 #define ENTT_SIGNAL_EMITTER_HPP
 #define ENTT_SIGNAL_EMITTER_HPP
 
 
 #include <functional>
 #include <functional>
-#include <type_traits>
 #include <utility>
 #include <utility>
 #include "../container/dense_map.hpp"
 #include "../container/dense_map.hpp"
 #include "../core/compressed_pair.hpp"
 #include "../core/compressed_pair.hpp"
 #include "../core/fwd.hpp"
 #include "../core/fwd.hpp"
 #include "../core/type_info.hpp"
 #include "../core/type_info.hpp"
 #include "../stl/functional.hpp"
 #include "../stl/functional.hpp"
+#include "../stl/type_traits.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"
 
 
 namespace entt {
 namespace entt {

+ 1 - 1
src/entt/signal/sigh.hpp

@@ -3,8 +3,8 @@
 
 
 #include <cstddef>
 #include <cstddef>
 #include <memory>
 #include <memory>
-#include <type_traits>
 #include <utility>
 #include <utility>
+#include "../stl/type_traits.hpp"
 #include "../stl/vector.hpp"
 #include "../stl/vector.hpp"
 #include "delegate.hpp"
 #include "delegate.hpp"
 #include "fwd.hpp"
 #include "fwd.hpp"

+ 12 - 0
src/entt/stl/type_traits.hpp

@@ -0,0 +1,12 @@
+#ifndef ENTT_STL_TYPE_TRAITS_HPP
+#define ENTT_STL_TYPE_TRAITS_HPP
+
+#include <type_traits>
+
+/*! @cond ENTT_INTERNAL */
+namespace entt::stl {
+
+} // namespace entt::stl
+/*! @endcond */
+
+#endif