diff --git a/src/entt/meta/factory.hpp b/src/entt/meta/factory.hpp index 7af921257..bde807fd9 100644 --- a/src/entt/meta/factory.hpp +++ b/src/entt/meta/factory.hpp @@ -90,7 +90,7 @@ bool setter([[maybe_unused]] meta_handle handle, [[maybe_unused]] meta_any index bool accepted = false; if constexpr(!Const) { - if constexpr(std::is_function_v> || std::is_member_function_pointer_v) { + if constexpr(std::is_function_v>> || std::is_member_function_pointer_v) { using helper_type = meta_function_helper_t; using data_type = std::tuple_element_t, typename helper_type::args_type>; static_assert(std::is_invocable_v); @@ -164,7 +164,7 @@ meta_any getter([[maybe_unused]] meta_handle handle, [[maybe_unused]] meta_any i } }; - if constexpr(std::is_function_v> || std::is_member_function_pointer_v) { + if constexpr(std::is_function_v>> || std::is_member_function_pointer_v) { static_assert(std::is_invocable_v); auto * const clazz = meta_any{handle}.try_cast(); return clazz ? dispatch(std::invoke(Data, *clazz)) : meta_any{}; @@ -218,7 +218,7 @@ meta_any invoke([[maybe_unused]] meta_handle handle, meta_any *args, std::index_ return instance; }(args+Indexes, (args+Indexes)->try_cast>())...); - if constexpr(std::is_function_v>) { + if constexpr(std::is_function_v>>) { return (std::get(direct) && ...) ? dispatch(std::get(direct)...) : meta_any{}; } else { auto * const clazz = meta_any{handle}.try_cast();