Lines Matching refs:__first
30 __rotate_left(_ForwardIterator __first, _ForwardIterator __last) in __rotate_left() argument
35 value_type __tmp = _Ops::__iter_move(__first); in __rotate_left()
37 _Ops::next(__first), __last, __first).second; in __rotate_left()
44 __rotate_right(_BidirectionalIterator __first, _BidirectionalIterator __last) in __rotate_right() argument
51 …_BidirectionalIterator __fp1 = std::__move_backward<_AlgPolicy>(__first, __lm1, std::move(__last)); in __rotate_right()
52 *__first = _VSTD::move(__tmp); in __rotate_right()
58 __rotate_forward(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last) in __rotate_forward() argument
63 _IterOps<_AlgPolicy>::iter_swap(__first, __i); in __rotate_forward()
64 ++__first; in __rotate_forward()
67 if (__first == __middle) in __rotate_forward()
70 _ForwardIterator __r = __first; in __rotate_forward()
71 if (__first != __middle) in __rotate_forward()
76 _IterOps<_AlgPolicy>::iter_swap(__first, __i); in __rotate_forward()
77 ++__first; in __rotate_forward()
80 if (__first == __middle) in __rotate_forward()
84 else if (__first == __middle) in __rotate_forward()
107 __rotate_gcd(_RandomAccessIterator __first, _RandomAccessIterator __middle, _RandomAccessIterator _… in __rotate_gcd() argument
113 const difference_type __m1 = __middle - __first; in __rotate_gcd()
117 std::__swap_ranges<_AlgPolicy>(__first, __middle, __middle, __last); in __rotate_gcd()
121 for (_RandomAccessIterator __p = __first + __g; __p != __first;) in __rotate_gcd()
134 __p2 = __first + (__m1 - __d); in __rotate_gcd()
138 return __first + __m2; in __rotate_gcd()
144 __rotate_impl(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last, in __rotate_impl() argument
150 if (_IterOps<_AlgPolicy>::next(__first) == __middle) in __rotate_impl()
151 return std::__rotate_left<_AlgPolicy>(__first, __last); in __rotate_impl()
153 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last); in __rotate_impl()
159 __rotate_impl(_BidirectionalIterator __first, _BidirectionalIterator __middle, _BidirectionalIterat… in __rotate_impl() argument
165 if (_IterOps<_AlgPolicy>::next(__first) == __middle) in __rotate_impl()
166 return std::__rotate_left<_AlgPolicy>(__first, __last); in __rotate_impl()
168 return std::__rotate_right<_AlgPolicy>(__first, __last); in __rotate_impl()
170 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last); in __rotate_impl()
176 __rotate_impl(_RandomAccessIterator __first, _RandomAccessIterator __middle, _RandomAccessIterator … in __rotate_impl() argument
182 if (_IterOps<_AlgPolicy>::next(__first) == __middle) in __rotate_impl()
183 return std::__rotate_left<_AlgPolicy>(__first, __last); in __rotate_impl()
185 return std::__rotate_right<_AlgPolicy>(__first, __last); in __rotate_impl()
186 return std::__rotate_gcd<_AlgPolicy>(__first, __middle, __last); in __rotate_impl()
188 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last); in __rotate_impl()
194 __rotate(_Iterator __first, _Iterator __middle, _Sentinel __last) { in __rotate() argument
198 if (__first == __middle) in __rotate()
201 return _Ret(std::move(__first), std::move(__last_iter)); in __rotate()
205 std::move(__first), std::move(__middle), __last_iter, _IterCategory()); in __rotate()
213 rotate(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last) in rotate() argument
216 std::move(__first), std::move(__middle), std::move(__last)).first; in rotate()