#include <boost_shared_ptr.h>
Public Types | |
| typedef _Tp | element_type |
Public Member Functions | |
| shared_ptr () | |
| Construct an empty shared_ptr. | |
| template<typename _Tp1> | |
| shared_ptr (_Tp1 *__p) | |
| Construct a shared_ptr that owns the pointer p. | |
| template<typename _Tp1, typename _Deleter> | |
| shared_ptr (_Tp1 *__p, _Deleter __d) | |
| Construct a shared_ptr that owns the pointer p and the deleter d. | |
| template<typename _Tp1> | |
| shared_ptr (const shared_ptr< _Tp1 > &__r) | |
| If r is empty, constructs an empty shared_ptr; otherwise construct a shared_ptr that shares ownership with r. | |
| template<typename _Tp1> | |
| shared_ptr (const weak_ptr< _Tp1 > &__r) | |
| Constructs a shared_ptr that shares ownership with r and stores a copy of the pointer stored in r. | |
| template<typename _Tp1> | |
| shared_ptr (std::auto_ptr< _Tp1 > &__r) | |
| template<typename _Tp1> | |
| shared_ptr (const shared_ptr< _Tp1 > &__r, __static_cast_tag) | |
| template<typename _Tp1> | |
| shared_ptr (const shared_ptr< _Tp1 > &__r, __const_cast_tag) | |
| template<typename _Tp1> | |
| shared_ptr (const shared_ptr< _Tp1 > &__r, __dynamic_cast_tag) | |
| template<typename _Tp1> | |
| shared_ptr & | operator= (const shared_ptr< _Tp1 > &__r) |
| template<typename _Tp1> | |
| shared_ptr & | operator= (std::auto_ptr< _Tp1 > &__r) |
| void | reset () |
| template<typename _Tp1> | |
| void | reset (_Tp1 *__p) |
| template<typename _Tp1, typename _Deleter> | |
| void | reset (_Tp1 *__p, _Deleter __d) |
| _Reference | operator * () const |
| _Tp * | operator-> () const |
| _Tp * | get () const |
| operator __unspecified_bool_type () const | |
| bool | unique () const |
| long | use_count () const |
| void | swap (shared_ptr< _Tp > &__other) |
Private Types | |
| typedef shared_ptr_traits< _Tp >::reference | _Reference |
| typedef _Tp *shared_ptr::* | __unspecified_bool_type |
Private Member Functions | |
| void * | _M_get_deleter (const std::type_info &__ti) const |
| template<typename _Tp1> | |
| bool | _M_less (const shared_ptr< _Tp1 > &__rhs) const |
Private Attributes | |
| _Tp * | _M_ptr |
| shared_count | _M_refcount |
Friends | |
| class | shared_ptr |
| class | weak_ptr |
| template<typename _Del, typename _Tp1> | |
| _Del * | get_deleter (const shared_ptr< _Tp1 > &) |
| template<typename _Tp1> | |
| bool | operator== (const shared_ptr &__a, const shared_ptr< _Tp1 > &__b) |
| template<typename _Tp1> | |
| bool | operator!= (const shared_ptr &__a, const shared_ptr< _Tp1 > &__b) |
| template<typename _Tp1> | |
| bool | operator< (const shared_ptr &__a, const shared_ptr< _Tp1 > &__b) |
Definition at line 485 of file boost_shared_ptr.h.
typedef _Tp* shared_ptr::* std::tr1::shared_ptr< _Tp >::__unspecified_bool_type [private] |
Definition at line 661 of file boost_shared_ptr.h.
typedef shared_ptr_traits<_Tp>::reference std::tr1::shared_ptr< _Tp >::_Reference [private] |
Definition at line 487 of file boost_shared_ptr.h.
| typedef _Tp std::tr1::shared_ptr< _Tp >::element_type |
Definition at line 491 of file boost_shared_ptr.h.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | ) | [inline] |
Construct an empty shared_ptr.
Definition at line 496 of file boost_shared_ptr.h.
Referenced by std::tr1::shared_ptr< _Tp >::operator=(), and std::tr1::shared_ptr< _Tp >::reset().
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | _Tp1 * | __p | ) | [inline, explicit] |
Construct a shared_ptr that owns the pointer p.
| p | A pointer that is convertible to element_type*. |
| std::bad_alloc,in | which case delete p is called. |
Definition at line 506 of file boost_shared_ptr.h.
References std::tr1::__enable_shared_from_this(), __glibcxx_function_requires, and std::tr1::shared_ptr< _Tp >::_M_refcount.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | _Tp1 * | __p, | |
| _Deleter | __d | |||
| ) | [inline] |
Construct a shared_ptr that owns the pointer p and the deleter d.
| p | A pointer. | |
| d | A deleter. |
| std::bad_alloc,in | which case d(p) is called. |
Definition at line 528 of file boost_shared_ptr.h.
References std::tr1::__enable_shared_from_this(), __glibcxx_function_requires, and std::tr1::shared_ptr< _Tp >::_M_refcount.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | const shared_ptr< _Tp1 > & | __r | ) | [inline] |
If r is empty, constructs an empty shared_ptr; otherwise construct a shared_ptr that shares ownership with r.
| r | A shared_ptr. |
| std::bad_alloc,in | which case |
Definition at line 546 of file boost_shared_ptr.h.
References __glibcxx_function_requires.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | const weak_ptr< _Tp1 > & | __r | ) | [inline, explicit] |
Constructs a shared_ptr that shares ownership with r and stores a copy of the pointer stored in r.
| r | A weak_ptr. |
| bad_weak_ptr | when r.expired(), in which case the constructor has no effect. |
Definition at line 560 of file boost_shared_ptr.h.
References __glibcxx_function_requires, std::tr1::weak_ptr< _Tp >::_M_ptr, and std::tr1::shared_ptr< _Tp >::_M_ptr.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | std::auto_ptr< _Tp1 > & | __r | ) | [inline, explicit] |
Definition at line 573 of file boost_shared_ptr.h.
References std::tr1::__enable_shared_from_this(), std::tr1::shared_ptr< _Tp >::_M_refcount, and std::auto_ptr< _Tp >::get().
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | const shared_ptr< _Tp1 > & | __r, | |
| __static_cast_tag | ||||
| ) | [inline] |
Definition at line 585 of file boost_shared_ptr.h.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | const shared_ptr< _Tp1 > & | __r, | |
| __const_cast_tag | ||||
| ) | [inline] |
Definition at line 591 of file boost_shared_ptr.h.
| std::tr1::shared_ptr< _Tp >::shared_ptr | ( | const shared_ptr< _Tp1 > & | __r, | |
| __dynamic_cast_tag | ||||
| ) | [inline] |
Definition at line 597 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_ptr, and std::tr1::shared_ptr< _Tp >::_M_refcount.
| void* std::tr1::shared_ptr< _Tp >::_M_get_deleter | ( | const std::type_info & | __ti | ) | const [inline, private] |
Definition at line 684 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_refcount, and std::tr1::shared_count::get_deleter().
Referenced by std::tr1::get_deleter().
| bool std::tr1::shared_ptr< _Tp >::_M_less | ( | const shared_ptr< _Tp1 > & | __rhs | ) | const [inline, private] |
Definition at line 689 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_refcount.
| _Tp* std::tr1::shared_ptr< _Tp >::get | ( | void | ) | const [inline] |
| _Reference std::tr1::shared_ptr< _Tp >::operator * | ( | ) | const [inline] |
Definition at line 642 of file boost_shared_ptr.h.
References _GLIBCXX_DEBUG_ASSERT, and std::tr1::shared_ptr< _Tp >::_M_ptr.
| std::tr1::shared_ptr< _Tp >::operator __unspecified_bool_type | ( | ) | const [inline] |
| _Tp* std::tr1::shared_ptr< _Tp >::operator-> | ( | ) | const [inline] |
Definition at line 649 of file boost_shared_ptr.h.
References _GLIBCXX_DEBUG_ASSERT, and std::tr1::shared_ptr< _Tp >::_M_ptr.
| shared_ptr& std::tr1::shared_ptr< _Tp >::operator= | ( | std::auto_ptr< _Tp1 > & | __r | ) | [inline] |
Definition at line 616 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::shared_ptr().
| shared_ptr& std::tr1::shared_ptr< _Tp >::operator= | ( | const shared_ptr< _Tp1 > & | __r | ) | [inline] |
Definition at line 607 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_ptr, and std::tr1::shared_ptr< _Tp >::_M_refcount.
| void std::tr1::shared_ptr< _Tp >::reset | ( | _Tp1 * | __p, | |
| _Deleter | __d | |||
| ) | [inline] |
Definition at line 637 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::shared_ptr().
| void std::tr1::shared_ptr< _Tp >::reset | ( | _Tp1 * | __p | ) | [inline] |
Definition at line 628 of file boost_shared_ptr.h.
References _GLIBCXX_DEBUG_ASSERT, std::tr1::shared_ptr< _Tp >::_M_ptr, and std::tr1::shared_ptr< _Tp >::shared_ptr().
| void std::tr1::shared_ptr< _Tp >::reset | ( | ) | [inline] |
Definition at line 623 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::shared_ptr().
| void std::tr1::shared_ptr< _Tp >::swap | ( | shared_ptr< _Tp > & | __other | ) | [inline] |
Definition at line 676 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_ptr, std::tr1::shared_ptr< _Tp >::_M_refcount, std::tr1::shared_count::swap(), and std::swap().
Referenced by std::tr1::swap().
| bool std::tr1::shared_ptr< _Tp >::unique | ( | ) | const [inline] |
Definition at line 668 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_refcount, and std::tr1::shared_count::unique().
| long std::tr1::shared_ptr< _Tp >::use_count | ( | ) | const [inline] |
Definition at line 672 of file boost_shared_ptr.h.
References std::tr1::shared_ptr< _Tp >::_M_refcount, and std::tr1::shared_count::use_count().
| _Del* get_deleter | ( | const shared_ptr< _Tp1 > & | ) | [friend] |
| bool operator!= | ( | const shared_ptr< _Tp > & | __a, | |
| const shared_ptr< _Tp1 > & | __b | |||
| ) | [friend] |
Definition at line 706 of file boost_shared_ptr.h.
| bool operator< | ( | const shared_ptr< _Tp > & | __a, | |
| const shared_ptr< _Tp1 > & | __b | |||
| ) | [friend] |
Definition at line 711 of file boost_shared_ptr.h.
| bool operator== | ( | const shared_ptr< _Tp > & | __a, | |
| const shared_ptr< _Tp1 > & | __b | |||
| ) | [friend] |
Definition at line 701 of file boost_shared_ptr.h.
friend class shared_ptr [friend] |
Definition at line 692 of file boost_shared_ptr.h.
friend class weak_ptr [friend] |
Definition at line 693 of file boost_shared_ptr.h.
_Tp* std::tr1::shared_ptr< _Tp >::_M_ptr [private] |
Definition at line 714 of file boost_shared_ptr.h.
Referenced by std::tr1::shared_ptr< _Tp >::get(), std::tr1::shared_ptr< _Tp >::operator *(), std::tr1::shared_ptr< _Tp >::operator __unspecified_bool_type(), std::tr1::shared_ptr< _Tp >::operator->(), std::tr1::weak_ptr< _Tp >::operator=(), std::tr1::shared_ptr< _Tp >::operator=(), std::tr1::shared_ptr< _Tp >::reset(), std::tr1::shared_ptr< _Tp >::shared_ptr(), and std::tr1::shared_ptr< _Tp >::swap().
shared_count std::tr1::shared_ptr< _Tp >::_M_refcount [private] |
Definition at line 715 of file boost_shared_ptr.h.
Referenced by std::tr1::shared_ptr< _Tp >::_M_get_deleter(), std::tr1::shared_ptr< _Tp >::_M_less(), std::tr1::weak_ptr< _Tp >::operator=(), std::tr1::shared_ptr< _Tp >::operator=(), std::tr1::shared_ptr< _Tp >::shared_ptr(), std::tr1::shared_ptr< _Tp >::swap(), std::tr1::shared_ptr< _Tp >::unique(), and std::tr1::shared_ptr< _Tp >::use_count().
1.4.7