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

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 () noexcept
 
 istreambuf_iterator (const istreambuf_iterator &) noexcept=default
 
 istreambuf_iterator (istream_type &__s) noexcept
 
 istreambuf_iterator (streambuf_type *__s) 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 = char_traits<_CharT>>
class std::istreambuf_iterator< _CharT, _Traits >

Provides input iterator semantics for streambufs.

Definition at line 120 of file iosfwd.

Member Typedef Documentation

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

Public typedefs.

Definition at line 64 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.

Definition at line 125 of file stl_iterator_base_types.h.

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

Public typedefs.

Definition at line 66 of file streambuf_iterator.h.

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

Public typedefs.

Definition at line 68 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 121 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.

Definition at line 127 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.

Definition at line 129 of file stl_iterator_base_types.h.

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

Public typedefs.

Definition at line 67 of file streambuf_iterator.h.

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

Public typedefs.

Definition at line 65 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 123 of file stl_iterator_base_types.h.

Constructor & Destructor Documentation

template<typename _CharT , typename _Traits = char_traits<_CharT>>
constexpr std::istreambuf_iterator< _CharT, _Traits >::istreambuf_iterator ( )
inlinenoexcept

Construct end of input stream iterator.

Definition at line 102 of file streambuf_iterator.h.

template<typename _CharT , typename _Traits = char_traits<_CharT>>
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.

template<typename _CharT , typename _Traits = char_traits<_CharT>>
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.

Member Function Documentation

template<typename _CharT , typename _Traits = char_traits<_CharT>>
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.

template<typename _CharT , typename _Traits = char_traits<_CharT>>
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.

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

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 137 of file streambuf_iterator.h.

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

template<typename _CharT , typename _Traits = char_traits<_CharT>>
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.

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


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