Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r71935 - in sandbox/block_ptr/boost: . detail
From: phil_at_[hidden]
Date: 2011-05-14 03:54:16


Author: pbouchard
Date: 2011-05-14 03:54:15 EDT (Sat, 14 May 2011)
New Revision: 71935
URL: http://svn.boost.org/trac/boost/changeset/71935

Log:
* Moved move functions
Text files modified:
   sandbox/block_ptr/boost/block_ptr.hpp | 57 ++++++++++++++++++++-------------------
   sandbox/block_ptr/boost/detail/block_base.hpp | 1
   2 files changed, 29 insertions(+), 29 deletions(-)

Modified: sandbox/block_ptr/boost/block_ptr.hpp
==============================================================================
--- sandbox/block_ptr/boost/block_ptr.hpp (original)
+++ sandbox/block_ptr/boost/block_ptr.hpp 2011-05-14 03:54:15 EDT (Sat, 14 May 2011)
@@ -408,34 +408,6 @@
                                 release(true);
         }
 
-#if defined(BOOST_HAS_RVALUE_REFS)
- block_ptr(block_ptr<T> && p): base(std::move(p.po_)), ps_(std::move(p.ps_))
- {
- }
-
- template<class Y>
- block_ptr(block_ptr<Y> && p): base(std::move(p.po_)), ps_(std::move(p.ps_))
- {
- }
-
- block_ptr<T> & operator = (block_ptr<T> && p)
- {
- po_ = std::move(p.po_);
- ps_ = std::move(p.ps_);
-
- return *this;
- }
-
- template<class Y>
- block_ptr & operator = (block_ptr<Y> && p)
- {
- po_ = std::move(p.po_);
- ps_ = std::move(p.ps_);
-
- return *this;
- }
-#endif
-
     private:
                 /**
                         Release of the pointee object with or without destroying the entire @c block_header it belongs to.
@@ -491,6 +463,35 @@
                                 }
             }
         }
+
+ public:
+#if defined(BOOST_HAS_RVALUE_REFS)
+ block_ptr(block_ptr<T> && p): base(std::move(p.po_)), ps_(std::move(p.ps_))
+ {
+ }
+
+ template<class Y>
+ block_ptr(block_ptr<Y> && p): base(std::move(p.po_)), ps_(std::move(p.ps_))
+ {
+ }
+
+ block_ptr<T> & operator = (block_ptr<T> && p)
+ {
+ po_ = std::move(p.po_);
+ ps_ = std::move(p.ps_);
+
+ return *this;
+ }
+
+ template<class Y>
+ block_ptr & operator = (block_ptr<Y> && p)
+ {
+ po_ = std::move(p.po_);
+ ps_ = std::move(p.ps_);
+
+ return *this;
+ }
+#endif
     };
 
 template <typename V>

Modified: sandbox/block_ptr/boost/detail/block_base.hpp
==============================================================================
--- sandbox/block_ptr/boost/detail/block_base.hpp (original)
+++ sandbox/block_ptr/boost/detail/block_base.hpp 2011-05-14 03:54:15 EDT (Sat, 14 May 2011)
@@ -205,7 +205,6 @@
     intrusive_list::node block_tag_; /**< Tag used to enlist to @c block_header::elements_ . */
     intrusive_list::node init_tag_; /**< Tag used to enlist to @c block_base::inits_ . */
 
-
     block_base() : init_(false)
     {
         inits_.push_back(& init_tag_);


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk