Class template move_iterator is an iterator adaptor with the same behavior as the underlying iterator except that its dereference operator implicitly converts the value returned by the underlying iterator's dereference operator to an rvalue reference. More...
#include <iterator.hpp>
Public Types | |
typedef It | iterator_type |
typedef std::iterator_traits < iterator_type >::value_type | value_type |
typedef value_type && | reference |
typedef It | pointer |
typedef std::iterator_traits < iterator_type > ::difference_type | difference_type |
typedef std::iterator_traits < iterator_type > ::iterator_category | iterator_category |
Public Member Functions | |
move_iterator () | |
move_iterator (It i) | |
template<class U > | |
move_iterator (const move_iterator< U > &u) | |
iterator_type | base () const |
reference | operator* () const |
pointer | operator-> () const |
move_iterator & | operator++ () |
move_iterator< iterator_type > | operator++ (int) |
move_iterator & | operator-- () |
move_iterator< iterator_type > | operator-- (int) |
move_iterator< iterator_type > | operator+ (difference_type n) const |
move_iterator & | operator+= (difference_type n) |
move_iterator< iterator_type > | operator- (difference_type n) const |
move_iterator & | operator-= (difference_type n) |
reference | operator[] (difference_type n) const |
Friends | |
bool | operator== (const move_iterator &x, const move_iterator &y) |
bool | operator!= (const move_iterator &x, const move_iterator &y) |
bool | operator< (const move_iterator &x, const move_iterator &y) |
bool | operator<= (const move_iterator &x, const move_iterator &y) |
bool | operator> (const move_iterator &x, const move_iterator &y) |
bool | operator>= (const move_iterator &x, const move_iterator &y) |
difference_type | operator- (const move_iterator &x, const move_iterator &y) |
move_iterator | operator+ (difference_type n, const move_iterator &x) |
Class template move_iterator is an iterator adaptor with the same behavior as the underlying iterator except that its dereference operator implicitly converts the value returned by the underlying iterator's dereference operator to an rvalue reference.
Some generic algorithms can be called with move iterators to replace copying with moving.
typedef std::iterator_traits<iterator_type>::difference_type boost::move_iterator< It >::difference_type |
typedef std::iterator_traits<iterator_type>::iterator_category boost::move_iterator< It >::iterator_category |
typedef It boost::move_iterator< It >::iterator_type |
typedef It boost::move_iterator< It >::pointer |
typedef value_type&& boost::move_iterator< It >::reference |
typedef std::iterator_traits<iterator_type>::value_type boost::move_iterator< It >::value_type |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
References boost::fusion::move().
|
inline |
References boost::n.
|
inline |
|
inline |
|
inline |
References boost::n.
|
inline |
References boost::n.
|
inline |
|
inline |
|
inline |
References boost::n.
|
inline |
|
inline |
References boost::fusion::move(), and boost::n.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |