view/group: updated range iterators (thanks to @Lawrencemm for pointing this out)
This commit is contained in:
@@ -98,10 +98,13 @@ class basic_group<Entity, exclude_t<Exclude...>, get_t<Get...>> {
|
||||
using difference_type = std::ptrdiff_t;
|
||||
using value_type = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Get), std::tuple<>, std::tuple<Get &>>>()...
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Get), std::tuple<>, std::tuple<Get>>>()...
|
||||
));
|
||||
using pointer = void;
|
||||
using reference = value_type;
|
||||
using reference = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Get), std::tuple<>, std::tuple<Get &>>>()...
|
||||
));
|
||||
using iterator_category = std::input_iterator_tag;
|
||||
|
||||
range_iterator() ENTT_NOEXCEPT = default;
|
||||
@@ -610,12 +613,16 @@ class basic_group<Entity, exclude_t<Exclude...>, get_t<Get...>, Owned...> {
|
||||
public:
|
||||
using difference_type = std::ptrdiff_t;
|
||||
using value_type = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Owned), std::tuple<>, std::tuple<Owned>>>()...,
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Get), std::tuple<>, std::tuple<Get>>>()...
|
||||
));
|
||||
using pointer = void;
|
||||
using reference = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Owned), std::tuple<>, std::tuple<Owned &>>>()...,
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Get), std::tuple<>, std::tuple<Get &>>>()...
|
||||
));
|
||||
using pointer = void;
|
||||
using reference = value_type;
|
||||
using iterator_category = std::input_iterator_tag;
|
||||
|
||||
range_iterator() ENTT_NOEXCEPT = default;
|
||||
|
||||
@@ -175,10 +175,13 @@ class basic_view<Entity, exclude_t<Exclude...>, Component...> {
|
||||
using difference_type = std::ptrdiff_t;
|
||||
using value_type = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<>, std::tuple<Component &>>>()...
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<>, std::tuple<Component>>>()...
|
||||
));
|
||||
using pointer = void;
|
||||
using reference = value_type;
|
||||
using reference = decltype(std::tuple_cat(
|
||||
std::declval<std::tuple<Entity>>(),
|
||||
std::declval<std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<>, std::tuple<Component &>>>()...
|
||||
));
|
||||
using iterator_category = std::input_iterator_tag;
|
||||
|
||||
range_iterator() ENTT_NOEXCEPT = default;
|
||||
@@ -645,9 +648,9 @@ class basic_view<Entity, exclude_t<>, Component> {
|
||||
|
||||
public:
|
||||
using difference_type = std::ptrdiff_t;
|
||||
using value_type = std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<Entity>, std::tuple<Entity, Component &>>;
|
||||
using value_type = std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<Entity>, std::tuple<Entity, Component>>;
|
||||
using pointer = void;
|
||||
using reference = value_type;
|
||||
using reference = std::conditional_t<ENTT_IS_EMPTY(Component), std::tuple<Entity>, std::tuple<Entity, Component &>>;
|
||||
using iterator_category = std::input_iterator_tag;
|
||||
|
||||
range_iterator() ENTT_NOEXCEPT = default;
|
||||
|
||||
Reference in New Issue
Block a user