table of contents
std::counted_iterator< _It >(3cxx) | std::counted_iterator< _It >(3cxx) |
NAME¶
std::counted_iterator< _It > - An iterator adaptor that keeps track of the distance to the end.
SYNOPSIS¶
#include <iterator>
Inherits std::__detail::__counted_iter_value_type< _It >, std::__detail::__counted_iter_concept< _It >, and std::__detail::__counted_iter_cat< _It >.
Public Types¶
using difference_type = iter_difference_t< _It
>
using iterator_type = _It
Public Member Functions¶
constexpr counted_iterator (_It __i, iter_difference_t<
_It > __n)
template<typename _It2 >
requires convertible_to<const _It2&, _It>constexpr
counted_iterator (const counted_iterator< _It2 >
&__x)"
constexpr _It base ()
&&noexcept(is_nothrow_move_constructible_v< _It >)
constexpr const _It & base () const &noexcept
constexpr iter_difference_t< _It > count () const noexcept
constexpr decltype(auto) operator* () const
noexcept(noexcept(*_M_current))
constexpr decltype(auto) operator* ()
noexcept(noexcept(*_M_current))
constexpr counted_iterator operator+ (iter_difference_t< _It
> __n) const
constexpr counted_iterator & operator++ ()
constexpr decltype(auto) operator++ (int)
constexpr counted_iterator operator++ (int)
constexpr counted_iterator & operator+=
(iter_difference_t< _It > __n)
constexpr counted_iterator operator- (iter_difference_t< _It
> __n) const
constexpr counted_iterator & operator-- ()
constexpr counted_iterator operator-- (int)
constexpr counted_iterator & operator-=
(iter_difference_t< _It > __n)
constexpr auto operator-> () const noexcept
template<typename _It2 >
requires assignable_from<_It&, const _It2&>constexpr
counted_iterator & operator= (const
counted_iterator< _It2 > &__x)"
constexpr decltype(auto) operator[]
(iter_difference_t< _It > __n) const
noexcept(noexcept(_M_current[__n]))
Friends¶
constexpr iter_rvalue_reference_t< _It > iter_move
(const counted_iterator &__i)
noexcept(noexcept(ranges::iter_move(__i._M_current)))
template<indirectly_swappable< _It > _It2> constexpr void
iter_swap (const counted_iterator &__x, const
counted_iterator< _It2 > &__y)
noexcept(noexcept(ranges::iter_swap(__x._M_current, __y._M_current)))
constexpr counted_iterator operator+ (iter_difference_t< _It
> __n, const counted_iterator &__x)
template<common_with< _It > _It2> constexpr iter_difference_t<
_It2 > operator- (const counted_iterator &__x, const
counted_iterator< _It2 > &__y)
constexpr iter_difference_t< _It > operator- (const
counted_iterator &__x, default_sentinel_t)
constexpr iter_difference_t< _It > operator-
(default_sentinel_t, const counted_iterator &__y)
template<common_with< _It > _It2> constexpr strong_ordering
operator<=> (const counted_iterator &__x, const
counted_iterator< _It2 > &__y)
template<common_with< _It > _It2> constexpr bool operator==
(const counted_iterator &__x, const counted_iterator<
_It2 > &__y)
constexpr bool operator== (const counted_iterator &__x,
default_sentinel_t)
Detailed Description¶
template<input_or_output_iterator _It>¶
class std::counted_iterator< _It >"An iterator adaptor that keeps track of the distance to the end.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
libstdc++ |