28 inline Type_::~Giveable() {}
34 template <
typename TheGiveable>
35 inline std::auto_ptr<TheGiveable>
Om::Give(TheGiveable & theGiveable) {
36 return Move(theGiveable);
39 template <
typename TheGiveable>
40 inline std::auto_ptr<TheGiveable>
Om::Give(TheGiveable
const & theGiveable) {
41 return Copy(theGiveable);
44 template <
typename TheGiveable>
45 inline std::auto_ptr<TheGiveable>
Om::Give(
46 std::auto_ptr<TheGiveable> & theGiveable
51 template <
typename TheGiveable>
52 inline std::auto_ptr<TheGiveable>
Om::Give(
53 std::auto_ptr<TheGiveable>
const & theGiveable
58 std::auto_ptr<TheGiveable>()
std::auto_ptr< TheMoveable > Move(TheMoveable &)
std::auto_ptr< TheGiveable > Give(TheGiveable &)
Calls Move on the object.
std::auto_ptr< TheCopyable > Copy(TheCopyable const &)