move.h File Reference


Namespaces

namespace  rpa

Classes

struct  rpa::mover< Type, IsPod >
 This template makes a destructive assignment, if 'swap' is available. More...
struct  rpa::mover< Type, false >
 This applies when the data type does not have 'swap'. More...
struct  rpa::swap_anything
 Brillant idea gratefully borrowed from David Abrahams, has_swap.hpp. More...
struct  rpa::no_swap
 no_swap::operator,('x') does not return a char, so sizeof returns 2. More...

Defines

#define RPA_DECLARE_POD_MOVE(Tp)   inline void move( Tp & dst, const Tp src ) { dst = src ; }
 This is for the most common cases and is necessary for oldest compilers.

Functions

 rpa::RPA_DECLARE_POD_MOVE (bool)
 rpa::RPA_DECLARE_POD_MOVE (char)
 rpa::RPA_DECLARE_POD_MOVE (unsigned char)
 rpa::RPA_DECLARE_POD_MOVE (short)
 rpa::RPA_DECLARE_POD_MOVE (int)
 rpa::RPA_DECLARE_POD_MOVE (long)
 rpa::RPA_DECLARE_POD_MOVE (unsigned long long)
 rpa::RPA_DECLARE_POD_MOVE (float)
 rpa::RPA_DECLARE_POD_MOVE (double)
no_swap rpa::swap (swap_anything, swap_anything)
 The result value can be combined with no_swap::operator,.
template<class Type>
void rpa::move (Type &aDst, Type &aSrc)
 This makes a destructive assignment : It can change the input if is moved to the target.
template<class IterIn, class IterOut>
IterOut rpa::move_ranges (IterIn itBeg, IterIn itEnd, IterOut itOut)

Define Documentation

#define RPA_DECLARE_POD_MOVE ( Tp   )     inline void move( Tp & dst, const Tp src ) { dst = src ; }

This is for the most common cases and is necessary for oldest compilers.


Generated on Tue Sep 25 10:20:30 2007 for rpa by  doxygen 1.4.7