cleanup
This commit is contained in:
6
TODO
6
TODO
@@ -16,7 +16,6 @@
|
||||
* registry.each<T...>(first, last) by iterators, entities/components guaranteed
|
||||
* multi component registry::remove and some others?
|
||||
* built-in support for dual (or N-) buffering
|
||||
* allow to "merge" registries easily
|
||||
* allow for custom stomp functions
|
||||
* deprecate/replace snapshot
|
||||
* remove dependency
|
||||
@@ -24,9 +23,10 @@
|
||||
|
||||
TODO
|
||||
* custom (decoupled) pools ==> double buffering, shared components, multi-model
|
||||
* use direct access (pool-like) also for context variables
|
||||
* make meta work across boundaries
|
||||
- inline variables are fine here, only the head represents a problem
|
||||
- we should always resolve by looking into the list of types when working across boundaries, no direct resolve
|
||||
* nested groups: AB/ABC/ABCD/... (hints: sort, check functions)
|
||||
* improve multi-stomp so as to reuse the known pool and the known element
|
||||
* use unordered_map for named pools and context variables:
|
||||
* use direct access (pool-like) also for context variables
|
||||
* improves multi-stomp
|
||||
|
||||
@@ -290,10 +290,10 @@ TEST(NonOwningGroup, ConstNonConstAndAllInBetween) {
|
||||
|
||||
ASSERT_EQ(group.size(), decltype(group.size()){1});
|
||||
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int>(entt::entity{0})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const char>(entt::entity{0})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<entt::tag<"empty"_hs>>(entt::entity{0})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int, const char, entt::tag<"empty"_hs>>(entt::entity{0})), std::tuple<int &, const char &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int>({})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const char>({})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<entt::tag<"empty"_hs>>({})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int, const char, entt::tag<"empty"_hs>>({})), std::tuple<int &, const char &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.raw<const char>()), const char *>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.raw<int>()), int *>));
|
||||
|
||||
@@ -805,12 +805,12 @@ TEST(OwningGroup, ConstNonConstAndAllInBetween) {
|
||||
|
||||
ASSERT_EQ(group.size(), decltype(group.size()){1});
|
||||
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int>(entt::entity{0})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const char>(entt::entity{0})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<double>(entt::entity{0})), double &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const float>(entt::entity{0})), const float &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<entt::tag<"empty"_hs>>(entt::entity{0})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int, const char, double, const float, entt::tag<"empty"_hs>>(entt::entity{0})), std::tuple<int &, const char &, double &, const float &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int>({})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const char>({})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<double>({})), double &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<const float>({})), const float &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<entt::tag<"empty"_hs>>({})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.get<int, const char, double, const float, entt::tag<"empty"_hs>>({})), std::tuple<int &, const char &, double &, const float &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.raw<const float>()), const float *>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.raw<double>()), double *>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(group.raw<const char>()), const char *>));
|
||||
|
||||
@@ -136,9 +136,9 @@ TEST(SingleComponentView, ConstNonConstAndAllInBetween) {
|
||||
ASSERT_TRUE((std::is_same_v<typename decltype(view)::raw_type, int>));
|
||||
ASSERT_TRUE((std::is_same_v<typename decltype(cview)::raw_type, const int>));
|
||||
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get(entt::entity{0})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get({})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.raw()), int *>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(cview.get(entt::entity{0})), const int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(cview.get({})), const int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(cview.raw()), const int *>));
|
||||
|
||||
view.each([](auto &&i) {
|
||||
@@ -417,10 +417,10 @@ TEST(MultipleComponentView, ConstNonConstAndAllInBetween) {
|
||||
|
||||
ASSERT_EQ(view.size(), decltype(view.size()){1});
|
||||
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<int>(entt::entity{0})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<const char>(entt::entity{0})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<entt::tag<"empty"_hs>>(entt::entity{0})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<int, const char, entt::tag<"empty"_hs>>(entt::entity{0})), std::tuple<int &, const char &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<int>({})), int &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<const char>({})), const char &>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<entt::tag<"empty"_hs>>({})), entt::tag<"empty"_hs>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.get<int, const char, entt::tag<"empty"_hs>>({})), std::tuple<int &, const char &, entt::tag<"empty"_hs>>>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.raw<const char>()), const char *>));
|
||||
ASSERT_TRUE((std::is_same_v<decltype(view.raw<int>()), int *>));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user