Home | History | Annotate | Download | only in bits

Lines Matching full:__last

118     __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
119 { return std::__is_heap(__first, std::distance(__first, __last)); }
123 __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
125 { return std::__is_heap(__first, __comp, std::distance(__first, __last)); }
148 * @param __last End of heap + element.
152 * over the range [__first,__last-1). After completion,
153 * [__first,__last) is a valid heap.
157 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
168 __glibcxx_requires_valid_range(__first, __last);
169 __glibcxx_requires_heap(__first, __last - 1);
171 _ValueType __value = _GLIBCXX_MOVE(*(__last - 1));
172 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
196 * @param __last End of heap + element.
200 * This operation pushes the element at __last-1 onto the valid
201 * heap over the range [__first,__last-1). After completion,
202 * [__first,__last) is a valid heap. Compare operations are
207 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
218 __glibcxx_requires_valid_range(__first, __last);
219 __glibcxx_requires_heap_pred(__first, __last - 1, __comp);
221 _ValueType __value = _GLIBCXX_MOVE(*(__last - 1));
222 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
254 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
265 _DistanceType(__last - __first),
272 * @param __last End of heap.
273 * @pre [__first, __last) is a valid, non-empty range.
277 * and __last-1 are swapped and [__first,__last-1) is made into a
282 pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
291 __glibcxx_requires_non_empty_range(__first, __last);
292 __glibcxx_requires_valid_range(__first, __last);
293 __glibcxx_requires_heap(__first, __last);
295 --__last;
296 std::__pop_heap(__first, __last, __last);
329 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
340 _DistanceType(__last - __first),
347 * @param __last End of heap.
352 * and __last-1 are swapped and [__first,__last-1) is made into a
358 _RandomAccessIterator __last, _Compare __comp)
363 __glibcxx_requires_valid_range(__first, __last);
364 __glibcxx_requires_non_empty_range(__first, __last);
365 __glibcxx_requires_heap_pred(__first, __last, __comp);
367 --__last;
368 std::__pop_heap(__first, __last, __last, __comp);
374 * @param __last End of heap.
377 * This operation makes the elements in [__first,__last) into a heap.
381 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
392 __glibcxx_requires_valid_range(__first, __last);
394 if (__last - __first < 2)
397 const _DistanceType __len = __last - __first;
412 * @param __last End of heap.
416 * This operation makes the elements in [__first,__last) into a heap.
421 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
432 __glibcxx_requires_valid_range(__first, __last);
434 if (__last - __first < 2)
437 const _DistanceType __len = __last - __first;
453 * @param __last End of heap.
456 * This operation sorts the valid heap in the range [__first,__last).
460 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
467 __glibcxx_requires_valid_range(__first, __last);
468 __glibcxx_requires_heap(__first, __last);
470 while (__last - __first > 1)
472 --__last;
473 std::__pop_heap(__first, __last, __last);
480 * @param __last End of heap.
484 * This operation sorts the valid heap in the range [__first,__last).
489 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
495 __glibcxx_requires_valid_range(__first, __last);
496 __glibcxx_requires_heap_pred(__first, __last, __comp);
498 while (__last - __first > 1)
500 --__last;
501 std::__pop_heap(__first, __last, __last, __comp);
509 * @param __last End of range.
513 * This operation returns the last iterator i in [__first, __last) for which
518 is_heap_until(_RandomAccessIterator __first, _RandomAccessIterator __last)
525 __glibcxx_requires_valid_range(__first, __last);
528 __last));
534 * @param __last End of range.
539 * This operation returns the last iterator i in [__first, __last) for which
544 is_heap_until(_RandomAccessIterator __first, _RandomAccessIterator __last,
550 __glibcxx_requires_valid_range(__first, __last);
553 __last),
560 * @param __last End of range.
566 is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
567 { return std::is_heap_until(__first, __last) == __last; }
572 * @param __last End of range.
579 is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
581 { return std::is_heap_until(__first, __last, __comp) == __last; }