/usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:// -*- C++ -*- /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:// shared_ptr.hpp /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:template struct shared_ptr_traits /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:template<> struct shared_ptr_traits /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:template<> struct shared_ptr_traits /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:template<> struct shared_ptr_traits /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:template<> struct shared_ptr_traits /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * @class shared_ptr /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * The object pointed to is deleted when the last shared_ptr pointing to it /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: class shared_ptr /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: typedef typename shared_ptr_traits<_Tp>::reference _Reference; /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: /** @brief Construct an empty %shared_ptr. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr() : _M_ptr(0), _M_refcount() // never throws /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: /** @brief Construct a %shared_ptr that owns the pointer @a p. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: explicit shared_ptr(_Tp1* __p) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: // shared_ptr will release p by calling d(p) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: /** @brief Construct a %shared_ptr that owns the pointer @a p /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(_Tp1* __p, _Deleter __d) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: /** @brief If @a r is empty, constructs an empty %shared_ptr; otherwise /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * construct a %shared_ptr that shares ownership with @a r. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * @param r A %shared_ptr. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(const shared_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: /** @brief Constructs a %shared_ptr that shares ownership with @a r /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: explicit shared_ptr(const weak_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: explicit shared_ptr(std::auto_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(const shared_ptr<_Tp1>& __r, __static_cast_tag) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(const shared_ptr<_Tp1>& __r, __const_cast_tag) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(const shared_ptr<_Tp1>& __r, __dynamic_cast_tag) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr& /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator=(const shared_ptr<_Tp1>& __r) // never throws /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr& /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(__r).swap(*this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: { shared_ptr().swap(*this); } /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr(__p).swap(*this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: { shared_ptr(__p, __d).swap(*this); } /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: typedef _Tp* shared_ptr::*__unspecified_bool_type; /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: { return _M_ptr == 0 ? 0 : &shared_ptr::_M_ptr; } /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: swap(shared_ptr<_Tp>& __other) // never throws /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: _M_less(const shared_ptr<_Tp1>& __rhs) const /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: template friend class shared_ptr; /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: get_deleter(const shared_ptr& __p) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator==(const shared_ptr& __a, const shared_ptr<_Tp1>& __b) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator!=(const shared_ptr& __a, const shared_ptr<_Tp1>& __b) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator<(const shared_ptr& __a, const shared_ptr<_Tp1>& __b) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: }; // shared_ptr /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:// 2.2.3.9 shared_ptr casts /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * shared_ptr(static_cast(r.get())) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: static_pointer_cast(const shared_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr<_Tp>(__r, __static_cast_tag()); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * shared_ptr(const_cast(r.get())) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: const_pointer_cast(const shared_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr<_Tp>(__r, __const_cast_tag()); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * shared_ptr(dynamic_cast(r.get())) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: dynamic_pointer_cast(const shared_ptr<_Tp1>& __r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr<_Tp>(__r, __dynamic_cast_tag()); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator<<(std::basic_ostream<_Ch,_Tr>& __os, const shared_ptr<_Tp>& __p) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: weak_ptr(const shared_ptr<_Tp1>& r) /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: operator=(const shared_ptr<_Tp1>& r) // never throws /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr(); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr(*this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return shared_ptr(); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: return expired() ? shared_ptr() : shared_ptr(*this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: template friend class shared_ptr; /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr<_Tp> p(this->_M_weak_this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: shared_ptr p(this->_M_weak_this); /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * @brief std::swap() specialisation for shared_ptr. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: * @relates shared_ptr. /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h: swap(tr1::shared_ptr<_Tp>& __a, tr1::shared_ptr<_Tp>& __b) /usr/include/c++/4.0.0/tr1/memory:#include