dereference_iterator_adaptor Class Template Reference |
Public Types | |
typedef iterator_adaptor< dereference_iterator_adaptor< Iterator, DFn >, Iterator, typename DFn::value_type, use_default, typename DFn::reference, use_default > | parent_t |
typedef DFn::result_type | reference |
typedef std::iterator_traits< Iterator >::difference_type | difference_type |
typedef DFn | dereference_fn |
Public Member Functions | |
template<typename Iterator1> | |
dereference_iterator_adaptor (const dereference_iterator_adaptor< Iterator1, DFn > &dit) | |
dereference_iterator_adaptor (Iterator it, DFn deref_fn=DFn()) | |
template<typename Iterator1, typename DFn1> | |
dereference_iterator_adaptor (const dereference_iterator_adaptor< Iterator1, DFn1 > &it) | |
reference | operator[] (difference_type d) const |
bool | operator> (const dereference_iterator_adaptor &p) const |
bool | operator< (const dereference_iterator_adaptor &p) const |
bool | operator>= (const dereference_iterator_adaptor &p) const |
bool | operator<= (const dereference_iterator_adaptor &p) const |
bool | operator== (const dereference_iterator_adaptor &p) const |
bool | operator!= (const dereference_iterator_adaptor &p) const |
Iterator & | base () |
const Iterator & | base () const |
const DFn & | deref_fn () const |
Friends | |
class | dereference_iterator_adaptor |
class | boost::iterator_core_access |
|
For some reason operator[] provided by iterator_facade returns a custom class that is convertible to reference We require our own reference because it is registered in iterator_traits |