view: stable single type view ::rbegin/::rend functions
This commit is contained in:
@@ -720,7 +720,7 @@ public:
|
||||
* @return An iterator to the first entity of the reversed view.
|
||||
*/
|
||||
[[nodiscard]] reverse_iterator rbegin() const noexcept {
|
||||
return view->rbegin();
|
||||
return view ? view->rbegin() : reverse_iterator{};
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -735,7 +735,7 @@ public:
|
||||
* reversed view.
|
||||
*/
|
||||
[[nodiscard]] reverse_iterator rend() const noexcept {
|
||||
return view->rend();
|
||||
return view ? view->rend() : reverse_iterator{};
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -83,6 +83,9 @@ TEST(SingleComponentView, InvalidView) {
|
||||
ASSERT_EQ(view.begin(), typename decltype(view)::iterator{});
|
||||
ASSERT_EQ(view.begin(), view.end());
|
||||
|
||||
ASSERT_EQ(view.rbegin(), typename decltype(view)::reverse_iterator{});
|
||||
ASSERT_EQ(view.rbegin(), view.rend());
|
||||
|
||||
entt::storage<int> storage;
|
||||
view.storage(storage);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user