std::istreambuf_iterator< CharT, Traits > Class Template Reference

Provides input iterator semantics for streambufs. More...

#include <streambuf_iterator.h>

Inheritance diagram for std::istreambuf_iterator< CharT, Traits >:

Inheritance graph
[legend]
Collaboration diagram for std::istreambuf_iterator< CharT, Traits >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef Category iterator_category
 One of the tag types.
typedef Type value_type
 The type "pointed to" by the iterator.
typedef Distance difference_type
 Distance between iterators is represented as this type.
typedef Pointer pointer
 This type represents a pointer-to-value_type.
typedef Reference reference
 This type represents a reference-to-value_type.
typedef CharT char_type
 Public typedefs.
typedef Traits traits_type
 Public typedefs.
typedef Traits::int_type int_type
 Public typedefs.
typedef basic_streambuf< CharT,
Traits > 
streambuf_type
 Public typedefs.
typedef basic_istream< CharT,
Traits > 
istream_type
 Public typedefs.

Public Member Functions

 istreambuf_iterator () throw ()
 Construct end of input stream iterator.
 istreambuf_iterator (istream_type &s) throw ()
 Construct start of input stream iterator.
 istreambuf_iterator (streambuf_type *s) throw ()
 Construct start of streambuf iterator.
char_type operator* () const
 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.
istreambuf_iteratoroperator++ ()
 Advance the iterator. Calls streambuf.sbumpc().
istreambuf_iterator operator++ (int)
 Advance the iterator. Calls streambuf.sbumpc().
bool equal (const istreambuf_iterator &__b) const
 Return true both iterators are end or both are not end.


Detailed Description

template<typename CharT, typename Traits>
class std::istreambuf_iterator< CharT, Traits >

Provides input iterator semantics for streambufs.

Definition at line 51 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 59 of file streambuf_iterator.h.

template<typename CharT, typename Traits>
typedef Traits std::istreambuf_iterator< CharT, Traits >::traits_type

Public typedefs.

Definition at line 60 of file streambuf_iterator.h.

template<typename CharT, typename Traits>
typedef Traits::int_type std::istreambuf_iterator< CharT, Traits >::int_type

Public typedefs.

Definition at line 61 of file streambuf_iterator.h.

template<typename CharT, typename Traits>
typedef basic_streambuf<CharT, Traits> std::istreambuf_iterator< CharT, Traits >::streambuf_type

Public typedefs.

Definition at line 62 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 63 of file streambuf_iterator.h.

template<typename Category, typename Type, typename Distance = ptrdiff_t, typename Pointer = Type*, typename Reference = Type&>
typedef Category std::iterator< Category, Type, Distance, Pointer, Reference >::iterator_category [inherited]

One of the tag types.

Definition at line 109 of file stl_iterator_base_types.h.

template<typename Category, typename Type, typename Distance = ptrdiff_t, typename Pointer = Type*, typename Reference = Type&>
typedef Type std::iterator< Category, Type, Distance, Pointer, Reference >::value_type [inherited]

The type "pointed to" by the iterator.

Definition at line 111 of file stl_iterator_base_types.h.

template<typename Category, typename Type, typename Distance = ptrdiff_t, typename Pointer = Type*, typename Reference = Type&>
typedef Distance std::iterator< Category, Type, Distance, Pointer, Reference >::difference_type [inherited]

Distance between iterators is represented as this type.

Reimplemented in std::reverse_iterator< Iterator >.

Definition at line 113 of file stl_iterator_base_types.h.

template<typename Category, typename Type, typename Distance = ptrdiff_t, typename Pointer = Type*, typename Reference = Type&>
typedef Pointer std::iterator< Category, Type, Distance, Pointer, Reference >::pointer [inherited]

This type represents a pointer-to-value_type.

Reimplemented in std::reverse_iterator< Iterator >.

Definition at line 115 of file stl_iterator_base_types.h.

template<typename Category, typename Type, typename Distance = ptrdiff_t, typename Pointer = Type*, typename Reference = Type&>
typedef Reference std::iterator< Category, Type, Distance, Pointer, Reference >::reference [inherited]

This type represents a reference-to-value_type.

Reimplemented in std::reverse_iterator< Iterator >.

Definition at line 117 of file stl_iterator_base_types.h.


Constructor & Destructor Documentation

template<typename CharT, typename Traits>
std::istreambuf_iterator< CharT, Traits >::istreambuf_iterator (  )  throw () [inline]

Construct end of input stream iterator.

Definition at line 79 of file streambuf_iterator.h.

template<typename CharT, typename Traits>
std::istreambuf_iterator< CharT, Traits >::istreambuf_iterator ( istream_type s  )  throw () [inline]

Construct start of input stream iterator.

Definition at line 83 of file streambuf_iterator.h.

template<typename CharT, typename Traits>
std::istreambuf_iterator< CharT, Traits >::istreambuf_iterator ( streambuf_type s  )  throw () [inline]

Construct start of streambuf iterator.

Definition at line 87 of file streambuf_iterator.h.


Member Function Documentation

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 94 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 108 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 123 of file streambuf_iterator.h.

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


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

Generated on Thu May 8 10:00:58 2008 for libstdc++-v3 Source by  doxygen 1.5.5