Lines Matching defs:last
34 // selects only the last of consecutive values instead of the first.
36 Iterator LastUnique(Iterator first, Iterator last, BinaryPredicate compare) {
37 Iterator replacable = std::adjacent_find(first, last, compare);
40 if (replacable == last)
41 return last;
46 if (first == last)
51 for (Iterator next = std::next(first); next != last; ++next, ++first) {
138 InputIterator last,
224 // This method inserts the values from the range [first, last) into the
229 InputIterator last,
243 // erase(position), erase(first, last) can take O(size).
251 iterator erase(const_iterator first, const_iterator last);
403 // - Instead of searching [begin(), end()) it only searches [first, last).
406 // last) is returned.
409 iterator last,
411 auto position = std::lower_bound(first, last, val, value_comp());
413 if (position == last || value_comp()(val, *position)) {
426 // - Instead of searching [begin(), end()) it only searches [first, last).
429 // last) is returned.
432 iterator last,
434 auto position = std::lower_bound(first, last, val, value_comp());
436 if (position == last || value_comp()(val, *position)) {
448 iterator last,
451 std::stable_sort(first, last, impl_.get_value_comp());
462 erase_after = std::unique(first, last, comparator);
465 erase_after = LastUnique(first, last, comparator);
468 erase(erase_after, last);
511 InputIterator last,
514 : impl_(comp, first, last) {
717 InputIterator last,
719 if (first == last)
726 is_multipass<InputIterator>() && std::next(first) == last;
730 for (; first != last; ++first)
733 std::copy(first, last, std::inserter(*this, end()));
737 // Provide a convenience lambda to obtain an iterator pointing past the last
750 for (; first != last; ++first) {
759 for (; first != last; ++first) {
820 const_iterator last) -> iterator {
821 return impl_.body_.erase(first, last);