Browse Source

storage: avoid using base_type::at internally

Michele Caini 2 năm trước cách đây
mục cha
commit
010f0b9402
1 tập tin đã thay đổi với 3 bổ sung3 xóa
  1. 3 3
      src/entt/entity/storage.hpp

+ 3 - 3
src/entt/entity/storage.hpp

@@ -281,7 +281,7 @@ class basic_storage: public basic_sparse_set<Entity, typename std::allocator_tra
 
         for(auto pos = sz, length = base_type::size(); pos < length; ++pos) {
             if constexpr(traits_type::in_place_delete) {
-                if(base_type::at(pos) != tombstone) {
+                if(base_type::data()[pos] != tombstone) {
                     alloc_traits::destroy(allocator, std::addressof(element_at(pos)));
                 }
             } else {
@@ -1062,7 +1062,7 @@ public:
      */
     entity_type emplace() {
         const auto len = base_type::free_list();
-        const auto entt = (len == base_type::size()) ? entity_at(len) : base_type::at(len);
+        const auto entt = (len == base_type::size()) ? entity_at(len) : base_type::data()[len];
         return *base_type::try_emplace(entt, true);
     }
 
@@ -1115,7 +1115,7 @@ public:
     template<typename It>
     void insert(It first, It last) {
         for(const auto sz = base_type::size(); first != last && base_type::free_list() != sz; ++first) {
-            *first = *base_type::try_emplace(base_type::at(base_type::free_list()), true);
+            *first = *base_type::try_emplace(base_type::data()[base_type::free_list()], true);
         }
 
         for(; first != last; ++first) {