libstdc++
Iterators
Collaboration diagram for Iterators:

Classes

class  std::back_insert_iterator< _Container >
 
class  std::front_insert_iterator< _Container >
 
class  std::insert_iterator< _Container >
 
class  std::istream_iterator< _Tp, _CharT, _Traits, _Dist >
 
class  std::istreambuf_iterator< _CharT, _Traits >
 
class  std::move_iterator< _Iterator >
 
class  std::ostream_iterator< _Tp, _CharT, _Traits >
 
class  std::ostreambuf_iterator< _CharT, _Traits >
 
class  std::reverse_iterator< _Iterator >
 

Macros

#define __cpp_lib_make_reverse_iterator
 

Typedefs

typedef __traits_type::reference std::move_iterator< _Iterator >::__base_ref
 
typedef iterator_traits< _Iterator > std::reverse_iterator< _Iterator >::__traits_type
 
typedef iterator_traits< _Iterator > __gnu_cxx::__normal_iterator< _Iterator, _Container >::__traits_type
 
typedef iterator_traits< _Iterator > std::move_iterator< _Iterator >::__traits_type
 
typedef __true_type std::__is_move_iterator< move_iterator< _Iterator > >::__type
 
typedef _CharT std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::char_type
 
typedef _CharT std::ostream_iterator< _Tp, _CharT, _Traits >::char_type
 
typedef _CharT std::istreambuf_iterator< _CharT, _Traits >::char_type
 
typedef _CharT std::ostreambuf_iterator< _CharT, _Traits >::char_type
 
typedef _Container std::back_insert_iterator< _Container >::container_type
 
typedef _Container std::front_insert_iterator< _Container >::container_type
 
typedef _Container std::insert_iterator< _Container >::container_type
 
typedef __traits_type::difference_type std::reverse_iterator< _Iterator >::difference_type
 
typedef __traits_type::difference_type __gnu_cxx::__normal_iterator< _Iterator, _Container >::difference_type
 
typedef __traits_type::difference_type std::move_iterator< _Iterator >::difference_type
 
typedef _Traits::int_type std::istreambuf_iterator< _CharT, _Traits >::int_type
 
typedef basic_istream< _CharT, _Traits > std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_type
 
typedef basic_istream< _CharT, _Traits > std::istreambuf_iterator< _CharT, _Traits >::istream_type
 
typedef __traits_type::iterator_category __gnu_cxx::__normal_iterator< _Iterator, _Container >::iterator_category
 
typedef __traits_type::iterator_category std::move_iterator< _Iterator >::iterator_category
 
typedef _Iterator std::reverse_iterator< _Iterator >::iterator_type
 
typedef _Iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::iterator_type
 
typedef _Iterator std::move_iterator< _Iterator >::iterator_type
 
typedef basic_ostream< _CharT, _Traits > std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_type
 
typedef basic_ostream< _CharT, _Traits > std::ostreambuf_iterator< _CharT, _Traits >::ostream_type
 
typedef __traits_type::pointer std::reverse_iterator< _Iterator >::pointer
 
typedef __traits_type::pointer __gnu_cxx::__normal_iterator< _Iterator, _Container >::pointer
 
typedef _Iterator std::move_iterator< _Iterator >::pointer
 
typedef __traits_type::reference std::reverse_iterator< _Iterator >::reference
 
typedef __traits_type::reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::reference
 
typedef conditional< is_reference< __base_ref >::value, typenameremove_reference< __base_ref >::type &&, __base_ref >::type std::move_iterator< _Iterator >::reference
 
typedef basic_streambuf< _CharT, _Traits > std::istreambuf_iterator< _CharT, _Traits >::streambuf_type
 
typedef basic_streambuf< _CharT, _Traits > std::ostreambuf_iterator< _CharT, _Traits >::streambuf_type
 
typedef _Traits std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::traits_type
 
typedef _Traits std::ostream_iterator< _Tp, _CharT, _Traits >::traits_type
 
typedef _Traits std::istreambuf_iterator< _CharT, _Traits >::traits_type
 
typedef _Traits std::ostreambuf_iterator< _CharT, _Traits >::traits_type
 
typedef __traits_type::value_type __gnu_cxx::__normal_iterator< _Iterator, _Container >::value_type
 
typedef __traits_type::value_type std::move_iterator< _Iterator >::value_type
 

Enumerations

enum  { __value }
 

Functions

template<typename _Iter >
 __gnu_cxx::__normal_iterator< _Iterator, _Container >::__normal_iterator (const __normal_iterator< _Iter, typename __enable_if<(std::__are_same< _Iter, typename _Container::pointer >::__value), _Container >::__type > &__i) noexcept
 
 __gnu_cxx::__normal_iterator< _Iterator, _Container >::__normal_iterator (const _Iterator &__i) noexcept
 
 std::back_insert_iterator< _Container >::back_insert_iterator (_Container &__x)
 
 std::front_insert_iterator< _Container >::front_insert_iterator (_Container &__x)
 
 std::insert_iterator< _Container >::insert_iterator (_Container &__x, typename _Container::iterator __i)
 
constexpr std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator ()
 
 std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator (const istream_iterator &__obj)
 
 std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator (istream_type &__s)
 
constexpr std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator () noexcept
 
 std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator (const istreambuf_iterator &) noexcept=default
 
 std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator (istream_type &__s) noexcept
 
 std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator (streambuf_type *__s) noexcept
 
template<typename _Iter >
 std::move_iterator< _Iterator >::move_iterator (const move_iterator< _Iter > &__i)
 
 std::move_iterator< _Iterator >::move_iterator (iterator_type __i)
 
 std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator (const ostream_iterator &__obj)
 
 std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator (ostream_type &__s)
 
 std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator (ostream_type &__s, const _CharT *__c)
 
 std::ostreambuf_iterator< _CharT, _Traits >::ostreambuf_iterator (ostream_type &__s) noexcept
 
 std::ostreambuf_iterator< _CharT, _Traits >::ostreambuf_iterator (streambuf_type *__s) noexcept
 
 std::reverse_iterator< _Iterator >::reverse_iterator ()
 
 std::reverse_iterator< _Iterator >::reverse_iterator (const reverse_iterator &__x)
 
template<typename _Iter >
 std::reverse_iterator< _Iterator >::reverse_iterator (const reverse_iterator< _Iter > &__x)
 
 std::reverse_iterator< _Iterator >::reverse_iterator (iterator_type __x)
 
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 _Iterator , typename _ReturnType = typename conditional<__move_if_noexcept_cond <typename iterator_traits<_Iterator>::value_type>::value, _Iterator, move_iterator<_Iterator>>::type>
_ReturnType std::__make_move_if_noexcept_iterator (_Iterator __i)
 
template<typename _Tp , typename _ReturnType = typename conditional<__move_if_noexcept_cond<_Tp>::value, const _Tp*, move_iterator<_Tp*>>::type>
_ReturnType std::__make_move_if_noexcept_iterator (_Tp *__i)
 
template<typename _Iterator >
reverse_iterator< _Iterator > std::__make_reverse_iterator (_Iterator __i)
 
template<typename _Iterator >
auto std::__miter_base (move_iterator< _Iterator > __it) -> decltype(__miter_base(__it.base()))
 
template<typename _Iterator >
auto std::__miter_base (reverse_iterator< _Iterator > __it) -> decltype(__make_reverse_iterator(__miter_base(__it.base())))
 
template<typename _Iterator , typename _Container >
_Iterator std::__niter_base (__gnu_cxx::__normal_iterator< _Iterator, _Container > __it)
 
template<typename _Iterator >
auto std::__niter_base (move_iterator< _Iterator > __it) -> decltype(make_move_iterator(__niter_base(__it.base())))
 
template<typename _Iterator >
auto std::__niter_base (reverse_iterator< _Iterator > __it) -> decltype(__make_reverse_iterator(__niter_base(__it.base())))
 
bool std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::_M_equal (const istream_iterator &__x) const
 
ostreambuf_iteratorstd::ostreambuf_iterator< _CharT, _Traits >::_M_put (const _CharT *__ws, streamsize __len)
 
template<typename _Container >
back_insert_iterator< _Container > std::back_inserter (_Container &__x)
 
