From fc6bda5cd8aca8d0b53e4d5f410be72e83dc8c72 Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Tue, 7 Sep 2021 08:54:34 +0200 Subject: [PATCH] meta: turned an useless function into a constexpr value --- src/entt/meta/container.hpp | 16 +++++++--------- src/entt/meta/meta.hpp | 4 ++-- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/entt/meta/container.hpp b/src/entt/meta/container.hpp index ef985a1d4..f360bacce 100644 --- a/src/entt/meta/container.hpp +++ b/src/entt/meta/container.hpp @@ -125,9 +125,7 @@ struct basic_meta_associative_container_traits { using iterator = meta_associative_container::iterator; using size_type = std::size_t; - [[nodiscard]] static constexpr bool key_only() ENTT_NOEXCEPT { - return is_key_only_meta_associative_container::value; - } + static constexpr auto key_only = is_key_only_meta_associative_container::value; [[nodiscard]] static size_type size(const any &container) ENTT_NOEXCEPT { return any_cast(container).size(); @@ -144,18 +142,18 @@ struct basic_meta_associative_container_traits { [[nodiscard]] static iterator begin(any &container) { if(auto * const cont = any_cast(&container); cont) { - return iterator{std::integral_constant{}, cont->begin()}; + return iterator{std::integral_constant{}, cont->begin()}; } - return iterator{std::integral_constant{}, std::begin(any_cast(container))}; + return iterator{std::integral_constant{}, std::begin(any_cast(container))}; } [[nodiscard]] static iterator end(any &container) { if(auto * const cont = any_cast(&container); cont) { - return iterator{std::integral_constant{}, cont->end()}; + return iterator{std::integral_constant{}, cont->end()}; } - return iterator{std::integral_constant{}, std::end(any_cast(container))}; + return iterator{std::integral_constant{}, std::end(any_cast(container))}; } [[nodiscard]] static bool insert(any &container, meta_any &key, [[maybe_unused]] meta_any &value) { @@ -183,10 +181,10 @@ struct basic_meta_associative_container_traits { [[nodiscard]] static iterator find(any &container, meta_any &key) { if(key.allow_cast()) { if(auto * const cont = any_cast(&container); cont) { - return iterator{std::integral_constant{}, cont->find(key.cast())}; + return iterator{std::integral_constant{}, cont->find(key.cast())}; } - return iterator{std::integral_constant{}, any_cast(container).find(key.cast())}; + return iterator{std::integral_constant{}, any_cast(container).find(key.cast())}; } return {}; diff --git a/src/entt/meta/meta.hpp b/src/entt/meta/meta.hpp index 351938f1b..7ff979876 100644 --- a/src/entt/meta/meta.hpp +++ b/src/entt/meta/meta.hpp @@ -104,7 +104,7 @@ public: */ template meta_associative_container(std::in_place_type_t, any instance) ENTT_NOEXCEPT - : key_only_container{meta_associative_container_traits::key_only()}, + : key_only_container{meta_associative_container_traits::key_only}, key_type_node{internal::meta_node>>::resolve()}, mapped_type_node{nullptr}, value_type_node{internal::meta_node>>::resolve()}, @@ -117,7 +117,7 @@ public: find_fn{&meta_associative_container_traits::find}, storage{std::move(instance)} { - if constexpr(!meta_associative_container_traits::key_only()) { + if constexpr(!meta_associative_container_traits::key_only) { mapped_type_node = internal::meta_node>>::resolve(); } }