GNU g++  v5.2.1
GNU Standard C++
Non-Mutating
Collaboration diagram for Non-Mutating:

Functions

namespace std _GLIBCXX_VISIBILITY (default)
 

Detailed Description

Function Documentation

namespace std _GLIBCXX_VISIBILITY ( default  )

Swaps the contents of two iterators.

Parameters
__aAn iterator.
__bAnother iterator.
Returns
Nothing.

This function swaps the values pointed to by two iterators, not the iterators themselves.

Swap the elements of two sequences.

Parameters
__first1A forward iterator.
__last1A forward iterator.
__first2A forward iterator.
Returns
An iterator equal to 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.

Parameters
__aA thing of arbitrary type.
__bAnother thing of arbitrary type.
Returns
The lesser of the parameters.

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.

Parameters
__aA thing of arbitrary type.
__bAnother thing of arbitrary type.
Returns
The greater of the parameters.

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.

Parameters
__aA thing of arbitrary type.
__bAnother thing of arbitrary type.
__compA comparison functor.
Returns
The lesser of the parameters.

This will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.

This does what you think it does.

Parameters
__aA thing of arbitrary type.
__bAnother thing of arbitrary type.
__compA comparison functor.
Returns
The greater of the parameters.

This will work on temporary expressions, since they are only evaluated once, unlike a preprocessor macro.

Copies the range [first,last) into result.

Parameters
__firstAn input iterator.
__lastAn input iterator.
__resultAn output iterator.
Returns
result + (first - last)

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.

Parameters
__firstA bidirectional iterator.
__lastA bidirectional iterator.
__resultA bidirectional iterator.
Returns
result - (first - last)

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.

Parameters
__firstA forward iterator.
__lastA forward iterator.
__valueA reference-to-const of arbitrary type.
Returns
Nothing.

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.

Parameters
__firstAn output iterator.
__nThe count of copies to perform.
__valueA reference-to-const of arbitrary type.
Returns
The iterator at first+n.

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.

Parameters
__firstAn iterator.
__lastAnother iterator.
__valThe search term.
Returns
An iterator pointing to the first element not less than val, or end() if every element is less than val.

This is a helper function for the sort routines and for random.tcc.

Tests a range for element-wise equality.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
Returns
A boolean true or false.

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.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
__binary_predA binary predicate functor.
Returns
A boolean true or false.

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.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
__last2An input iterator.
Returns
A boolean true or false.

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.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
__last2An input iterator.
__compA comparison functor.
Returns
A boolean true or false.

The same as the four-parameter lexicographical_compare, but uses the comp parameter instead of <.

Finds the places in ranges which don't match.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
Returns
A pair of iterators pointing to the first mismatch.

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.

Parameters
__first1An input iterator.
__last1An input iterator.
__first2An input iterator.
__binary_predA binary predicate functor.
Returns
A pair of iterators pointing to the first mismatch.

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().

Here is the call graph for this function: