diff --git a/develop/singles/headers/meta.hpp/meta_all.hpp b/develop/singles/headers/meta.hpp/meta_all.hpp index 5db107e..0405f2e 100644 --- a/develop/singles/headers/meta.hpp/meta_all.hpp +++ b/develop/singles/headers/meta.hpp/meta_all.hpp @@ -1348,6 +1348,25 @@ namespace meta_hpp::detail } } +namespace meta_hpp::detail +{ + enum class type_kind : std::uint32_t { + array_, + class_, + constructor_, + destructor_, + enum_, + function_, + member_, + method_, + nullptr_, + number_, + pointer_, + reference_, + void_, + }; +} + namespace meta_hpp::detail { template < typename T > @@ -1396,42 +1415,6 @@ namespace meta_hpp::detail concept non_function_pointer_kind = std::is_pointer_v && !std::is_function_v>; } -namespace meta_hpp::detail -{ - enum class type_kind : std::uint32_t { - array_, - class_, - constructor_, - destructor_, - enum_, - function_, - member_, - method_, - nullptr_, - number_, - pointer_, - reference_, - void_, - }; - - template < typename T > - constexpr type_kind make_type_kind() noexcept { - // clang-format off - if constexpr ( array_kind ) { return type_kind::array_; } - if constexpr ( class_kind ) { return type_kind::class_; } - if constexpr ( enum_kind ) { return type_kind::enum_; } - if constexpr ( function_kind ) { return type_kind::function_; } - if constexpr ( member_pointer_kind ) { return type_kind::member_; } - if constexpr ( method_pointer_kind ) { return type_kind::method_; } - if constexpr ( nullptr_kind ) { return type_kind::nullptr_; } - if constexpr ( number_kind ) { return type_kind::number_; } - if constexpr ( pointer_kind ) { return type_kind::pointer_; } - if constexpr ( reference_kind ) { return type_kind::reference_; } - if constexpr ( void_kind ) { return type_kind::void_; } - // clang-format on - } -} - namespace meta_hpp::detail { template < typename... Types > diff --git a/headers/meta.hpp/meta_base/type_kinds.hpp b/headers/meta.hpp/meta_base/type_kinds.hpp index 02899f7..ab187d9 100644 --- a/headers/meta.hpp/meta_base/type_kinds.hpp +++ b/headers/meta.hpp/meta_base/type_kinds.hpp @@ -8,6 +8,25 @@ #include "base.hpp" +namespace meta_hpp::detail +{ + enum class type_kind : std::uint32_t { + array_, + class_, + constructor_, + destructor_, + enum_, + function_, + member_, + method_, + nullptr_, + number_, + pointer_, + reference_, + void_, + }; +} + namespace meta_hpp::detail { template < typename T > @@ -55,39 +74,3 @@ namespace meta_hpp::detail template < typename T > concept non_function_pointer_kind = std::is_pointer_v && !std::is_function_v>; } - -namespace meta_hpp::detail -{ - enum class type_kind : std::uint32_t { - array_, - class_, - constructor_, - destructor_, - enum_, - function_, - member_, - method_, - nullptr_, - number_, - pointer_, - reference_, - void_, - }; - - template < typename T > - constexpr type_kind make_type_kind() noexcept { - // clang-format off - if constexpr ( array_kind ) { return type_kind::array_; } - if constexpr ( class_kind ) { return type_kind::class_; } - if constexpr ( enum_kind ) { return type_kind::enum_; } - if constexpr ( function_kind ) { return type_kind::function_; } - if constexpr ( member_pointer_kind ) { return type_kind::member_; } - if constexpr ( method_pointer_kind ) { return type_kind::method_; } - if constexpr ( nullptr_kind ) { return type_kind::nullptr_; } - if constexpr ( number_kind ) { return type_kind::number_; } - if constexpr ( pointer_kind ) { return type_kind::pointer_; } - if constexpr ( reference_kind ) { return type_kind::reference_; } - if constexpr ( void_kind ) { return type_kind::void_; } - // clang-format on - } -}