Bläddra i källkod

view: removed ::data for single type views, use ::storage().data() instead

Michele Caini 4 år sedan
förälder
incheckning
b54d358feb
3 ändrade filer med 6 tillägg och 18 borttagningar
  1. 1 1
      src/entt/entity/snapshot.hpp
  2. 0 12
      src/entt/entity/view.hpp
  3. 5 5
      test/entt/entity/registry.cpp

+ 1 - 1
src/entt/entity/snapshot.hpp

@@ -115,7 +115,7 @@ public:
     const basic_snapshot &component(Archive &archive) const {
         if constexpr(sizeof...(Component) == 1u) {
             const auto view = reg->template view<const Component...>();
-            (component<Component>(archive, view.data(), view.data() + view.size()), ...);
+            (component<Component>(archive, view.rbegin(), view.rend()), ...);
             return *this;
         } else {
             (component<Component>(archive), ...);

+ 0 - 12
src/entt/entity/view.hpp

@@ -765,18 +765,6 @@ public:
         return view->empty();
     }
 
-    /**
-     * @brief Direct access to the list of entities.
-     *
-     * The returned pointer is such that range `[data(), data() + size())` is
-     * always a valid range, even if the container is empty.
-     *
-     * @return A pointer to the array of entities.
-     */
-    [[nodiscard]] auto data() const ENTT_NOEXCEPT {
-        return view->data();
-    }
-
     /**
      * @brief Returns an iterator to the first entity of the view.
      *

+ 5 - 5
test/entt/entity/registry.cpp

@@ -1242,13 +1242,13 @@ TEST(Registry, SortEmpty) {
     registry.emplace<empty_type>(registry.create());
     registry.emplace<empty_type>(registry.create());
 
-    ASSERT_LT(registry.view<empty_type>().data()[0], registry.view<empty_type>().data()[1]);
-    ASSERT_LT(registry.view<empty_type>().data()[1], registry.view<empty_type>().data()[2]);
+    ASSERT_LT(registry.storage<empty_type>().data()[0], registry.storage<empty_type>().data()[1]);
+    ASSERT_LT(registry.storage<empty_type>().data()[1], registry.storage<empty_type>().data()[2]);
 
     registry.sort<empty_type>(std::less<entt::entity>{});
 
-    ASSERT_GT(registry.view<empty_type>().data()[0], registry.view<empty_type>().data()[1]);
-    ASSERT_GT(registry.view<empty_type>().data()[1], registry.view<empty_type>().data()[2]);
+    ASSERT_GT(registry.storage<empty_type>().data()[0], registry.storage<empty_type>().data()[1]);
+    ASSERT_GT(registry.storage<empty_type>().data()[1], registry.storage<empty_type>().data()[2]);
 }
 
 TEST(Registry, ComponentsWithTypesFromStandardTemplateLibrary) {
@@ -1401,7 +1401,7 @@ TEST(Registry, Insert) {
     float value[3]{0.f, 1.f, 2.f};
 
     const auto iview = registry.view<int>();
-    registry.insert<float>(iview.data(), iview.data() + iview.size(), value);
+    registry.insert<float>(iview.rbegin(), iview.rend(), value);
 
     ASSERT_EQ(registry.get<float>(entities[0u]), 0.f);
     ASSERT_EQ(registry.get<float>(entities[1u]), 1.f);