iterator_type std::reverse_iterator< _Iterator >::base () const
 
iterator_type std::move_iterator< _Iterator >::base () const
 
const _Iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::base () const noexcept
 
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)
 
bool std::istreambuf_iterator< _CharT, _Traits >::equal (const istreambuf_iterator &__b) const
 
bool std::ostreambuf_iterator< _CharT, _Traits >::failed () const noexcept
 
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 >
front_insert_iterator< _Container > std::front_inserter (_Container &__x)
 
template<typename _Container , typename _Iterator >
insert_iterator< _Container > std::inserter (_Container &__x, _Iterator __i)
 
template<typename _Iterator >
move_iterator< _Iterator > std::make_move_iterator (_Iterator __i)
 
template<typename _Iterator >
reverse_iterator< _Iterator > std::make_reverse_iterator (_Iterator __i)
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator!= (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator!= (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<class _Tp , class _CharT , class _Traits , class _Dist >
bool std::operator!= (const istream_iterator< _Tp, _CharT, _Traits, _Dist > &__x, const istream_iterator< _Tp, _CharT, _Traits, _Dist > &__y)
 
template<typename _CharT , typename _Traits >
bool std::operator!= (const istreambuf_iterator< _CharT, _Traits > &__a, const istreambuf_iterator< _CharT, _Traits > &__b)
 
template<typename _Iterator >
bool std::operator!= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator!= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator!= (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator!= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
back_insert_iteratorstd::back_insert_iterator< _Container >::operator* ()
 
front_insert_iteratorstd::front_insert_iterator< _Container >::operator* ()
 
insert_iteratorstd::insert_iterator< _Container >::operator* ()
 
ostream_iteratorstd::ostream_iterator< _Tp, _CharT, _Traits >::operator* ()
 
ostreambuf_iteratorstd::ostreambuf_iterator< _CharT, _Traits >::operator* ()
 
reference std::reverse_iterator< _Iterator >::operator* () const
 
reference std::move_iterator< _Iterator >::operator* () const
 
const _Tp & std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator* () const
 
char_type std::istreambuf_iterator< _CharT, _Traits >::operator* () const
 
reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator* () const noexcept
 
reverse_iterator std::reverse_iterator< _Iterator >::operator+ (difference_type __n) const
 
move_iterator std::move_iterator< _Iterator >::operator+ (difference_type __n) const
 
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator+ (difference_type __n) const noexcept
 
template<typename _Iterator , typename _Container >
__normal_iterator< _Iterator, _Container > __gnu_cxx::operator+ (typename __normal_iterator< _Iterator, _Container >::difference_type __n, const __normal_iterator< _Iterator, _Container > &__i) noexcept
 
template<typename _Iterator >
move_iterator< _Iterator > std::operator+ (typename move_iterator< _Iterator >::difference_type __n, const move_iterator< _Iterator > &__x)
 
template<typename _Iterator >
reverse_iterator< _Iterator > std::operator+ (typename reverse_iterator< _Iterator >::difference_type __n, const reverse_iterator< _Iterator > &__x)
 
reverse_iteratorstd::reverse_iterator< _Iterator >::operator++ ()
 
back_insert_iteratorstd::back_insert_iterator< _Container >::operator++ ()
 
front_insert_iteratorstd::front_insert_iterator< _Container >::operator++ ()
 
insert_iteratorstd::insert_iterator< _Container >::operator++ ()
 
move_iteratorstd::move_iterator< _Iterator >::operator++ ()
 
istream_iteratorstd::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator++ ()
 
ostream_iteratorstd::ostream_iterator< _Tp, _CharT, _Traits >::operator++ ()
 
istreambuf_iteratorstd::istreambuf_iterator< _CharT, _Traits >::operator++ ()
 
ostreambuf_iteratorstd::ostreambuf_iterator< _CharT, _Traits >::operator++ ()
 
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator++ () noexcept
 
reverse_iterator std::reverse_iterator< _Iterator >::operator++ (int)
 
back_insert_iterator std::back_insert_iterator< _Container >::operator++ (int)
 
front_insert_iterator std::front_insert_iterator< _Container >::operator++ (int)
 
insert_iteratorstd::insert_iterator< _Container >::operator++ (int)
 
move_iterator std::move_iterator< _Iterator >::operator++ (int)
 
istream_iterator std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator++ (int)
 
ostream_iteratorstd::ostream_iterator< _Tp, _CharT, _Traits >::operator++ (int)
 
istreambuf_iterator std::istreambuf_iterator< _CharT, _Traits >::operator++ (int)
 
ostreambuf_iteratorstd::ostreambuf_iterator< _CharT, _Traits >::operator++ (int)
 
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator++ (int) noexcept
 
reverse_iteratorstd::reverse_iterator< _Iterator >::operator+= (difference_type __n)
 
move_iteratorstd::move_iterator< _Iterator >::operator+= (difference_type __n)
 
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator+= (difference_type __n) noexcept
 
template<typename _Iterator , typename _Container >
__normal_iterator< _Iterator, _Container >::difference_type __gnu_cxx::operator- (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
auto __gnu_cxx::operator- (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept -> decltype(__lhs.base() - __rhs.base())
 
template<typename _Iterator >
auto std::operator- (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y) -> decltype(__x.base() - __y.base())
 
template<typename _IteratorL , typename _IteratorR >
auto std::operator- (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y) -> decltype(__x.base() - __y.base())
 
template<typename _Iterator >
auto std::operator- (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y) -> decltype(__x.base() - __y.base())
 
template<typename _IteratorL , typename _IteratorR >
auto std::operator- (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y) -> decltype(__y.base() - __x.base())
 
reverse_iterator std::reverse_iterator< _Iterator >::operator- (difference_type __n) const
 
move_iterator std::move_iterator< _Iterator >::operator- (difference_type __n) const
 
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator- (difference_type __n) const noexcept
 
reverse_iteratorstd::reverse_iterator< _Iterator >::operator-- ()
 
move_iteratorstd::move_iterator< _Iterator >::operator-- ()
 
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-- () noexcept
 
reverse_iterator std::reverse_iterator< _Iterator >::operator-- (int)
 
move_iterator std::move_iterator< _Iterator >::operator-- (int)
 
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-- (int) noexcept
 
reverse_iteratorstd::reverse_iterator< _Iterator >::operator-= (difference_type __n)
 
move_iteratorstd::move_iterator< _Iterator >::operator-= (difference_type __n)
 
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-= (difference_type __n) noexcept
 
pointer std::reverse_iterator< _Iterator >::operator-> () const
 
pointer std::move_iterator< _Iterator >::operator-> () const
 
const _Tp * std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator-> () const
 
pointer __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-> () const noexcept
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator< (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator< (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<typename _Iterator >
bool std::operator< (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator< (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator< (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator< (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator<= (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator<= (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<typename _Iterator >
bool std::operator<= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator<= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator<= (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator<= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
ostreambuf_iteratorstd::ostreambuf_iterator< _CharT, _Traits >::operator= (_CharT __c)
 
ostream_iteratorstd::ostream_iterator< _Tp, _CharT, _Traits >::operator= (const _Tp &__value)
 
back_insert_iteratorstd::back_insert_iterator< _Container >::operator= (const typename _Container::value_type &__value)
 
front_insert_iteratorstd::front_insert_iterator< _Container >::operator= (const typename _Container::value_type &__value)
 
insert_iteratorstd::insert_iterator< _Container >::operator= (const typename _Container::value_type &__value)
 
back_insert_iteratorstd::back_insert_iterator< _Container >::operator= (typename _Container::value_type &&__value)
 
front_insert_iteratorstd::front_insert_iterator< _Container >::operator= (typename _Container::value_type &&__value)
 
insert_iteratorstd::insert_iterator< _Container >::operator= (typename _Container::value_type &&__value)
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator== (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator== (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<typename _Tp , typename _CharT , typename _Traits , typename _Dist >
bool std::operator== (const istream_iterator< _Tp, _CharT, _Traits, _Dist > &__x, const istream_iterator< _Tp, _CharT, _Traits, _Dist > &__y)
 
template<typename _CharT , typename _Traits >
bool std::operator== (const istreambuf_iterator< _CharT, _Traits > &__a, const istreambuf_iterator< _CharT, _Traits > &__b)
 
template<typename _Iterator >
bool std::operator== (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator== (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator== (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator== (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator> (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator> (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<typename _Iterator >
bool std::operator> (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator> (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator> (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator> (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator>= (const __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
 
template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator>= (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator< _IteratorR, _Container > &__rhs) noexcept
 
template<typename _Iterator >
bool std::operator>= (const move_iterator< _Iterator > &__x, const move_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator>= (const move_iterator< _IteratorL > &__x, const move_iterator< _IteratorR > &__y)
 
template<typename _Iterator >
bool std::operator>= (const reverse_iterator< _Iterator > &__x, const reverse_iterator< _Iterator > &__y)
 
template<typename _IteratorL , typename _IteratorR >
bool std::operator>= (const reverse_iterator< _IteratorL > &__x, const reverse_iterator< _IteratorR > &__y)
 
reference std::reverse_iterator< _Iterator >::operator[] (difference_type __n) const
 
reference std::move_iterator< _Iterator >::operator[] (difference_type __n) const
 
reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator[] (difference_type __n) const noexcept
 

Variables

_Iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::_M_current
 
_Iterator std::move_iterator< _Iterator >::_M_current
 
_Container * std::back_insert_iterator< _Container >::container
 
_Container * std::front_insert_iterator< _Container >::container
 
_Container * std::insert_iterator< _Container >::container
 
_Iterator std::reverse_iterator< _Iterator >::current
 
_Container::iterator std::insert_iterator< _Container >::iter
 

Friends

template<bool _IsMove, typename _CharT2 >
__gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, _CharT2 * >::__type std::istreambuf_iterator< _CharT, _Traits >::__copy_move_a2 (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, _CharT2 *)
 
template<typename _CharT2 >
__gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, ostreambuf_iterator< _CharT2 > >::__type std::istreambuf_iterator< _CharT, _Traits >::copy (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, ostreambuf_iterator< _CharT2 >)
 
template<typename _CharT2 >
__gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, ostreambuf_iterator< _CharT2 > >::__type std::ostreambuf_iterator< _CharT, _Traits >::copy (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, ostreambuf_iterator< _CharT2 >)
 
template<typename _CharT2 >
__gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, istreambuf_iterator< _CharT2 > >::__type std::istreambuf_iterator< _CharT, _Traits >::find (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, const _CharT2 &)
 

Detailed Description

Abstractions for uniform iterating through various underlying types.

Macro Definition Documentation

◆ __cpp_lib_make_reverse_iterator

#define __cpp_lib_make_reverse_iterator

Definition at line 409 of file bits/stl_iterator.h.

Typedef Documentation

◆ __base_ref

template<typename _Iterator >
typedef __traits_type::reference std::move_iterator< _Iterator >::__base_ref
protected

Definition at line 1016 of file bits/stl_iterator.h.

◆ __traits_type [1/3]

template<typename _Iterator >
typedef iterator_traits<_Iterator> std::reverse_iterator< _Iterator >::__traits_type
protected

Definition at line 107 of file bits/stl_iterator.h.

◆ __traits_type [2/3]

template<typename _Iterator , typename _Container >
typedef iterator_traits<_Iterator> __gnu_cxx::__normal_iterator< _Iterator, _Container >::__traits_type
protected

Definition at line 765 of file bits/stl_iterator.h.

◆ __traits_type [3/3]

template<typename _Iterator >
typedef iterator_traits<_Iterator> std::move_iterator< _Iterator >::__traits_type
protected

Definition at line 1015 of file bits/stl_iterator.h.

◆ __type

template<typename _Iterator >
typedef __true_type std::__is_move_iterator< move_iterator< _Iterator > >::__type

Definition at line 1241 of file bits/stl_iterator.h.

◆ char_type [1/4]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
typedef _CharT std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::char_type

Definition at line 53 of file stream_iterator.h.

◆ char_type [2/4]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
typedef _CharT std::ostream_iterator< _Tp, _CharT, _Traits >::char_type

Public typedef.

Definition at line 160 of file stream_iterator.h.

◆ char_type [3/4]

template<typename _CharT , typename _Traits >
typedef _CharT std::istreambuf_iterator< _CharT, _Traits >::char_type

Public typedefs.

Definition at line 64 of file streambuf_iterator.h.

◆ char_type [4/4]

template<typename _CharT , typename _Traits >
typedef _CharT std::ostreambuf_iterator< _CharT, _Traits >::char_type

Public typedefs.

Definition at line 223 of file streambuf_iterator.h.

◆ container_type [1/3]

template<typename _Container >
typedef _Container std::back_insert_iterator< _Container >::container_type

A nested typedef for the type of whatever container you used.

Definition at line 460 of file bits/stl_iterator.h.

◆ container_type [2/3]

template<typename _Container >
typedef _Container std::front_insert_iterator< _Container >::container_type

A nested typedef for the type of whatever container you used.

Definition at line 552 of file bits/stl_iterator.h.

◆ container_type [3/3]

template<typename _Container >
typedef _Container std::insert_iterator< _Container >::container_type

A nested typedef for the type of whatever container you used.

Definition at line 648 of file bits/stl_iterator.h.

◆ difference_type [1/3]

template<typename _Iterator >
typedef __traits_type::difference_type std::reverse_iterator< _Iterator >::difference_type

Definition at line 111 of file bits/stl_iterator.h.

◆ difference_type [2/3]

template<typename _Iterator , typename _Container >
typedef __traits_type::difference_type __gnu_cxx::__normal_iterator< _Iterator, _Container >::difference_type

Definition at line 771 of file bits/stl_iterator.h.

◆ difference_type [3/3]

template<typename _Iterator >
typedef __traits_type::difference_type std::move_iterator< _Iterator >::difference_type

Definition at line 1022 of file bits/stl_iterator.h.

◆ int_type

template<typename _CharT , typename _Traits >
typedef _Traits::int_type std::istreambuf_iterator< _CharT, _Traits >::int_type

Definition at line 66 of file streambuf_iterator.h.

◆ istream_type [1/2]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
typedef basic_istream<_CharT, _Traits> std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_type

Definition at line 55 of file stream_iterator.h.

◆ istream_type [2/2]

template<typename _CharT , typename _Traits >
typedef basic_istream<_CharT, _Traits> std::istreambuf_iterator< _CharT, _Traits >::istream_type

Definition at line 68 of file streambuf_iterator.h.

◆ iterator_category [1/2]

template<typename _Iterator , typename _Container >
typedef __traits_type::iterator_category __gnu_cxx::__normal_iterator< _Iterator, _Container >::iterator_category

Definition at line 769 of file bits/stl_iterator.h.

◆ iterator_category [2/2]

template<typename _Iterator >
typedef __traits_type::iterator_category std::move_iterator< _Iterator >::iterator_category

Definition at line 1020 of file bits/stl_iterator.h.

◆ iterator_type [1/3]

template<typename _Iterator >
typedef _Iterator std::reverse_iterator< _Iterator >::iterator_type

Definition at line 110 of file bits/stl_iterator.h.

◆ iterator_type [2/3]

template<typename _Iterator , typename _Container >
typedef _Iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::iterator_type

Definition at line 768 of file bits/stl_iterator.h.

◆ iterator_type [3/3]

template<typename _Iterator >
typedef _Iterator std::move_iterator< _Iterator >::iterator_type

Definition at line 1019 of file bits/stl_iterator.h.

◆ ostream_type [1/2]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
typedef basic_ostream<_CharT, _Traits> std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_type

Definition at line 162 of file stream_iterator.h.

◆ ostream_type [2/2]

template<typename _CharT , typename _Traits >
typedef basic_ostream<_CharT, _Traits> std::ostreambuf_iterator< _CharT, _Traits >::ostream_type

Definition at line 226 of file streambuf_iterator.h.

◆ pointer [1/3]

template<typename _Iterator >
typedef __traits_type::pointer std::reverse_iterator< _Iterator >::pointer

Definition at line 112 of file bits/stl_iterator.h.

◆ pointer [2/3]

template<typename _Iterator , typename _Container >
typedef __traits_type::pointer __gnu_cxx::__normal_iterator< _Iterator, _Container >::pointer

Definition at line 773 of file bits/stl_iterator.h.

◆ pointer [3/3]

template<typename _Iterator >
typedef _Iterator std::move_iterator< _Iterator >::pointer

Definition at line 1024 of file bits/stl_iterator.h.

◆ reference [1/3]

template<typename _Iterator >
typedef __traits_type::reference std::reverse_iterator< _Iterator >::reference

Definition at line 113 of file bits/stl_iterator.h.

◆ reference [2/3]

template<typename _Iterator , typename _Container >
typedef __traits_type::reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::reference

Definition at line 772 of file bits/stl_iterator.h.

◆ reference [3/3]

template<typename _Iterator >
typedef conditional<is_reference<__base_ref>::value,typenameremove_reference<__base_ref>::type&&,__base_ref>::type std::move_iterator< _Iterator >::reference

Definition at line 1029 of file bits/stl_iterator.h.

◆ streambuf_type [1/2]

template<typename _CharT , typename _Traits >
typedef basic_streambuf<_CharT, _Traits> std::istreambuf_iterator< _CharT, _Traits >::streambuf_type

Definition at line 67 of file streambuf_iterator.h.

◆ streambuf_type [2/2]

template<typename _CharT , typename _Traits >
typedef basic_streambuf<_CharT, _Traits> std::ostreambuf_iterator< _CharT, _Traits >::streambuf_type

Definition at line 225 of file streambuf_iterator.h.

◆ traits_type [1/4]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
typedef _Traits std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::traits_type

Definition at line 54 of file stream_iterator.h.

◆ traits_type [2/4]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
typedef _Traits std::ostream_iterator< _Tp, _CharT, _Traits >::traits_type

Definition at line 161 of file stream_iterator.h.

◆ traits_type [3/4]

template<typename _CharT , typename _Traits >
typedef _Traits std::istreambuf_iterator< _CharT, _Traits >::traits_type

Definition at line 65 of file streambuf_iterator.h.

◆ traits_type [4/4]

template<typename _CharT , typename _Traits >
typedef _Traits std::ostreambuf_iterator< _CharT, _Traits >::traits_type

Definition at line 224 of file streambuf_iterator.h.

◆ value_type [1/2]

template<typename _Iterator , typename _Container >
typedef __traits_type::value_type __gnu_cxx::__normal_iterator< _Iterator, _Container >::value_type

Definition at line 770 of file bits/stl_iterator.h.

◆ value_type [2/2]

template<typename _Iterator >
typedef __traits_type::value_type std::move_iterator< _Iterator >::value_type

Definition at line 1021 of file bits/stl_iterator.h.

Enumeration Type Documentation

◆ anonymous enum

template<typename _Iterator >
anonymous enum

Definition at line 1240 of file bits/stl_iterator.h.

Function Documentation

◆ __normal_iterator() [1/3]

template<typename _Iterator , typename _Container >
constexpr __gnu_cxx::__normal_iterator< _Iterator, _Container >::__normal_iterator ( )
inlineconstexprnoexcept

Definition at line 775 of file bits/stl_iterator.h.

◆ __normal_iterator() [2/3]

template<typename _Iterator , typename _Container >
template<typename _Iter >
__gnu_cxx::__normal_iterator< _Iterator, _Container >::__normal_iterator ( const __normal_iterator< _Iter, typename __enable_if<(std::__are_same< _Iter, typename _Container::pointer >::__value), _Container >::__type  ,
__i 
)
inlinenoexcept

Definition at line 784 of file bits/stl_iterator.h.

◆ __normal_iterator() [3/3]

template<typename _Iterator , typename _Container >
__gnu_cxx::__normal_iterator< _Iterator, _Container >::__normal_iterator ( const _Iterator &  __i)
inlineexplicitnoexcept

Definition at line 779 of file bits/stl_iterator.h.

◆ back_insert_iterator()

template<typename _Container >
std::back_insert_iterator< _Container >::back_insert_iterator ( _Container &  __x)
inlineexplicit

The only way to create this iterator is with a container.

Definition at line 464 of file bits/stl_iterator.h.

◆ front_insert_iterator()

template<typename _Container >
std::front_insert_iterator< _Container >::front_insert_iterator ( _Container &  __x)
inlineexplicit

The only way to create this iterator is with a container.

Definition at line 555 of file bits/stl_iterator.h.

◆ insert_iterator()

template<typename _Container >
std::insert_iterator< _Container >::insert_iterator ( _Container &  __x,
typename _Container::iterator  __i 
)
inline

The only way to create this iterator is with a container and an initial position (a normal iterator into the container).

Definition at line 654 of file bits/stl_iterator.h.

◆ istream_iterator() [1/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
constexpr std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator ( )
inlineconstexpr

Construct end of input stream iterator.

Definition at line 64 of file stream_iterator.h.

◆ istream_iterator() [2/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator ( const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __obj)
inline

Definition at line 72 of file stream_iterator.h.

◆ istream_iterator() [3/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::istream_iterator ( istream_type __s)
inline

Construct start of input stream iterator.

Definition at line 68 of file stream_iterator.h.

◆ istreambuf_iterator() [1/3]

template<typename _CharT , typename _Traits >
constexpr std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator ( )
inlineconstexprnoexcept

Construct end of input stream iterator.

Definition at line 102 of file streambuf_iterator.h.

◆ istreambuf_iterator() [2/3]

template<typename _CharT , typename _Traits >
std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator ( istream_type __s)
inlinenoexcept

Construct start of input stream iterator.

Definition at line 112 of file streambuf_iterator.h.

◆ istreambuf_iterator() [3/3]

template<typename _CharT , typename _Traits >
std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator ( streambuf_type __s)
inlinenoexcept

Construct start of streambuf iterator.

Definition at line 116 of file streambuf_iterator.h.

◆ move_iterator() [1/3]

template<typename _Iterator >
std::move_iterator< _Iterator >::move_iterator ( )
inline

Definition at line 1031 of file bits/stl_iterator.h.

◆ move_iterator() [2/3]

template<typename _Iterator >
template<typename _Iter >
std::move_iterator< _Iterator >::move_iterator ( const move_iterator< _Iter > &  __i)
inline

Definition at line 1039 of file bits/stl_iterator.h.

◆ move_iterator() [3/3]

template<typename _Iterator >
std::move_iterator< _Iterator >::move_iterator ( iterator_type  __i)
inlineexplicit

Definition at line 1035 of file bits/stl_iterator.h.

◆ ostream_iterator() [1/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator ( const ostream_iterator< _Tp, _CharT, _Traits > &  __obj)
inline

Copy constructor.

Definition at line 187 of file stream_iterator.h.

◆ ostream_iterator() [2/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator ( ostream_type __s)
inline

Construct from an ostream.

Definition at line 171 of file stream_iterator.h.

◆ ostream_iterator() [3/3]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator ( ostream_type __s,
const _CharT *  __c 
)
inline

Construct from an ostream.

The delimiter string c is written to the stream after every Tp written to the stream. The delimiter is not copied, and thus must not be destroyed while this iterator is in use.

Parameters
__sUnderlying ostream to write to.
__cCharT delimiter string to insert.

Definition at line 183 of file stream_iterator.h.

◆ ostreambuf_iterator() [1/2]

template<typename _CharT , typename _Traits >
std::ostreambuf_iterator< _CharT, _Traits >::ostreambuf_iterator ( ostream_type __s)
inlinenoexcept

Construct output iterator from ostream.

Definition at line 241 of file streambuf_iterator.h.

◆ ostreambuf_iterator() [2/2]

template<typename _CharT , typename _Traits >
std::ostreambuf_iterator< _CharT, _Traits >::ostreambuf_iterator ( streambuf_type __s)
inlinenoexcept

Construct output iterator from streambuf.

Definition at line 245 of file streambuf_iterator.h.

◆ reverse_iterator() [1/4]

template<typename _Iterator >
std::reverse_iterator< _Iterator >::reverse_iterator ( )
inline

The default constructor value-initializes member current. If it is a pointer, that means it is zero-initialized.

Definition at line 122 of file bits/stl_iterator.h.

Referenced by std::reverse_iterator< _Iterator >::operator+(), and std::reverse_iterator< _Iterator >::operator-().

◆ reverse_iterator() [2/4]

template<typename _Iterator >
std::reverse_iterator< _Iterator >::reverse_iterator ( const reverse_iterator< _Iterator > &  __x)
inline

The copy constructor is normal.

Definition at line 133 of file bits/stl_iterator.h.

◆ reverse_iterator() [3/4]

template<typename _Iterator >
template<typename _Iter >
std::reverse_iterator< _Iterator >::reverse_iterator ( const reverse_iterator< _Iter > &  __x)
inline

A reverse_iterator across other types can be copied if the underlying iterator can be converted to the type of current.

Definition at line 141 of file bits/stl_iterator.h.

◆ reverse_iterator() [4/4]

template<typename _Iterator >
std::reverse_iterator< _Iterator >::reverse_iterator ( iterator_type  __x)
inlineexplicit

This iterator will move in the opposite direction that x does.

Definition at line 128 of file bits/stl_iterator.h.

◆ __copy_move_a2() [1/3]

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 
)

Definition at line 310 of file streambuf_iterator.h.

◆ __copy_move_a2() [2/3]

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 
)

Definition at line 322 of file streambuf_iterator.h.

◆ __copy_move_a2() [3/3]

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 
)

Definition at line 334 of file streambuf_iterator.h.

◆ __make_move_if_noexcept_iterator() [1/2]

template<typename _Iterator , typename _ReturnType = typename conditional<__move_if_noexcept_cond <typename iterator_traits<_Iterator>::value_type>::value, _Iterator, move_iterator<_Iterator>>::type>
_ReturnType std::__make_move_if_noexcept_iterator ( _Iterator  __i)
inline

Definition at line 1217 of file bits/stl_iterator.h.

◆ __make_move_if_noexcept_iterator() [2/2]

template<typename _Tp , typename _ReturnType = typename conditional<__move_if_noexcept_cond<_Tp>::value, const _Tp*, move_iterator<_Tp*>>::type>
_ReturnType std::__make_move_if_noexcept_iterator ( _Tp *  __i)
inline

Definition at line 1226 of file bits/stl_iterator.h.

◆ __make_reverse_iterator()

template<typename _Iterator >
reverse_iterator< _Iterator > std::__make_reverse_iterator ( _Iterator  __i)
inline

Definition at line 405 of file bits/stl_iterator.h.

◆ __miter_base() [1/2]

template<typename _Iterator >
auto std::__miter_base ( move_iterator< _Iterator >  __it) -> decltype(__miter_base(__it.base()))

Definition at line 1246 of file bits/stl_iterator.h.

◆ __miter_base() [2/2]

template<typename _Iterator >
auto std::__miter_base ( reverse_iterator< _Iterator >  __it) -> decltype(__make_reverse_iterator(__miter_base(__it.base())))

Definition at line 435 of file bits/stl_iterator.h.

◆ __niter_base() [1/3]

template<typename _Iterator , typename _Container >
_Iterator std::__niter_base ( __gnu_cxx::__normal_iterator< _Iterator, _Container >  __it)

Definition at line 983 of file bits/stl_iterator.h.

◆ __niter_base() [2/3]

template<typename _Iterator >
auto std::__niter_base ( move_iterator< _Iterator >  __it) -> decltype(make_move_iterator(__niter_base(__it.base())))

Definition at line 1233 of file bits/stl_iterator.h.

◆ __niter_base() [3/3]

template<typename _Iterator >
auto std::__niter_base ( reverse_iterator< _Iterator >  __it) -> decltype(__make_reverse_iterator(__niter_base(__it.base())))

Definition at line 424 of file bits/stl_iterator.h.

◆ _M_equal()

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
bool std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::_M_equal ( const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __x) const
inline

Definition at line 111 of file stream_iterator.h.

◆ _M_put()

template<typename _CharT , typename _Traits >
ostreambuf_iterator & std::ostreambuf_iterator< _CharT, _Traits >::_M_put ( const _CharT *  __ws,
streamsize  __len 
)
inline

Definition at line 279 of file streambuf_iterator.h.

◆ back_inserter()

template<typename _Container >
back_insert_iterator< _Container > std::back_inserter ( _Container &  __x)
inline
Parameters
__xA container of arbitrary type.
Returns
An instance of back_insert_iterator working on __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 530 of file bits/stl_iterator.h.

Referenced by std::match_results< _Bi_iter, _Alloc >::format(), std::match_results< _Bi_iter, _Alloc >::format(), std::regex_replace(), std::regex_replace(), std::regex_replace(), and std::regex_replace().

◆ base() [1/3]

template<typename _Iterator >
iterator_type std::reverse_iterator< _Iterator >::base ( ) const
inline
Returns
current, the iterator used for underlying work.

Definition at line 148 of file bits/stl_iterator.h.

◆ base() [2/3]

template<typename _Iterator >
iterator_type std::move_iterator< _Iterator >::base ( ) const
inline

Definition at line 1043 of file bits/stl_iterator.h.

◆ base() [3/3]

template<typename _Iterator , typename _Container >
const _Iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::base ( ) const
inlinenoexcept

Definition at line 844 of file bits/stl_iterator.h.

◆ copy()

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 
)

Definition at line 293 of file streambuf_iterator.h.

◆ equal()

template<typename _CharT , typename _Traits >
bool std::istreambuf_iterator< _CharT, _Traits >::equal ( const istreambuf_iterator< _CharT, _Traits > &  __b) const
inline

Return true both iterators are end or both are not end.

Definition at line 172 of file streambuf_iterator.h.

◆ failed()

template<typename _CharT , typename _Traits >
bool std::ostreambuf_iterator< _CharT, _Traits >::failed ( ) const
inlinenoexcept

Return true if previous operator=() failed.

Definition at line 275 of file streambuf_iterator.h.

◆ find()

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 
)

Definition at line 369 of file streambuf_iterator.h.

◆ front_inserter()

template<typename _Container >
front_insert_iterator< _Container > std::front_inserter ( _Container &  __x)
inline
Parameters
__xA container of arbitrary type.
Returns
An instance of front_insert_iterator working on 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 621 of file bits/stl_iterator.h.

◆ inserter()

template<typename _Container , typename _Iterator >
insert_iterator< _Container > std::inserter ( _Container &  __x,
_Iterator  __i 
)
inline
Parameters
__xA container of arbitrary type.
Returns
An instance of insert_iterator working on __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 735 of file bits/stl_iterator.h.

◆ make_move_iterator()

template<typename _Iterator >
move_iterator< _Iterator > std::make_move_iterator ( _Iterator  __i)
inline

Definition at line 1209 of file bits/stl_iterator.h.

◆ make_reverse_iterator()

template<typename _Iterator >
reverse_iterator< _Iterator > std::make_reverse_iterator ( _Iterator  __i)
inline

Generator function for reverse_iterator.

Definition at line 416 of file bits/stl_iterator.h.

◆ operator!=() [1/8]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator!= ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 880 of file bits/stl_iterator.h.

◆ operator!=() [2/8]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator!= ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 873 of file bits/stl_iterator.h.

◆ operator!=() [3/8]

template<class _Tp , class _CharT , class _Traits , class _Dist >
bool std::operator!= ( const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __x,
const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __y 
)
inline

Return false if x and y are both end or not end, or x and y are the same.

Definition at line 137 of file stream_iterator.h.

◆ operator!=() [4/8]

template<typename _CharT , typename _Traits >
bool std::operator!= ( const istreambuf_iterator< _CharT, _Traits > &  __a,
const istreambuf_iterator< _CharT, _Traits > &  __b 
)
inline

Definition at line 210 of file streambuf_iterator.h.

◆ operator!=() [5/8]

template<typename _Iterator >
bool std::operator!= ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1134 of file bits/stl_iterator.h.

◆ operator!=() [6/8]

bool std::operator!= ( const move_iterator< _IteratorL > &  __x,
const move_iterator< _IteratorR > &  __y 
)
inline

Definition at line 1128 of file bits/stl_iterator.h.

◆ operator!=() [7/8]

template<typename _Iterator >
bool std::operator!= ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline

Definition at line 307 of file bits/stl_iterator.h.

◆ operator!=() [8/8]

bool std::operator!= ( const reverse_iterator< _IteratorL > &  __x,
const reverse_iterator< _IteratorR > &  __y 
)
inline

Definition at line 364 of file bits/stl_iterator.h.

◆ operator*() [1/10]

template<typename _Container >
back_insert_iterator & std::back_insert_iterator< _Container >::operator* ( )
inline

Simply returns *this.

Definition at line 503 of file bits/stl_iterator.h.

◆ operator*() [2/10]

template<typename _Container >
front_insert_iterator & std::front_insert_iterator< _Container >::operator* ( )
inline

Simply returns *this.

Definition at line 594 of file bits/stl_iterator.h.

◆ operator*() [3/10]

template<typename _Container >
insert_iterator & std::insert_iterator< _Container >::operator* ( )
inline

Simply returns *this.

Definition at line 708 of file bits/stl_iterator.h.

◆ operator*() [4/10]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
ostream_iterator & std::ostream_iterator< _Tp, _CharT, _Traits >::operator* ( )
inline

Definition at line 204 of file stream_iterator.h.

◆ operator*() [5/10]

template<typename _CharT , typename _Traits >
ostreambuf_iterator & std::ostreambuf_iterator< _CharT, _Traits >::operator* ( )
inline

Return *this.

Definition at line 260 of file streambuf_iterator.h.

◆ operator*() [6/10]

template<typename _Iterator >
reference std::reverse_iterator< _Iterator >::operator* ( ) const
inline
Returns
A reference to the value at –current

This requires that –current is dereferenceable.

Warning
This implementation requires that for an iterator of the underlying iterator type, x, a reference obtained by *x remains valid after x has been modified or destroyed. This is a bug: http://gcc.gnu.org/PR51823

Definition at line 162 of file bits/stl_iterator.h.

◆ operator*() [7/10]

template<typename _Iterator >
reference std::move_iterator< _Iterator >::operator* ( ) const
inline

Definition at line 1047 of file bits/stl_iterator.h.

◆ operator*() [8/10]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
const _Tp & std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator* ( ) const
inline

Definition at line 78 of file stream_iterator.h.

◆ operator*() [9/10]

template<typename _CharT , typename _Traits >
char_type std::istreambuf_iterator< _CharT, _Traits >::operator* ( ) const
inline

Return the current character pointed to by iterator. This returns streambuf.sgetc(). It cannot be assigned. NB: The result of operator*() on an end of stream is undefined.

Definition at line 123 of file streambuf_iterator.h.

◆ operator*() [10/10]

template<typename _Iterator , typename _Container >
reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator* ( ) const
inlinenoexcept

Definition at line 792 of file bits/stl_iterator.h.

◆ operator+() [1/6]

template<typename _Iterator >
reverse_iterator std::reverse_iterator< _Iterator >::operator+ ( difference_type  __n) const
inline
Returns
A reverse_iterator that refers to current - __n

The underlying iterator must be a Random Access Iterator.

Definition at line 235 of file bits/stl_iterator.h.

References std::reverse_iterator< _Iterator >::reverse_iterator().

◆ operator+() [2/6]

template<typename _Iterator >
move_iterator std::move_iterator< _Iterator >::operator+ ( difference_type  __n) const
inline

Definition at line 1085 of file bits/stl_iterator.h.

◆ operator+() [3/6]

template<typename _Iterator , typename _Container >
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator+ ( difference_type  __n) const
inlinenoexcept

Definition at line 832 of file bits/stl_iterator.h.

◆ operator+() [4/6]

template<typename _Iterator , typename _Container >
__normal_iterator< _Iterator, _Container > __gnu_cxx::operator+ ( typename __normal_iterator< _Iterator, _Container >::difference_type  __n,
const __normal_iterator< _Iterator, _Container > &  __i 
)
inlinenoexcept

Definition at line 969 of file bits/stl_iterator.h.

◆ operator+() [5/6]

template<typename _Iterator >
move_iterator< _Iterator > std::operator+ ( typename move_iterator< _Iterator >::difference_type  __n,
const move_iterator< _Iterator > &  __x 
)
inline

Definition at line 1203 of file bits/stl_iterator.h.

◆ operator+() [6/6]

template<typename _Iterator >
reverse_iterator< _Iterator > std::operator+ ( typename reverse_iterator< _Iterator >::difference_type  __n,
const reverse_iterator< _Iterator > &  __x 
)
inline

Definition at line 344 of file bits/stl_iterator.h.

◆ operator++() [1/20]

template<typename _Iterator >
reverse_iterator & std::reverse_iterator< _Iterator >::operator++ ( )
inline
Returns
*this

Decrements the underlying iterator.

Definition at line 185 of file bits/stl_iterator.h.

◆ operator++() [2/20]

template<typename _Container >
back_insert_iterator & std::back_insert_iterator< _Container >::operator++ ( )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 508 of file bits/stl_iterator.h.

◆ operator++() [3/20]

template<typename _Container >
front_insert_iterator & std::front_insert_iterator< _Container >::operator++ ( )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 599 of file bits/stl_iterator.h.

◆ operator++() [4/20]

template<typename _Container >
insert_iterator & std::insert_iterator< _Container >::operator++ ( )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 713 of file bits/stl_iterator.h.

◆ operator++() [5/20]

template<typename _Iterator >
move_iterator & std::move_iterator< _Iterator >::operator++ ( )
inline

Definition at line 1055 of file bits/stl_iterator.h.

◆ operator++() [6/20]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
istream_iterator & std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator++ ( )
inline

Definition at line 90 of file stream_iterator.h.

◆ operator++() [7/20]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
ostream_iterator & std::ostream_iterator< _Tp, _CharT, _Traits >::operator++ ( )
inline

Definition at line 208 of file stream_iterator.h.

◆ operator++() [8/20]

template<typename _CharT , typename _Traits >
istreambuf_iterator & std::istreambuf_iterator< _CharT, _Traits >::operator++ ( )
inline

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 137 of file streambuf_iterator.h.

◆ operator++() [9/20]

template<typename _CharT , typename _Traits >
ostreambuf_iterator & std::ostreambuf_iterator< _CharT, _Traits >::operator++ ( )
inline

Return *this.

Definition at line 270 of file streambuf_iterator.h.

◆ operator++() [10/20]

template<typename _Iterator , typename _Container >
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator++ ( )
inlinenoexcept

Definition at line 800 of file bits/stl_iterator.h.

◆ operator++() [11/20]

template<typename _Iterator >
reverse_iterator std::reverse_iterator< _Iterator >::operator++ ( int  )
inline
Returns
The original value of *this

Decrements the underlying iterator.

Definition at line 197 of file bits/stl_iterator.h.

◆ operator++() [12/20]

template<typename _Container >
back_insert_iterator std::back_insert_iterator< _Container >::operator++ ( int  )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 513 of file bits/stl_iterator.h.

◆ operator++() [13/20]

template<typename _Container >
front_insert_iterator std::front_insert_iterator< _Container >::operator++ ( int  )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 604 of file bits/stl_iterator.h.

◆ operator++() [14/20]

template<typename _Container >
insert_iterator & std::insert_iterator< _Container >::operator++ ( int  )
inline

Simply returns *this. (This iterator does not move.)

Definition at line 718 of file bits/stl_iterator.h.

◆ operator++() [15/20]

template<typename _Iterator >
move_iterator std::move_iterator< _Iterator >::operator++ ( int  )
inline

Definition at line 1062 of file bits/stl_iterator.h.

◆ operator++() [16/20]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
istream_iterator std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator++ ( int  )
inline

Definition at line 100 of file stream_iterator.h.

◆ operator++() [17/20]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
ostream_iterator & std::ostream_iterator< _Tp, _CharT, _Traits >::operator++ ( int  )
inline

Definition at line 212 of file stream_iterator.h.

◆ operator++() [18/20]

template<typename _CharT , typename _Traits >
istreambuf_iterator std::istreambuf_iterator< _CharT, _Traits >::operator++ ( int  )
inline

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 152 of file streambuf_iterator.h.

◆ operator++() [19/20]

template<typename _CharT , typename _Traits >
ostreambuf_iterator & std::ostreambuf_iterator< _CharT, _Traits >::operator++ ( int  )
inline

Return *this.

Definition at line 265 of file streambuf_iterator.h.

◆ operator++() [20/20]

template<typename _Iterator , typename _Container >
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator++ ( int  )
inlinenoexcept

Definition at line 807 of file bits/stl_iterator.h.

◆ operator+=() [1/3]

template<typename _Iterator >
reverse_iterator & std::reverse_iterator< _Iterator >::operator+= ( difference_type  __n)
inline
Returns
*this

Moves the underlying iterator backwards __n steps. The underlying iterator must be a Random Access Iterator.

Definition at line 245 of file bits/stl_iterator.h.

◆ operator+=() [2/3]

template<typename _Iterator >
move_iterator & std::move_iterator< _Iterator >::operator+= ( difference_type  __n)
inline

Definition at line 1089 of file bits/stl_iterator.h.

◆ operator+=() [3/3]

template<typename _Iterator , typename _Container >
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator+= ( difference_type  __n)
inlinenoexcept

Definition at line 828 of file bits/stl_iterator.h.

◆ operator-() [1/9]

template<typename _Iterator , typename _Container >
__normal_iterator< _Iterator, _Container >::difference_type __gnu_cxx::operator- ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 962 of file bits/stl_iterator.h.

◆ operator-() [2/9]

template<typename _IteratorL , typename _IteratorR , typename _Container >
auto __gnu_cxx::operator- ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
) -> decltype(__lhs.base() - __rhs.base())
inlinenoexcept

Definition at line 950 of file bits/stl_iterator.h.

◆ operator-() [3/9]

template<typename _Iterator >
auto std::operator- ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
) -> decltype(__x.base() - __y.base())
inline

Definition at line 1196 of file bits/stl_iterator.h.

◆ operator-() [4/9]

auto std::operator- ( const move_iterator< _IteratorL > &  __x,
const move_iterator< _IteratorR > &  __y 
) -> decltype(__x.base() - __y.base())
inline

Definition at line 1189 of file bits/stl_iterator.h.

◆ operator-() [5/9]

template<typename _Iterator >
auto std::operator- ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
) -> decltype(__x.base() - __y.base())
inline

Definition at line 336 of file bits/stl_iterator.h.

◆ operator-() [6/9]

auto std::operator- ( const reverse_iterator< _IteratorL > &  __x,
const reverse_iterator< _IteratorR > &  __y 
) -> decltype(__y.base() - __x.base())
inline

Definition at line 390 of file bits/stl_iterator.h.

◆ operator-() [7/9]

template<typename _Iterator >
reverse_iterator std::reverse_iterator< _Iterator >::operator- ( difference_type  __n) const
inline
Returns
A reverse_iterator that refers to current - __n

The underlying iterator must be a Random Access Iterator.

Definition at line 257 of file bits/stl_iterator.h.

References std::reverse_iterator< _Iterator >::reverse_iterator().

◆ operator-() [8/9]

template<typename _Iterator >
move_iterator std::move_iterator< _Iterator >::operator- ( difference_type  __n) const
inline

Definition at line 1096 of file bits/stl_iterator.h.

◆ operator-() [9/9]

template<typename _Iterator , typename _Container >
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator- ( difference_type  __n) const
inlinenoexcept

Definition at line 840 of file bits/stl_iterator.h.

◆ operator--() [1/6]

template<typename _Iterator >
reverse_iterator & std::reverse_iterator< _Iterator >::operator-- ( )
inline
Returns
*this

Increments the underlying iterator.

Definition at line 210 of file bits/stl_iterator.h.

◆ operator--() [2/6]

template<typename _Iterator >
move_iterator & std::move_iterator< _Iterator >::operator-- ( )
inline

Definition at line 1070 of file bits/stl_iterator.h.

◆ operator--() [3/6]

template<typename _Iterator , typename _Container >
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-- ( )
inlinenoexcept

Definition at line 812 of file bits/stl_iterator.h.

◆ operator--() [4/6]

template<typename _Iterator >
reverse_iterator std::reverse_iterator< _Iterator >::operator-- ( int  )
inline
Returns
A reverse_iterator with the previous value of *this

Increments the underlying iterator.

Definition at line 222 of file bits/stl_iterator.h.

◆ operator--() [5/6]

template<typename _Iterator >
move_iterator std::move_iterator< _Iterator >::operator-- ( int  )
inline

Definition at line 1077 of file bits/stl_iterator.h.

◆ operator--() [6/6]

template<typename _Iterator , typename _Container >
__normal_iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-- ( int  )
inlinenoexcept

Definition at line 819 of file bits/stl_iterator.h.

◆ operator-=() [1/3]

template<typename _Iterator >
reverse_iterator & std::reverse_iterator< _Iterator >::operator-= ( difference_type  __n)
inline
Returns
*this

Moves the underlying iterator forwards __n steps. The underlying iterator must be a Random Access Iterator.

Definition at line 267 of file bits/stl_iterator.h.

◆ operator-=() [2/3]

template<typename _Iterator >
move_iterator & std::move_iterator< _Iterator >::operator-= ( difference_type  __n)
inline

Definition at line 1100 of file bits/stl_iterator.h.

◆ operator-=() [3/3]

template<typename _Iterator , typename _Container >
__normal_iterator & __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-= ( difference_type  __n)
inlinenoexcept

Definition at line 836 of file bits/stl_iterator.h.

◆ operator->() [1/4]

template<typename _Iterator >
pointer std::reverse_iterator< _Iterator >::operator-> ( ) const
inline
Returns
A pointer to the value at –current

This requires that –current is dereferenceable.

Definition at line 176 of file bits/stl_iterator.h.

References std::__addressof().

◆ operator->() [2/4]

template<typename _Iterator >
pointer std::move_iterator< _Iterator >::operator-> ( ) const
inline

Definition at line 1051 of file bits/stl_iterator.h.

◆ operator->() [3/4]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
const _Tp * std::istream_iterator< _Tp, _CharT, _Traits, _Dist >::operator-> ( ) const
inline

Definition at line 87 of file stream_iterator.h.

◆ operator->() [4/4]

template<typename _Iterator , typename _Container >
pointer __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator-> ( ) const
inlinenoexcept

Definition at line 796 of file bits/stl_iterator.h.

◆ operator<() [1/6]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator< ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 894 of file bits/stl_iterator.h.

◆ operator<() [2/6]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator< ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 887 of file bits/stl_iterator.h.

◆ operator<() [3/6]

template<typename _Iterator >
bool std::operator< ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1145 of file bits/stl_iterator.h.

◆ operator<() [4/6]

Definition at line 1139 of file bits/stl_iterator.h.

◆ operator<() [5/6]

template<typename _Iterator >
bool std::operator< ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline

Definition at line 300 of file bits/stl_iterator.h.

◆ operator<() [6/6]

Definition at line 357 of file bits/stl_iterator.h.

◆ operator<=() [1/6]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator<= ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 922 of file bits/stl_iterator.h.

◆ operator<=() [2/6]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator<= ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 915 of file bits/stl_iterator.h.

◆ operator<=() [3/6]

template<typename _Iterator >
bool std::operator<= ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1157 of file bits/stl_iterator.h.

◆ operator<=() [4/6]

Definition at line 1151 of file bits/stl_iterator.h.

◆ operator<=() [5/6]

template<typename _Iterator >
bool std::operator<= ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline

Definition at line 318 of file bits/stl_iterator.h.

◆ operator<=() [6/6]

Definition at line 375 of file bits/stl_iterator.h.

◆ operator=() [1/8]

template<typename _CharT , typename _Traits >
ostreambuf_iterator & std::ostreambuf_iterator< _CharT, _Traits >::operator= ( _CharT  __c)
inline

Write character to streambuf. Calls streambuf.sputc().

Definition at line 250 of file streambuf_iterator.h.

◆ operator=() [2/8]

template<typename _Tp , typename _CharT = char, typename _Traits = char_traits<_CharT>>
ostream_iterator & std::ostream_iterator< _Tp, _CharT, _Traits >::operator= ( const _Tp &  __value)
inline

Writes value to underlying ostream using operator<<. If constructed with delimiter string, writes delimiter to ostream.

Definition at line 193 of file stream_iterator.h.

◆ operator=() [3/8]

template<typename _Container >
back_insert_iterator & std::back_insert_iterator< _Container >::operator= ( const typename _Container::value_type &  __value)
inline
Parameters
__valueAn instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>.
Returns
This iterator, for chained operations.

This kind of iterator doesn't really have a position in the container (you can think of the position as being permanently at the end, if you like). Assigning a value to the iterator will always append the value to the end of the container.

Definition at line 487 of file bits/stl_iterator.h.

◆ operator=() [4/8]

template<typename _Container >
front_insert_iterator & std::front_insert_iterator< _Container >::operator= ( const typename _Container::value_type &  __value)
inline
Parameters
__valueAn instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>.
Returns
This iterator, for chained operations.

This kind of iterator doesn't really have a position in the container (you can think of the position as being permanently at the front, if you like). Assigning a value to the iterator will always prepend the value to the front of the container.

Definition at line 578 of file bits/stl_iterator.h.

◆ operator=() [5/8]

template<typename _Container >
insert_iterator & std::insert_iterator< _Container >::operator= ( const typename _Container::value_type &  __value)
inline
Parameters
__valueAn instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>.
Returns
This iterator, for chained operations.

This kind of iterator maintains its own position in the container. Assigning a value to the iterator will insert the value into the container at the place before the iterator.

The position is maintained such that subsequent assignments will insert values immediately after one another. For example,

// vector v contains A and Z
insert_iterator i (v, ++v.begin());
i = 1;
i = 2;
i = 3;
// vector v contains A, 1, 2, 3, and Z
Turns assignment into insertion.

Definition at line 690 of file bits/stl_iterator.h.

◆ operator=() [6/8]

template<typename _Container >
back_insert_iterator & std::back_insert_iterator< _Container >::operator= ( typename _Container::value_type &&  __value)
inline

Definition at line 494 of file bits/stl_iterator.h.

◆ operator=() [7/8]

template<typename _Container >
front_insert_iterator & std::front_insert_iterator< _Container >::operator= ( typename _Container::value_type &&  __value)
inline

Definition at line 585 of file bits/stl_iterator.h.

◆ operator=() [8/8]

template<typename _Container >
insert_iterator & std::insert_iterator< _Container >::operator= ( typename _Container::value_type &&  __value)
inline

Definition at line 698 of file bits/stl_iterator.h.

◆ operator==() [1/8]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator== ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 866 of file bits/stl_iterator.h.

◆ operator==() [2/8]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator== ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 859 of file bits/stl_iterator.h.

◆ operator==() [3/8]

template<typename _Tp , typename _CharT , typename _Traits , typename _Dist >
bool std::operator== ( const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __x,
const istream_iterator< _Tp, _CharT, _Traits, _Dist > &  __y 
)
inline

Return true if x and y are both end or not end, or x and y are the same.

Definition at line 130 of file stream_iterator.h.

◆ operator==() [4/8]

template<typename _CharT , typename _Traits >
bool std::operator== ( const istreambuf_iterator< _CharT, _Traits > &  __a,
const istreambuf_iterator< _CharT, _Traits > &  __b 
)
inline

Definition at line 204 of file streambuf_iterator.h.

◆ operator==() [5/8]

template<typename _Iterator >
bool std::operator== ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1122 of file bits/stl_iterator.h.

◆ operator==() [6/8]

Definition at line 1116 of file bits/stl_iterator.h.

◆ operator==() [7/8]

template<typename _Iterator >
bool std::operator== ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline
Parameters
__xA reverse_iterator.
__yA reverse_iterator.
Returns
A simple bool.

Reverse iterators forward many operations to their underlying base() iterators. Others are implemented in terms of one another.

Definition at line 295 of file bits/stl_iterator.h.

◆ operator==() [8/8]

Definition at line 352 of file bits/stl_iterator.h.

◆ operator>() [1/6]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator> ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 909 of file bits/stl_iterator.h.

◆ operator>() [2/6]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator> ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 902 of file bits/stl_iterator.h.

◆ operator>() [3/6]

template<typename _Iterator >
bool std::operator> ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1170 of file bits/stl_iterator.h.

◆ operator>() [4/6]

Definition at line 1164 of file bits/stl_iterator.h.

◆ operator>() [5/6]

template<typename _Iterator >
bool std::operator> ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline

Definition at line 313 of file bits/stl_iterator.h.

◆ operator>() [6/6]

Definition at line 370 of file bits/stl_iterator.h.

◆ operator>=() [1/6]

template<typename _Iterator , typename _Container >
bool __gnu_cxx::operator>= ( const __normal_iterator< _Iterator, _Container > &  __lhs,
const __normal_iterator< _Iterator, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 937 of file bits/stl_iterator.h.

◆ operator>=() [2/6]

template<typename _IteratorL , typename _IteratorR , typename _Container >
bool __gnu_cxx::operator>= ( const __normal_iterator< _IteratorL, _Container > &  __lhs,
const __normal_iterator< _IteratorR, _Container > &  __rhs 
)
inlinenoexcept

Definition at line 930 of file bits/stl_iterator.h.

◆ operator>=() [3/6]

template<typename _Iterator >
bool std::operator>= ( const move_iterator< _Iterator > &  __x,
const move_iterator< _Iterator > &  __y 
)
inline

Definition at line 1182 of file bits/stl_iterator.h.

◆ operator>=() [4/6]

Definition at line 1176 of file bits/stl_iterator.h.

◆ operator>=() [5/6]

template<typename _Iterator >
bool std::operator>= ( const reverse_iterator< _Iterator > &  __x,
const reverse_iterator< _Iterator > &  __y 
)
inline

Definition at line 325 of file bits/stl_iterator.h.

◆ operator>=() [6/6]

Definition at line 382 of file bits/stl_iterator.h.

◆ operator[]() [1/3]

template<typename _Iterator >
reference std::reverse_iterator< _Iterator >::operator[] ( difference_type  __n) const
inline
Returns
The value at current - __n - 1

The underlying iterator must be a Random Access Iterator.

Definition at line 279 of file bits/stl_iterator.h.

◆ operator[]() [2/3]

template<typename _Iterator >
reference std::move_iterator< _Iterator >::operator[] ( difference_type  __n) const
inline

Definition at line 1107 of file bits/stl_iterator.h.

◆ operator[]() [3/3]

template<typename _Iterator , typename _Container >
reference __gnu_cxx::__normal_iterator< _Iterator, _Container >::operator[] ( difference_type  __n) const
inlinenoexcept

Definition at line 824 of file bits/stl_iterator.h.

Variable Documentation

◆ _M_current [1/2]

template<typename _Iterator , typename _Container >
_Iterator __gnu_cxx::__normal_iterator< _Iterator, _Container >::_M_current
protected

Definition at line 763 of file bits/stl_iterator.h.

◆ _M_current [2/2]

template<typename _Iterator >
_Iterator std::move_iterator< _Iterator >::_M_current
protected

Definition at line 1013 of file bits/stl_iterator.h.

◆ container [1/3]

template<typename _Container >
_Container* std::back_insert_iterator< _Container >::container
protected

Definition at line 456 of file bits/stl_iterator.h.

◆ container [2/3]

template<typename _Container >
_Container* std::front_insert_iterator< _Container >::container
protected

Definition at line 548 of file bits/stl_iterator.h.

◆ container [3/3]

template<typename _Container >
_Container* std::insert_iterator< _Container >::container
protected

Definition at line 643 of file bits/stl_iterator.h.

◆ current

template<typename _Iterator >
_Iterator std::reverse_iterator< _Iterator >::current
protected

Definition at line 105 of file bits/stl_iterator.h.

◆ iter

template<typename _Container >
_Container::iterator std::insert_iterator< _Container >::iter
protected

Definition at line 644 of file bits/stl_iterator.h.