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

Public Types

typedef _Traits::off_type difference_type
 
typedef input_iterator_tag iterator_category
 
typedef _CharT * pointer
 
typedef _CharT reference
 
typedef _CharT 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>
class std::istreambuf_iterator< _CharT, _Traits >

Provides input iterator semantics for streambufs.

Definition at line 405 of file stl_algobase.h.

Member Typedef Documentation

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.

typedef _Traits::off_type std::iterator< input_iterator_tag , _CharT , _Traits::off_type , _CharT * , _CharT >::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 >
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 >
typedef basic_istream<_CharT, _Traits> std::istreambuf_iterator< _CharT, _Traits >::istream_type

Public typedefs.

Definition at line 68 of file streambuf_iterator.h.

typedef input_iterator_tag std::iterator< input_iterator_tag , _CharT , _Traits::off_type , _CharT * , _CharT >::iterator_category
inherited

One of the tag types.

Definition at line 121 of file stl_iterator_base_types.h.

typedef _CharT * std::iterator< input_iterator_tag , _CharT , _Traits::off_type , _CharT * , _CharT >::pointer
inherited

This type represents a pointer-to-value_type.

Definition at line 127 of file stl_iterator_base_types.h.

typedef _CharT std::iterator< input_iterator_tag , _CharT , _Traits::off_type , _CharT * , _CharT >::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 >
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 >
typedef _Traits std::istreambuf_iterator< _CharT, _Traits >::traits_type

Public typedefs.

Definition at line 65 of file streambuf_iterator.h.

typedef _CharT std::iterator< input_iterator_tag , _CharT , _Traits::off_type , _CharT * , _CharT >::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 >
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 >
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 >
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 >
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_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 >
istreambuf_iterator& std::istreambuf_iterator< _CharT, _Traits >::operator++ ( )
inline

Advance the iterator. Calls streambuf.sbumpc().

Definition at line 137 of file streambuf_iterator.h.

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.


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