libstdc++
|
Modules | |
Iterator Tags | |
Namespaces | |
std::__detail | |
Macros | |
#define | __cpp_lib_make_reverse_iterator |
Functions | |
template<bool _IsMove, typename _CharT > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, ostreambuf_iterator< _CharT > >::__type | std::__copy_move_a2 (_CharT *__first, _CharT *__last, ostreambuf_iterator< _CharT > __result) |
template<bool _IsMove, typename _CharT > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, ostreambuf_iterator< _CharT > >::__type | std::__copy_move_a2 (const _CharT *__first, const _CharT *__last, ostreambuf_iterator< _CharT > __result) |
template<bool _IsMove, typename _CharT > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, _CharT * >::__type | std::__copy_move_a2 (istreambuf_iterator< _CharT > __first, istreambuf_iterator< _CharT > __last, _CharT *__result) |
template<typename _CharT , typename _Size > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, _CharT * >::__type | std::__copy_n_a (istreambuf_iterator< _CharT > __it, _Size __n, _CharT *__result, bool __strict) |
template<typename _Iter > | |
constexpr iterator_traits < _Iter >::iterator_category | std::__iterator_category (const _Iter &) |
template<typename _Iterator , typename _ReturnType = __conditional_t<__move_if_noexcept_cond <typename iterator_traits<_Iterator>::value_type>::value, _Iterator, move_iterator<_Iterator>>> | |
constexpr _ReturnType | std::__make_move_if_noexcept_iterator (_Iterator __i) |
template<typename _Tp , typename _ReturnType = __conditional_t<__move_if_noexcept_cond<_Tp>::value, const _Tp*, move_iterator<_Tp*>>> | |
constexpr _ReturnType | std::__make_move_if_noexcept_iterator (_Tp *__i) |
template<typename _Iterator > | |
constexpr reverse_iterator < _Iterator > | std::__make_reverse_iterator (_Iterator __i) |
template<typename _CharT , typename _Distance > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, void >::__type | std::advance (istreambuf_iterator< _CharT > &__i, _Distance __n) |
template<typename _Container > | |
constexpr back_insert_iterator < _Container > | std::back_inserter (_Container &__x) |
template<typename _CharT > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, ostreambuf_iterator< _CharT > >::__type | std::copy (istreambuf_iterator< _CharT > __first, istreambuf_iterator< _CharT > __last, ostreambuf_iterator< _CharT > __result) |
template<typename _CharT > | |
__gnu_cxx::__enable_if < __is_char< _CharT >::__value, istreambuf_iterator< _CharT > >::__type | std::find (istreambuf_iterator< _CharT > __first, istreambuf_iterator< _CharT > __last, const _CharT &__val) |
template<typename _Container > | |
constexpr front_insert_iterator < _Container > | std::front_inserter (_Container &__x) |
template<typename _Container > | |
constexpr insert_iterator < _Container > | std::inserter (_Container &__x, std::__detail::__range_iter_t< _Container > __i) |
template<typename _Iterator > | |
constexpr move_iterator < _Iterator > | std::make_move_iterator (_Iterator __i) |
template<typename _Iterator > | |
constexpr reverse_iterator < _Iterator > | std::make_reverse_iterator (_Iterator __i) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator!= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator!= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) |
template<typename _Iterator > | |
constexpr bool | std::operator!= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<typename _Iterator > | |
constexpr reverse_iterator < _Iterator > | std::operator+ (typename reverse_iterator< _Iterator >::difference_type __n, const reverse_iterator< _Iterator > &__x) |
template<typename _Iterator > | |
constexpr move_iterator < _Iterator > | std::operator+ (typename move_iterator< _Iterator >::difference_type __n, const move_iterator< _Iterator > &__x) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr auto | std::operator- (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) -> decltype(__y.base()-__x.base()) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr auto | std::operator- (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) -> decltype(__x.base()-__y.base()) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator< (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator< (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator< (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator<= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator<= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator<= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<typename _IteratorL , three_way_comparable_with< _IteratorL > _IteratorR> | |
constexpr compare_three_way_result_t < _IteratorL, _IteratorR > | std::operator<=> (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) |
template<three_way_comparable _Iterator> | |
constexpr compare_three_way_result_t < _Iterator, _Iterator > | std::operator<=> (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y) |
template<typename _CharT , typename _Traits > | |
bool | std::operator== (const istreambuf_iterator< _CharT, _Traits > &__a, const istreambuf_iterator< _CharT, _Traits > &__b) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator== (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator== (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator== (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator== (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator> (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator> (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator> (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator>= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) requires requires |
template<typename _IteratorL , typename _IteratorR > | |
constexpr bool | std::operator>= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) requires requires |
template<typename _Iterator > | |
constexpr bool | std::operator>= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) |
template<input_or_output_iterator _It, sentinel_for< _It > _Sent> | |
std::requires (!same_as< _It, _Sent >)&©able< _It > class common_iterator | |
Abstractions for uniform iterating through various underlying types.
|
inline |
This function is not a part of the C++ standard but is syntactic sugar for internal library use only.
Definition at line 238 of file stl_iterator_base_types.h.
Referenced by std::__find_if_not(), __gnu_debug::__valid_range_aux(), std::advance(), std::deque< _StateSeqT >::assign(), __gnu_cxx::copy_n(), std::copy_n(), std::deque< _StateSeqT >::deque(), __gnu_cxx::distance(), std::distance(), std::fill_n(), std::find_end(), std::deque< _StateSeqT >::insert(), std::partition(), std::reverse(), std::_V2::rotate(), __gnu_cxx::uninitialized_copy_n(), std::uninitialized_copy_n(), std::unique_copy(), and std::vector< block_type, allocator_type >::vector().
|
inline |
__x | A container of arbitrary type. |
__x
.This wrapper function helps in creating back_insert_iterator instances. Typing the name of the iterator requires knowing the precise full type of the container, which can be tedious and impedes generic programming. Using this function lets you take advantage of automatic template parameter deduction, making the compiler match the correct types for you.
Definition at line 781 of file bits/stl_iterator.h.
Referenced by std::match_results< _Bi_iter >::format(), and std::regex_replace().
|
inline |
__x | A container of arbitrary type. |
x
.This wrapper function helps in creating front_insert_iterator instances. Typing the name of the iterator requires knowing the precise full type of the container, which can be tedious and impedes generic programming. Using this function lets you take advantage of automatic template parameter deduction, making the compiler match the correct types for you.
Definition at line 882 of file bits/stl_iterator.h.
constexpr insert_iterator<_Container> std::inserter | ( | _Container & | __x, |
std::__detail::__range_iter_t< _Container > | __i | ||
) |
__x | A container of arbitrary type. |
__i | An iterator into the container. |
__x
.This wrapper function helps in creating insert_iterator instances. Typing the name of the iterator requires knowing the precise full type of the container, which can be tedious and impedes generic programming. Using this function lets you take advantage of automatic template parameter deduction, making the compiler match the correct types for you.
Definition at line 1016 of file bits/stl_iterator.h.
|
inline |
Generator function for reverse_iterator.
Definition at line 650 of file bits/stl_iterator.h.
constexpr bool std::operator== | ( | const reverse_iterator< _IteratorL > & | __x, |
const reverse_iterator< _IteratorR > & | __y | ||
) |
__x | A reverse_iterator. |
__y | A reverse_iterator. |
Reverse iterators forward comparisons to their underlying base() iterators.
Definition at line 530 of file bits/stl_iterator.h.
std::requires | ( | !same_as< _It, _Sent > | ) |
An iterator/sentinel adaptor for representing a non-common range.
Definition at line 1833 of file bits/stl_iterator.h.
References std::__addressof(), std::forward(), std::move(), and std::operator*().