std::ranges::adjacent_view<V,N>:: end
|
Range primitives | |||||||
|
Range concepts | |||||||||||||||||||
|
Range factories | |||||||||
|
Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
Helper items | |||||||||||||||||
|
|
Member functions | ||||
adjacent_view::end
|
||||
Iterator | ||||
Member functions | ||||
Non-member functions | ||||
Sentinel | ||||
Member functions | ||||
Non-member functions | ||||
constexpr
auto
end
(
)
requires
(
!
__SimpleView
<
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
adjacent_view
.
Let
base_
be the underlying view.
if constexpr (ranges::common_range<V>) return /*iterator*/<false>(__as_sentinel{}, ranges::begin(base_), ranges::end(base_)); else return /*sentinel*/<false>(ranges::end(base_));
if constexpr (ranges::common_range<const V>) return /*iterator*/<true>(__as_sentinel{}, ranges::begin(base_), ranges::end(base_)); else return /*sentinel*/<true>(ranges::end(base_));
Parameters
(none)
Return value
An
iterator
to the element following the last element, if the underlying view
V
models
common_range
. Otherwise, a
sentinel
which compares equal to the end iterator.
Notes
ranges::
adjacent_view
<
V,N
>
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) |