MADARA
3.1.8
|
The iterator type returned by deep_iterate. More...
#include <DeepIterator.h>
Public Types | |
typedef Iterator::value_type | underlying_value_type |
typedef DeepIterator::value_type | value_type |
Public Member Functions | |
bool | operator!= (const DeepIterator &o) const |
Equality operator. More... | |
value_type | operator* () const |
Returns the same as the underlying iterator's operator*, except any values are deep copied first. More... | |
DeepIterator & | operator++ () |
Pre-fix increment. More... | |
DeepIterator | operator++ (int) |
Post-fix increment. More... | |
underlying_value_type * | operator-> () const |
Pass-through to the underlying iterator's operator->(). More... | |
bool | operator== (const DeepIterator &o) const |
Equality operator. More... | |
Private Types | |
typedef IteratorTraits< Iterator > | traits |
Private Member Functions | |
DeepIterator (const Iterator &i) | |
Private Attributes | |
Iterator | i_ |
Friends | |
template<class I > | |
DeepIterator< I > | deep_iterate (const I &i) |
The iterator type returned by deep_iterate.
Use that function instead of constructing this class directly.
Iterator | the type of the underlying iterator. Automatically determined by deep_iterate. |
Definition at line 71 of file DeepIterator.h.
|
private |
Definition at line 76 of file DeepIterator.h.
typedef Iterator::value_type DeepIterator< Iterator >::underlying_value_type |
Definition at line 80 of file DeepIterator.h.
typedef DeepIterator::value_type DeepIterator< Iterator >::value_type |
Definition at line 79 of file DeepIterator.h.
|
inlineprivate |
Definition at line 153 of file DeepIterator.h.
|
inline |
Equality operator.
Passes through to underlying iterator.
Definition at line 147 of file DeepIterator.h.
|
inline |
Returns the same as the underlying iterator's operator*, except any values are deep copied first.
Definition at line 86 of file DeepIterator.h.
|
inline |
Pre-fix increment.
Increments underlying iterator, and returns this iterator afterwards. Use instead of post-fix whereever possible.
Definition at line 109 of file DeepIterator.h.
|
inline |
Post-fix increment.
Increments underlying iterator, and returns a copy of this iterator (along with a copy of the underlying iterator) from prior to this increment. If you don't need the previous iterator value, use the pre-fix increment instead.
Note: calls the underlying iterator's pre-fix increment, not post-fix.
Definition at line 125 of file DeepIterator.h.
|
inline |
Pass-through to the underlying iterator's operator->().
Note that methods/variables accessed through this operator will reference the original, not a deep copy.
Definition at line 98 of file DeepIterator.h.
|
inline |
Equality operator.
Passes through to underlying iterator.
Definition at line 137 of file DeepIterator.h.
|
private |
Definition at line 155 of file DeepIterator.h.