diff options
Diffstat (limited to 'boost/smart_ptr/intrusive_ptr.hpp')
-rw-r--r-- | boost/smart_ptr/intrusive_ptr.hpp | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/boost/smart_ptr/intrusive_ptr.hpp b/boost/smart_ptr/intrusive_ptr.hpp index 0e46212165..0ab075d367 100644 --- a/boost/smart_ptr/intrusive_ptr.hpp +++ b/boost/smart_ptr/intrusive_ptr.hpp @@ -6,11 +6,11 @@ // // Copyright (c) 2001, 2002 Peter Dimov // -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) // -// See http://www.boost.org/libs/smart_ptr/intrusive_ptr.html for documentation. +// See http://www.boost.org/libs/smart_ptr/ for documentation. // #include <boost/config.hpp> @@ -141,7 +141,7 @@ public: } template<class U> - intrusive_ptr & operator=(intrusive_ptr<U> && rhs) BOOST_NOEXCEPT + intrusive_ptr & operator=(intrusive_ptr<U> && rhs) BOOST_SP_NOEXCEPT { this_type( static_cast< intrusive_ptr<U> && >( rhs ) ).swap(*this); return *this; @@ -161,7 +161,7 @@ public: return *this; } - void reset() BOOST_NOEXCEPT + void reset() { this_type().swap( *this ); } @@ -176,25 +176,25 @@ public: this_type( rhs, add_ref ).swap( *this ); } - T * get() const BOOST_NOEXCEPT + T * get() const BOOST_SP_NOEXCEPT { return px; } - T * detach() BOOST_NOEXCEPT + T * detach() BOOST_SP_NOEXCEPT { T * ret = px; px = 0; return ret; } - T & operator*() const + T & operator*() const BOOST_SP_NOEXCEPT_WITH_ASSERT { BOOST_ASSERT( px != 0 ); return *px; } - T * operator->() const + T * operator->() const BOOST_SP_NOEXCEPT_WITH_ASSERT { BOOST_ASSERT( px != 0 ); return px; @@ -203,7 +203,7 @@ public: // implicit conversion to "bool" #include <boost/smart_ptr/detail/operator_bool.hpp> - void swap(intrusive_ptr & rhs) BOOST_NOEXCEPT + void swap(intrusive_ptr & rhs) BOOST_SP_NOEXCEPT { T * tmp = px; px = rhs.px; @@ -215,32 +215,32 @@ private: T * px; }; -template<class T, class U> inline bool operator==(intrusive_ptr<T> const & a, intrusive_ptr<U> const & b) +template<class T, class U> inline bool operator==(intrusive_ptr<T> const & a, intrusive_ptr<U> const & b) BOOST_SP_NOEXCEPT { return a.get() == b.get(); } -template<class T, class U> inline bool operator!=(intrusive_ptr<T> const & a, intrusive_ptr<U> const & b) +template<class T, class U> inline bool operator!=(intrusive_ptr<T> const & a, intrusive_ptr<U> const & b) BOOST_SP_NOEXCEPT { return a.get() != b.get(); } -template<class T, class U> inline bool operator==(intrusive_ptr<T> const & a, U * b) +template<class T, class U> inline bool operator==(intrusive_ptr<T> const & a, U * b) BOOST_SP_NOEXCEPT { return a.get() == b; } -template<class T, class U> inline bool operator!=(intrusive_ptr<T> const & a, U * b) +template<class T, class U> inline bool operator!=(intrusive_ptr<T> const & a, U * b) BOOST_SP_NOEXCEPT { return a.get() != b; } -template<class T, class U> inline bool operator==(T * a, intrusive_ptr<U> const & b) +template<class T, class U> inline bool operator==(T * a, intrusive_ptr<U> const & b) BOOST_SP_NOEXCEPT { return a == b.get(); } -template<class T, class U> inline bool operator!=(T * a, intrusive_ptr<U> const & b) +template<class T, class U> inline bool operator!=(T * a, intrusive_ptr<U> const & b) BOOST_SP_NOEXCEPT { return a != b.get(); } @@ -249,7 +249,7 @@ template<class T, class U> inline bool operator!=(T * a, intrusive_ptr<U> const // Resolve the ambiguity between our op!= and the one in rel_ops -template<class T> inline bool operator!=(intrusive_ptr<T> const & a, intrusive_ptr<T> const & b) +template<class T> inline bool operator!=(intrusive_ptr<T> const & a, intrusive_ptr<T> const & b) BOOST_SP_NOEXCEPT { return a.get() != b.get(); } @@ -258,41 +258,41 @@ template<class T> inline bool operator!=(intrusive_ptr<T> const & a, intrusive_p #if !defined( BOOST_NO_CXX11_NULLPTR ) -template<class T> inline bool operator==( intrusive_ptr<T> const & p, boost::detail::sp_nullptr_t ) BOOST_NOEXCEPT +template<class T> inline bool operator==( intrusive_ptr<T> const & p, boost::detail::sp_nullptr_t ) BOOST_SP_NOEXCEPT { return p.get() == 0; } -template<class T> inline bool operator==( boost::detail::sp_nullptr_t, intrusive_ptr<T> const & p ) BOOST_NOEXCEPT +template<class T> inline bool operator==( boost::detail::sp_nullptr_t, intrusive_ptr<T> const & p ) BOOST_SP_NOEXCEPT { return p.get() == 0; } -template<class T> inline bool operator!=( intrusive_ptr<T> const & p, boost::detail::sp_nullptr_t ) BOOST_NOEXCEPT +template<class T> inline bool operator!=( intrusive_ptr<T> const & p, boost::detail::sp_nullptr_t ) BOOST_SP_NOEXCEPT { return p.get() != 0; } -template<class T> inline bool operator!=( boost::detail::sp_nullptr_t, intrusive_ptr<T> const & p ) BOOST_NOEXCEPT +template<class T> inline bool operator!=( boost::detail::sp_nullptr_t, intrusive_ptr<T> const & p ) BOOST_SP_NOEXCEPT { return p.get() != 0; } #endif -template<class T> inline bool operator<(intrusive_ptr<T> const & a, intrusive_ptr<T> const & b) +template<class T> inline bool operator<(intrusive_ptr<T> const & a, intrusive_ptr<T> const & b) BOOST_SP_NOEXCEPT { return std::less<T *>()(a.get(), b.get()); } -template<class T> void swap(intrusive_ptr<T> & lhs, intrusive_ptr<T> & rhs) +template<class T> void swap(intrusive_ptr<T> & lhs, intrusive_ptr<T> & rhs) BOOST_SP_NOEXCEPT { lhs.swap(rhs); } // mem_fn support -template<class T> T * get_pointer(intrusive_ptr<T> const & p) +template<class T> T * get_pointer(intrusive_ptr<T> const & p) BOOST_SP_NOEXCEPT { return p.get(); } @@ -351,7 +351,7 @@ template<class E, class T, class Y> std::basic_ostream<E, T> & operator<< (std:: template< class T > struct hash; -template< class T > std::size_t hash_value( boost::intrusive_ptr<T> const & p ) +template< class T > std::size_t hash_value( boost::intrusive_ptr<T> const & p ) BOOST_SP_NOEXCEPT { return boost::hash< T* >()( p.get() ); } |