#include <istream_iterator_delimiter.h>
Public Types | |
typedef _CharT | char_type |
typedef _Traits | traits_type |
typedef std::basic_istream< _CharT, _Traits > | istream_type |
Public Member Functions | |
istream_iterator_delimiter () | |
Construct end of input stream iterator. | |
istream_iterator_delimiter (istream_type &__s, const char_type *aDelim) | |
istream_iterator_delimiter (const istream_iterator_delimiter &__obj) | |
const _Tp & | operator * () const |
const _Tp * | operator-> () const |
istream_iterator_delimiter & | operator++ () |
istream_iterator_delimiter | operator++ (int) |
bool | _M_equal (const istream_iterator_delimiter &__x) const |
Private Member Functions | |
void | _M_read () |
Private Attributes | |
istream_type * | _M_stream |
const char_type * | _M_delimiter |
_Tp | _M_value |
typedef _CharT rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::char_type |
typedef std::basic_istream<_CharT, _Traits> rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::istream_type |
typedef _Traits rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::traits_type |
rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::istream_iterator_delimiter | ( | ) | [inline] |
Construct end of input stream iterator.
rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::istream_iterator_delimiter | ( | istream_type & | __s, | |
const char_type * | aDelim | |||
) | [inline] |
Construct start of input stream iterator. If the delimiter is NULL, we assume an empty string.
rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::istream_iterator_delimiter | ( | const istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist > & | __obj | ) | [inline] |
bool rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::_M_equal | ( | const istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist > & | __x | ) | const [inline] |
void rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::_M_read | ( | ) | [inline, private] |
Does the same as for a plain std::istream_iterator, but after the value is read, it attemps to read the delimiter, and fails if it is not there.
Now reads the delimiter if there is one. If we cannot read a full delimiter, the iterator is left as invalid.
This indicates the end of stream.
const _Tp& rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::operator * | ( | ) | const [inline] |
istream_iterator_delimiter rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::operator++ | ( | int | ) | [inline] |
istream_iterator_delimiter& rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::operator++ | ( | ) | [inline] |
const _Tp* rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::operator-> | ( | ) | const [inline] |
const char_type* rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::_M_delimiter [private] |
istream_type* rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::_M_stream [private] |
_Tp rpa::istream_iterator_delimiter< _Tp, _CharT, _Traits, _Dist >::_M_value [private] |