std::ranges::stride_view<V>:: end
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
| Member functions | ||||
|
stride_view::end
|
||||
|
(C++26)
|
||||
| Deduction guides | ||||
| Iterator | ||||
| Member functions | ||||
| Non-member functions | ||||
|
constexpr
auto
end
(
)
requires
(
!
/*simple-view*/
<
V
>
)
;
|
(1) | (since C++23) |
|
constexpr
auto
end
(
)
const
requires
ranges::
range
<
const
V
>
|
(2) | (since C++23) |
Returns an
iterator
or a
sentinel
representing the end of the
stride_view
.
Let
base_
and
stride_
be the underlying data members.
Equivalent to:
if constexpr (ranges::common_range<Base> && ranges::sized_range<Base> && ranges::forward_range<Base>) { auto missing = (stride_ - ranges::distance(base_) % stride_) % stride_; return iterator<Const>(this, ranges::end(base_), missing); } else if constexpr (ranges::common_range<Base> && !ranges::bidirectional_range<Base>) { return iterator<Const>(this, ranges::end(base_)); } else { return std::default_sentinel; }
Contents |
Parameters
(none)
Return value
An
iterator
to the element following the last element, if the underlying view
V
models
common_range
. Otherwise, the
std::default_sentinel
which compares equal to the end iterator.
Notes
stride_view
<
V
>
models
common_range
whenever the underlying view
V
does.
Example
|
This section is incomplete
Reason: no example |
See also
|
returns an iterator to the beginning
(public member function) |
|
|
(C++20)
|
returns a sentinel indicating the end of a range
(customization point object) |