Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r81125 - trunk/boost
From: pdimov_at_[hidden]
Date: 2012-10-31 16:04:14


Author: pdimov
Date: 2012-10-31 16:04:14 EDT (Wed, 31 Oct 2012)
New Revision: 81125
URL: http://svn.boost.org/trac/boost/changeset/81125

Log:
Add get_pointer overloads for std::unique_ptr, std::shared_ptr. Refs #4185.
Text files modified:
   trunk/boost/get_pointer.hpp | 19 +++++++++++++++++--
   1 files changed, 17 insertions(+), 2 deletions(-)

Modified: trunk/boost/get_pointer.hpp
==============================================================================
--- trunk/boost/get_pointer.hpp (original)
+++ trunk/boost/get_pointer.hpp 2012-10-31 16:04:14 EDT (Wed, 31 Oct 2012)
@@ -3,13 +3,15 @@
 // accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 #ifndef GET_POINTER_DWA20021219_HPP
-# define GET_POINTER_DWA20021219_HPP
+#define GET_POINTER_DWA20021219_HPP
+
+#include <boost/config.hpp>
 
 // In order to avoid circular dependencies with Boost.TR1
 // we make sure that our include of <memory> doesn't try to
 // pull in the TR1 headers: that's why we use this header
 // rather than including <memory> directly:
-# include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
+#include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
 
 namespace boost {
 
@@ -27,6 +29,19 @@
     return p.get();
 }
 
+#if !defined( BOOST_NO_CXX11_SMART_PTR )
+
+template<class T> T * get_pointer( std::unique_ptr<T> const& p )
+{
+ return p.get();
+}
+
+template<class T> T * get_pointer( std::shared_ptr<T> const& p )
+{
+ return p.get();
+}
+
+#endif
 
 } // namespace boost
 


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