Lines Matching defs:__first

33 __rotate_left(_ForwardIterator __first, _ForwardIterator __last) {
37 value_type __tmp = _Ops::__iter_move(__first);
38 _ForwardIterator __lm1 = std::__move<_AlgPolicy>(_Ops::next(__first), __last, __first).second;
45 __rotate_right(_BidirectionalIterator __first, _BidirectionalIterator __last) {
51 _BidirectionalIterator __fp1 = std::__move_backward<_AlgPolicy>(__first, __lm1, std::move(__last)).second;
52 *__first = std::move(__tmp);
58 __rotate_forward(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last) {
61 _IterOps<_AlgPolicy>::iter_swap(__first, __i);
62 ++__first;
65 if (__first == __middle)
68 _ForwardIterator __r = __first;
69 if (__first != __middle) {
72 _IterOps<_AlgPolicy>::iter_swap(__first, __i);
73 ++__first;
75 if (__first == __middle)
78 } else if (__first == __middle)
97 __rotate_gcd(_RandomAccessIterator __first, _RandomAccessIterator __middle, _RandomAccessIterator __last) {
102 const difference_type __m1 = __middle - __first;
105 std::__swap_ranges<_AlgPolicy>(__first, __middle, __middle, __last);
109 for (_RandomAccessIterator __p = __first + __g; __p != __first;) {
120 __p2 = __first + (__m1 - __d);
124 return __first + __m2;
129 __rotate_impl(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last, std::forward_iterator_tag) {
132 if (_IterOps<_AlgPolicy>::next(__first) == __middle)
133 return std::__rotate_left<_AlgPolicy>(__first, __last);
135 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last);
140 _BidirectionalIterator __first,
146 if (_IterOps<_AlgPolicy>::next(__first) == __middle)
147 return std::__rotate_left<_AlgPolicy>(__first, __last);
149 return std::__rotate_right<_AlgPolicy>(__first, __last);
151 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last);
156 _RandomAccessIterator __first,
162 if (_IterOps<_AlgPolicy>::next(__first) == __middle)
163 return std::__rotate_left<_AlgPolicy>(__first, __last);
165 return std::__rotate_right<_AlgPolicy>(__first, __last);
166 return std::__rotate_gcd<_AlgPolicy>(__first, __middle, __last);
168 return std::__rotate_forward<_AlgPolicy>(__first, __middle, __last);
173 __rotate(_Iterator __first, _Iterator __middle, _Sentinel __last) {
177 if (__first == __middle)
180 return _Ret(std::move(__first), std::move(__last_iter));
183 auto __result = std::__rotate_impl<_AlgPolicy>(std::move(__first), std::move(__middle), __last_iter, _IterCategory());
190 rotate(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last) {
191 return std::__rotate<_ClassicAlgPolicy>(std::move(__first), std::move(__middle), std::move(__last)).first;