|
STXXL
1.4-dev
|
Adapter for vector_bufreader to match iterator requirements of C++11 range-based loop construct.
Since vector_bufreader itself points to only one specific item, this iterator is merely a counter facade. The functions operator*() and operator++() must only be called when it is in sync with the bufreader object. This is generally only the case for an iterator constructed with begin() and then advanced with operator++(). The class checks this using asserts(), the operators will fail if used wrong.
Public Types | |
| typedef vector_bufreader_type::value_type | value_type |
| Value type of vector. More... | |
| typedef VectorBufReaderType | vector_bufreader_type |
| The underlying buffered reader type. More... | |
| typedef vector_bufreader_type::vector_iterator | vector_iterator |
| Use vector_iterator to reference a point in the vector. More... | |
Public Member Functions | |
| vector_bufreader_iterator (vector_bufreader_type &bufreader, const vector_iterator &iter) | |
| Construct iterator using vector_iterator. More... | |
| bool | operator!= (const vector_bufreader_iterator &vbi) const |
| Inequality comparison operator. More... | |
| const value_type & | operator* () const |
| Return constant reference to current item. More... | |
| vector_bufreader_iterator & | operator++ () |
| Make bufreader advance to next item (asserts if !empty() or if iterator does not point to current). More... | |
| const value_type * | operator-> () const |
| Return constant pointer to current item. More... | |
| bool | operator== (const vector_bufreader_iterator &vbi) const |
| Equality comparison operator. More... | |
Protected Attributes | |
| vector_bufreader_type & | m_bufreader |
| Buffered reader used to access elements in vector. More... | |
| vector_iterator | m_iter |
| Use vector_iterator to reference a point in the vector. More... | |
| typedef vector_bufreader_type::value_type stxxl::vector_bufreader_iterator< VectorBufReaderType >::value_type |
| typedef VectorBufReaderType stxxl::vector_bufreader_iterator< VectorBufReaderType >::vector_bufreader_type |
| typedef vector_bufreader_type::vector_iterator stxxl::vector_bufreader_iterator< VectorBufReaderType >::vector_iterator |
Use vector_iterator to reference a point in the vector.
|
inline |
Construct iterator using vector_iterator.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
Use vector_iterator to reference a point in the vector.