std::ranges::elements_view::iterator::operator++,--,+=,-=(3)

NAME
std::ranges::elements_view::iterator::operator++,--,+=,-= - std::ranges::elements_view::iterator::operator++,--,+=,-=

Synopsis
   constexpr /*iterator*/& operator++(); (1) (since C++20)
   constexpr void operator++( int ); (2) (since C++20)
   constexpr /*iterator*/ operator++( int ) (3) (since C++20)
     requires ranges::forward_range<Base>;
   constexpr /*iterator*/& operator--() (4) (since C++20)
     requires ranges::bidirectional_range<Base>;
   constexpr /*iterator*/ operator--( int ) (5) (since C++20)
     requires ranges::bidirectional_range<Base>;
   constexpr /*iterator*/& operator+=( difference_type n ) (6) (since C++20)
     requires ranges::random_access_range<Base>;
   constexpr /*iterator*/& operator-=( difference_type n ) (7) (since C++20)
     requires ranges::random_access_range<Base>;
   Increments or decrements the iterator.
   Let current_ be the underlying iterator.
   1) Equivalent to ++current_; return *this;
   2) Equivalent to ++current_;
   3) Equivalent to auto tmp = *this; ++*this; return tmp;
   4) Equivalent to --current_; return *this;
   5) Equivalent to auto tmp = *this; --*this; return tmp;
   6) Equivalent to current_ += n; return *this;
   7) Equivalent to current_ -= n; return *this;

Parameters
   n - position relative to current location

Return value
   1,4,6,7) *this
   2) (none)
   3,5) a copy of *this that was made before the change