position_iterator Struct Template Reference | |||||||||||||||||||||||||||||||||||||||||||||
Public Types | |
|
typedef iterator_facade < position_iterator< Deref, Dim >, typename Deref::value_type, random_access_traversal_tag, typename Deref::reference, typename Deref::argument_type::template axis< Dim >::coord_t > | parent_t |
| typedef parent_t::difference_type | difference_type |
| typedef parent_t::reference | reference |
| typedef Deref::argument_type | point_t |
Public Member Functions | |
| position_iterator (const point_t &p, const point_t &step, const Deref &d) | |
| position_iterator (const position_iterator &p) | |
| template<typename D> | |
| position_iterator (const position_iterator< D, Dim > &p) | |
| position_iterator & | operator= (const position_iterator &p) |
| const point_t & | pos () const |
| const point_t & | step () const |
| const Deref & | deref_fn () const |
| void | set_step (difference_type s) |
| reference | operator[] (difference_type d) const |
Friends | |
| struct | position_iterator |
| class | boost::iterator_core_access |
| reference operator[] | ( | difference_type | d | ) | const [inline] |
For some reason operator[] provided by iterator_adaptor returns a custom class that is convertible to reference We require our own reference because it is registered in iterator_traits
1.5.6