BOOST_MOVABLE_BUT_NOT_COPYABLE(TYPE)
BOOST_COPYABLE_AND_MOVABLE(TYPE)
BOOST_COPYABLE_AND_MOVABLE_ALT(TYPE)
BOOST_RV_REF(TYPE)
BOOST_COPY_ASSIGN_REF(TYPE)
BOOST_FWD_REF(TYPE)
namespace boost {
template<typename T> struct has_nothrow_move;
template<typename It> class move_iterator;
template<typename C> class back_move_insert_iterator;
template<typename C> class front_move_insert_iterator;
template<typename C> class move_insert_iterator;
template<typename T> struct has_trivial_destructor_after_move;
template<typename T> rvalue_reference move(input_reference);
template<typename T> output_reference forward(input_reference);
template<typename It> move_iterator< It > make_move_iterator(const It &);
template<typename C> back_move_insert_iterator< C > back_move_inserter(C &);
template<typename C>
front_move_insert_iterator< C > front_move_inserter(C &);
template<typename C>
move_insert_iterator< C > move_inserter(C &, typename C::iterator);
template<typename I, typename O> O move(I, I, O);
template<typename I, typename O> O move_backward(I, I, O);
template<typename I, typename F> F uninitialized_move(I, I, F);
template<typename I, typename F> F uninitialized_copy_or_move(I, I, F);
template<typename I, typename F> F copy_or_move(I, I, F);
}