meta: removed meta_type::is_function_pointer (no alternative provided)

This commit is contained in:
Michele Caini
2021-08-04 16:06:58 +02:00
parent 0332188b6b
commit 3adac90573
3 changed files with 0 additions and 14 deletions

View File

@@ -1155,15 +1155,6 @@ public:
return (node->traits & internal::meta_traits::IS_POINTER);
}
/**
* @brief Checks whether a type refers to a function pointer or not.
* @return True if the underlying type is a function pointer, false
* otherwise.
*/
[[nodiscard]] bool is_function_pointer() const ENTT_NOEXCEPT {
return (node->traits & internal::meta_traits::IS_FUNCTION_POINTER);
}
/**
* @brief Checks whether a type refers to a pointer to data member or not.
* @return True if the underlying type is a pointer to data member, false

View File

@@ -41,7 +41,6 @@ enum meta_traits: std::uint32_t {
IS_UNION = 0x0040,
IS_CLASS = 0x0080,
IS_POINTER = 0x0100,
IS_FUNCTION_POINTER = 0x0200,
IS_MEMBER_OBJECT_POINTER = 0x0400,
IS_MEMBER_FUNCTION_POINTER = 0x0800,
IS_META_POINTER_LIKE = 0x1000,
@@ -191,7 +190,6 @@ public:
| (std::is_union_v<Type> ? internal::meta_traits::IS_UNION : internal::meta_traits::IS_NONE)
| (std::is_class_v<Type> ? internal::meta_traits::IS_CLASS : internal::meta_traits::IS_NONE)
| (std::is_pointer_v<Type> ? internal::meta_traits::IS_POINTER : internal::meta_traits::IS_NONE)
| (std::is_pointer_v<Type> && std::is_function_v<std::remove_pointer_t<Type>> ? internal::meta_traits::IS_FUNCTION_POINTER : internal::meta_traits::IS_NONE)
| (std::is_member_object_pointer_v<Type> ? internal::meta_traits::IS_MEMBER_OBJECT_POINTER : internal::meta_traits::IS_NONE)
| (std::is_member_function_pointer_v<Type> ? internal::meta_traits::IS_MEMBER_FUNCTION_POINTER : internal::meta_traits::IS_NONE)
| (is_meta_pointer_like_v<Type> ? internal::meta_traits::IS_META_POINTER_LIKE : internal::meta_traits::IS_NONE)

View File

@@ -238,9 +238,6 @@ TEST_F(MetaType, Traits) {
ASSERT_TRUE(entt::resolve<int *>().is_pointer());
ASSERT_FALSE(entt::resolve<int>().is_pointer());
ASSERT_TRUE(entt::resolve<decltype(&clazz_t::func)>().is_function_pointer());
ASSERT_FALSE(entt::resolve<decltype(&clazz_t::member)>().is_function_pointer());
ASSERT_TRUE(entt::resolve<decltype(&clazz_t::value)>().is_member_object_pointer());
ASSERT_FALSE(entt::resolve<decltype(&clazz_t::member)>().is_member_object_pointer());