Functions | |
namespace std | _GLIBCXX_VISIBILITY (default) |
namespace std _GLIBCXX_VISIBILITY | ( | default | ) |
Swaps the contents of two iterators.
__a | An iterator. |
__b | Another iterator. |
This function swaps the values pointed to by two iterators, not the iterators themselves.
Swap the elements of two sequences.
__first1 | A forward iterator. |
__last1 | A forward iterator. |
__first2 | A forward iterator. |
first2+
(last1-first1).Swaps each element in the range [first1,last1) with the corresponding element in the range
[first2,(last1-first1)). The ranges must not overlap.
This does what you think it does.
__a | A thing of arbitrary type. |
__b | Another thing of arbitrary type. |
This is the simple classic generic implementation. It will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.
This does what you think it does.
__a | A thing of arbitrary type. |
__b | Another thing of arbitrary type. |
This is the simple classic generic implementation. It will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.
This does what you think it does.
__a | A thing of arbitrary type. |
__b | Another thing of arbitrary type. |
__comp | A comparison functor. |
This will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.
This does what you think it does.
__a | A thing of arbitrary type. |
__b | Another thing of arbitrary type. |
__comp | A comparison functor. |
This will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.
Copies the range [first,last) into result.
__first | An input iterator. |
__last | An input iterator. |
__result | An output iterator. |
This inline function will boil down to a call to memmove
whenever possible. Failing that, if random access iterators are passed, then the loop count will be known (and therefore a candidate for compiler optimizations such as unrolling). Result may not be contained within [first,last); the copy_backward function should be used instead.
Note that the end of the output range is permitted to be contained within [first,last).
Copies the range [first,last) into result.
__first | A bidirectional iterator. |
__last | A bidirectional iterator. |
__result | A bidirectional iterator. |
The function has the same effect as copy, but starts at the end of the range and works its way to the start, returning the start of the result. This inline function will boil down to a call to memmove
whenever possible. Failing that, if random access iterators are passed, then the loop count will be known (and therefore a candidate for compiler optimizations such as unrolling).
Result may not be in the range (first,last]. Use copy instead. Note that the start of the output range may overlap [first,last).
Fills the range [first,last) with copies of value.
__first | A forward iterator. |
__last | A forward iterator. |
__value | A reference-to-const of arbitrary type. |
This function fills a range with copies of the same value. For char types filling contiguous areas of memory, this becomes an inline call to memset
or wmemset
.
Fills the range [first,first+n) with copies of value.
__first | An output iterator. |
__n | The count of copies to perform. |
__value | A reference-to-const of arbitrary type. |
This function fills a range with copies of the same value. For char types filling contiguous areas of memory, this becomes an inline call to memset
or @ wmemset.
_GLIBCXX_RESOLVE_LIB_DEFECTS DR 865. More algorithms that throw away information
Finds the first position in which val could be inserted without changing the ordering.
__first | An iterator. |
__last | Another iterator. |
__val | The search term. |
This is a helper function for the sort routines and for random.tcc.
Tests a range for element-wise equality.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
This compares the elements of two ranges using ==
and returns true or false depending on whether all of the corresponding elements of the ranges are equal.
Tests a range for element-wise equality.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
__binary_pred | A binary predicate functor. |
This compares the elements of two ranges using the binary_pred parameter, and returns true or false depending on whether all of the corresponding elements of the ranges are equal.
Performs dictionary comparison on ranges.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
__last2 | An input iterator. |
Returns true if the sequence of elements defined by the range [first1,last1) is lexicographically less than the sequence of elements defined by the range [first2,last2). Returns false otherwise. (Quoted from [25.3.8]/1.) If the iterators are all character pointers, then this is an inline call to memcmp
.
Performs dictionary comparison on ranges.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
__last2 | An input iterator. |
__comp | A comparison functor. |
The same as the four-parameter lexicographical_compare
, but uses the comp parameter instead of <
.
Finds the places in ranges which don't match.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
This compares the elements of two ranges using ==
and returns a pair of iterators. The first iterator points into the first range, the second iterator points into the second range, and the elements pointed to by the iterators are not equal.
Finds the places in ranges which don't match.
__first1 | An input iterator. |
__last1 | An input iterator. |
__first2 | An input iterator. |
__binary_pred | A binary predicate functor. |
This compares the elements of two ranges using the binary_pred parameter, and returns a pair of iterators. The first iterator points into the first range, the second iterator points into the second range, and the elements pointed to by the iterators are not equal.
References __glibcxx_function_requires, __glibcxx_requires_partitioned_lower, __glibcxx_requires_valid_range, __gnu_cxx::__ops::__iter_comp_iter(), __gnu_cxx::__ops::__iter_equal_to_iter(), __gnu_cxx::__ops::__iter_less_iter(), __gnu_cxx::__ops::__iter_less_val(), _GLIBCXX_MOVE, __gnu_parallel::max(), __gnu_parallel::min(), and std::__exception_ptr::swap().