Lumiera
0.pre.03
»edit your freedom«
|
#include "lib/iter-adapter-ptr-deref.hpp"
wrapper for an existing Iterator type to expose the address of each value yielded.
Typically this can be used to build visitation sequences based on values living within a stable data structure (e.g. unmodifiable STL vector)
Definition at line 230 of file iter-adapter-ptr-deref.hpp.
Public Types | |
typedef IT::pointer const * | pointer |
typedef IT::pointer const & | reference |
typedef IT::pointer const | value_type |
Public Member Functions | |
AddressExposingIter (IT srcIter) | |
AddressExposingIter is always created by wrapping an existing iterator. | |
bool | empty () const |
ENABLE_USE_IN_STD_RANGE_FOR_LOOPS (AddressExposingIter) | |
IT const & | getBase () const |
access the wrapped implementation iterator | |
bool | isValid () const |
operator bool () const | |
reference | operator* () const |
AddressExposingIter & | operator++ () |
_Ptr | operator-> () const |
Private Types | |
typedef IT::pointer | _Ptr |
Private Member Functions | |
void | takeAddress () |
Private Attributes | |
_Ptr | currPtr_ |
IT | i_ |
nested source iterator | |
|
inline |
Definition at line 284 of file iter-adapter-ptr-deref.hpp.
References PtrDerefIter< IT >::i_.