Lines Matching refs:reverse_iterator
43 class _LIBCPP_TEMPLATE_VIS reverse_iterator
85 reverse_iterator() : __t(), current() {} in reverse_iterator() function
88 explicit reverse_iterator(_Iter __x) : __t(__x), current(__x) {} in reverse_iterator() function
94 reverse_iterator(const reverse_iterator<_Up>& __u) in reverse_iterator() function
104 reverse_iterator& operator=(const reverse_iterator<_Up>& __u) {
110 reverse_iterator() : current() {} in reverse_iterator() function
113 explicit reverse_iterator(_Iter __x) : current(__x) {} in reverse_iterator() function
119 reverse_iterator(const reverse_iterator<_Up>& __u) in reverse_iterator() function
129 reverse_iterator& operator=(const reverse_iterator<_Up>& __u) {
158 reverse_iterator& operator++() {--current; return *this;}
160 reverse_iterator operator++(int) {reverse_iterator __tmp(*this); --current; return __tmp;}
162 reverse_iterator& operator--() {++current; return *this;}
164 reverse_iterator operator--(int) {reverse_iterator __tmp(*this); ++current; return __tmp;}
166 reverse_iterator operator+(difference_type __n) const {return reverse_iterator(current - __n);}
168 reverse_iterator& operator+=(difference_type __n) {current -= __n; return *this;}
170 reverse_iterator operator-(difference_type __n) const {return reverse_iterator(current + __n);}
172 reverse_iterator& operator-=(difference_type __n) {current += __n; return *this;}
178 iter_rvalue_reference_t<_Iter> iter_move(const reverse_iterator& __i) in iter_move()
187 void iter_swap(const reverse_iterator& __x, const reverse_iterator<_Iter2>& __y) in iter_swap()
202 struct __is_reverse_iterator<reverse_iterator<_Iter> > : true_type {};
207 operator==(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
220 operator<(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
233 operator!=(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
246 operator>(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
259 operator>=(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
272 operator<=(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
286 operator<=>(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
296 operator-(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
304 typename reverse_iterator<_Iter1>::difference_type
305 operator-(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
313 reverse_iterator<_Iter>
314 operator+(typename reverse_iterator<_Iter>::difference_type __n, const reverse_iterator<_Iter>& __x)
316 return reverse_iterator<_Iter>(__x.base() - __n);
322 inline constexpr bool disable_sized_sentinel_for<reverse_iterator<_Iter1>, reverse_iterator<_Iter2>…
328 reverse_iterator<_Iter> make_reverse_iterator(_Iter __i)
330 return reverse_iterator<_Iter>(__i);
336 using __unconstrained_reverse_iterator = reverse_iterator<_Iter>;
505 …subrange<reverse_iterator<ranges::iterator_t<_Range>>, reverse_iterator<ranges::iterator_t<_Range>…
513 struct __unwrap_iter_impl<reverse_iterator<reverse_iterator<_Iter> >, __b>
514 : __unwrap_reverse_iter_impl<reverse_iterator, reverse_iterator, _Iter> {};
519 struct __unwrap_iter_impl<reverse_iterator<__unconstrained_reverse_iterator<_Iter>>, __b>
520 : __unwrap_reverse_iter_impl<reverse_iterator, __unconstrained_reverse_iterator, _Iter> {};
523 struct __unwrap_iter_impl<__unconstrained_reverse_iterator<reverse_iterator<_Iter>>, __b>
524 : __unwrap_reverse_iter_impl<__unconstrained_reverse_iterator, reverse_iterator, _Iter> {};