libstdc++
std::istreambuf_iterator< _CharT, _Traits > Class Template Reference
Inheritance diagram for std::istreambuf_iterator< _CharT, _Traits >:

List of all members.

Public Types

typedef _Distance difference_type
typedef _Category iterator_category
typedef _Pointer pointer
typedef _Reference reference
typedef _Tp value_type
typedef _CharT char_type
typedef _Traits traits_type
typedef _Traits::int_type int_type
typedef basic_streambuf
< _CharT, _Traits > 
streambuf_type
typedef basic_istream< _CharT,
_Traits > 
istream_type

Public Member Functions

constexpr istreambuf_iterator () _GLIBCXX_USE_NOEXCEPT
 istreambuf_iterator (const istreambuf_iterator &) noexcept
 istreambuf_iterator (istream_type &__s) _GLIBCXX_USE_NOEXCEPT
 istreambuf_iterator (streambuf_type *__s) _GLIBCXX_USE_NOEXCEPT
bool equal (const istreambuf_iterator &__b) const
char_type operator* () const
istreambuf_iteratoroperator++ ()
istreambuf_iterator operator++ (int)

Friends

template<bool _IsMove, typename _CharT2 >
__gnu_cxx::__enable_if
< __is_char< _CharT2 >
::__value, _CharT2 * >::__type 
__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 
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 
find (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, const _CharT2 &)

Detailed Description

template<typename _CharT, typename _Traits>
class std::istreambuf_iterator< _CharT, _Traits >

Provides input iterator semantics for streambufs.

Definition at line 52 of file streambuf_iterator.h.


Member Typedef Documentation

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

Public typedefs.

Definition at line 66 of file streambuf_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>
typedef _Distance std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::difference_type
inherited

Distance between iterators is represented as this type.

Reimplemented in std::reverse_iterator< _Iterator >.

Definition at line 126 of file stl_iterator_base_types.h.

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

Public typedefs.

Definition at line 68 of file streambuf_iterator.h.

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

Public typedefs.

Definition at line 70 of file streambuf_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>
typedef _Category std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::iterator_category
inherited

One of the tag types.

Definition at line 122 of file stl_iterator_base_types.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>
typedef _Pointer std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::pointer
inherited

This type represents a pointer-to-value_type.

Reimplemented in std::reverse_iterator< _Iterator >.

Definition at line 128 of file stl_iterator_base_types.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>
typedef _Reference std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::reference
inherited

This type represents a reference-to-value_type.

Reimplemented in std::reverse_iterator< _Iterator >.

Definition at line 130 of file stl_iterator_base_types.h.

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

Public typedefs.

Definition at line 69 of file streambuf_iterator.h.

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

Public typedefs.

Definition at line 67 of file streambuf_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>
typedef _Tp std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::value_type
inherited

The type "pointed to" by the iterator.

Definition at line 124 of file stl_iterator_base_types.h.


Constructor & Destructor Documentation

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

Construct end of input stream iterator.

Definition at line 104 of file streambuf_iterator.h.

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

Construct start of input stream iterator.

Definition at line 114 of file streambuf_iterator.h.

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

Construct start of streambuf iterator.

Definition at line 118 of file streambuf_iterator.h.


Member Function Documentation

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 174 of file streambuf_iterator.h.

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 125 of file streambuf_iterator.h.

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

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 139 of file streambuf_iterator.h.

References std::basic_streambuf< _CharT, _Traits >::sbumpc().

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

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 154 of file streambuf_iterator.h.

References std::basic_streambuf< _CharT, _Traits >::sbumpc().


The documentation for this class was generated from the following file: