From 637764ee4e0b254c8c8a3f392f57ba1fe574609e Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Thu, 26 May 2022 08:46:53 +0200 Subject: [PATCH] group: use storage_for[_t] --- src/entt/entity/group.hpp | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/src/entt/entity/group.hpp b/src/entt/entity/group.hpp index 9f2fff9ad..772aebce6 100644 --- a/src/entt/entity/group.hpp +++ b/src/entt/entity/group.hpp @@ -133,12 +133,9 @@ class basic_group, get_t, exclude_t> { template static constexpr std::size_t index_of = type_list_index_v, type_list...>>; - template - using storage_for = constness_as_t, Entity>, Comp>; + using basic_common_type = std::common_type_t::base_type...>; - using basic_common_type = std::common_type_t::base_type...>; - - basic_group(basic_common_type &ref, storage_for &...gpool) noexcept + basic_group(basic_common_type &ref, storage_for_t &...gpool) noexcept : handler{&ref}, pools{&gpool...} {} @@ -154,7 +151,7 @@ public: /*! @brief Reversed iterator type. */ using reverse_iterator = typename base_type::reverse_iterator; /*! @brief Iterable group type. */ - using iterable = iterable_adaptor, get_t...>>>; + using iterable = iterable_adaptor, get_t...>>>; /*! @brief Default constructor to use to create empty, invalid groups. */ basic_group() noexcept @@ -489,7 +486,7 @@ public: private: base_type *const handler; - const std::tuple *...> pools; + const std::tuple *...> pools; }; /** @@ -533,10 +530,7 @@ class basic_group, get_t, exclude_t static constexpr std::size_t index_of = type_list_index_v, type_list..., std::remove_const_t...>>; - template - using storage_for = constness_as_t, Entity>, Comp>; - - basic_group(const std::size_t &extent, storage_for &...opool, storage_for &...gpool) noexcept + basic_group(const std::size_t &extent, storage_for_t &...opool, storage_for_t &...gpool) noexcept : pools{&opool..., &gpool...}, length{&extent} {} @@ -546,13 +540,13 @@ public: /*! @brief Unsigned integer type. */ using size_type = std::size_t; /*! @brief Common type among all storage types. */ - using base_type = std::common_type_t::base_type..., typename storage_for::base_type...>; + using base_type = std::common_type_t::base_type..., typename storage_for_t::base_type...>; /*! @brief Random access iterator type. */ using iterator = typename base_type::iterator; /*! @brief Reversed iterator type. */ using reverse_iterator = typename base_type::reverse_iterator; /*! @brief Iterable group type. */ - using iterable = iterable_adaptor...>, get_t...>>>; + using iterable = iterable_adaptor...>, get_t...>>>; /*! @brief Default constructor to use to create empty, invalid groups. */ basic_group() noexcept @@ -846,7 +840,7 @@ public: } private: - const std::tuple *..., storage_for *...> pools; + const std::tuple *..., storage_for_t *...> pools; const size_type *const length; };