Quick Links: |
Provide a generic reference-counted shared pointer wrapper. More...
Go to the source code of this file.
Classes | |
struct | bslstl::SharedPtr_RepFromExistingSharedPtr |
class | bsl::shared_ptr< ELEMENT_TYPE > |
class | bsl::weak_ptr< ELEMENT_TYPE > |
class | bsl::enable_shared_from_this< ELEMENT_TYPE > |
struct | bslstl::SharedPtrUtil |
struct | bslstl::SharedPtrNilDeleter |
struct | bslstl::SharedPtr_DefaultDeleter< bool > |
struct | bslstl::SharedPtr_ImpUtil |
class | bslstl::SharedPtr_RepProctor |
Namespaces | |
namespace | bslstl |
namespace | bsl |
Defines | |
#define | BSLSTL_SHAREDPTR_DECLARE_IF_CONVERTIBLE |
#define | BSLSTL_SHAREDPTR_DEFINE_IF_CONVERTIBLE |
#define | BSLSTL_SHAREDPTR_DECLARE_IF_COMPATIBLE |
#define | BSLSTL_SHAREDPTR_DEFINE_IF_COMPATIBLE |
#define | BSLSTL_SHAREDPTR_DECLARE_IF_DELETER(FUNCTOR, ARGUMENT) |
#define | BSLSTL_SHAREDPTR_DEFINE_IF_DELETER(FUNCTOR, ARGUMENT) |
#define | BSLSTL_SHAREDPTR_DECLARE_IF_NULLPTR_DELETER(FUNCTOR) |
#define | BSLSTL_SHAREDPTR_DEFINE_IF_NULLPTR_DELETER(FUNCTOR) |
Functions | |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator== (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator!= (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator< (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator> (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator<= (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE , class RHS_TYPE > | |
bool | bsl::operator>= (const shared_ptr< LHS_TYPE > &lhs, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator== (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator== (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator!= (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator!= (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator< (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator< (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator<= (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator<= (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator> (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator> (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class LHS_TYPE > | |
bool | bsl::operator>= (const shared_ptr< LHS_TYPE > &lhs, nullptr_t) BSLS_KEYWORD_NOEXCEPT |
template<class RHS_TYPE > | |
bool | bsl::operator>= (nullptr_t, const shared_ptr< RHS_TYPE > &rhs) BSLS_KEYWORD_NOEXCEPT |
template<class CHAR_TYPE , class CHAR_TRAITS , class ELEMENT_TYPE > | |
std::basic_ostream< CHAR_TYPE, CHAR_TRAITS > & | bsl::operator<< (std::basic_ostream< CHAR_TYPE, CHAR_TRAITS > &stream, const shared_ptr< ELEMENT_TYPE > &rhs) |
template<class HASHALG , class ELEMENT_TYPE > | |
void | bsl::hashAppend (HASHALG &hashAlg, const shared_ptr< ELEMENT_TYPE > &input) |
template<class ELEMENT_TYPE > | |
void | bsl::swap (shared_ptr< ELEMENT_TYPE > &a, shared_ptr< ELEMENT_TYPE > &b) BSLS_KEYWORD_NOEXCEPT |
template<class DELETER , class ELEMENT_TYPE > | |
DELETER * | bsl::get_deleter (const shared_ptr< ELEMENT_TYPE > &p) BSLS_KEYWORD_NOEXCEPT |
template<class TO_TYPE , class FROM_TYPE > | |
shared_ptr< TO_TYPE > | bsl::const_pointer_cast (const shared_ptr< FROM_TYPE > &source) BSLS_KEYWORD_NOEXCEPT |
template<class TO_TYPE , class FROM_TYPE > | |
shared_ptr< TO_TYPE > | bsl::dynamic_pointer_cast (const shared_ptr< FROM_TYPE > &source) BSLS_KEYWORD_NOEXCEPT |
template<class TO_TYPE , class FROM_TYPE > | |
shared_ptr< TO_TYPE > | bsl::static_pointer_cast (const shared_ptr< FROM_TYPE > &source) BSLS_KEYWORD_NOEXCEPT |
template<class TO_TYPE , class FROM_TYPE > | |
shared_ptr< TO_TYPE > | bsl::reinterpret_pointer_cast (const shared_ptr< FROM_TYPE > &source) BSLS_KEYWORD_NOEXCEPT |
template<class ELEMENT_TYPE , class ALLOC , class... ARGS> | |
enable_if<!is_array < ELEMENT_TYPE >::value, shared_ptr< ELEMENT_TYPE > >::type | bsl::allocate_shared (ALLOC basicAllocator, ARGS &&...args) |
template<class ELEMENT_TYPE , class ALLOC , class... ARGS> | |
enable_if<!is_array < ELEMENT_TYPE >::value, shared_ptr< ELEMENT_TYPE > >::type | bsl::allocate_shared (ALLOC *basicAllocator, ARGS &&...args) |
template<class ELEMENT_TYPE , class... ARGS> | |
enable_if<!is_array < ELEMENT_TYPE >::value, shared_ptr< ELEMENT_TYPE > >::type | bsl::make_shared (ARGS &&...args) |
template<class ELEMENT_TYPE > | |
void | bsl::swap (weak_ptr< ELEMENT_TYPE > &a, weak_ptr< ELEMENT_TYPE > &b) BSLS_KEYWORD_NOEXCEPT |
#define BSLSTL_SHAREDPTR_DECLARE_IF_CONVERTIBLE |
#define BSLSTL_SHAREDPTR_DEFINE_IF_CONVERTIBLE |
#define BSLSTL_SHAREDPTR_DECLARE_IF_COMPATIBLE |
#define BSLSTL_SHAREDPTR_DEFINE_IF_COMPATIBLE |
#define BSLSTL_SHAREDPTR_DECLARE_IF_DELETER | ( | FUNCTOR, | ||
ARGUMENT | ||||
) |
#define BSLSTL_SHAREDPTR_DEFINE_IF_DELETER | ( | FUNCTOR, | ||
ARGUMENT | ||||
) |
#define BSLSTL_SHAREDPTR_DECLARE_IF_NULLPTR_DELETER | ( | FUNCTOR | ) |
#define BSLSTL_SHAREDPTR_DEFINE_IF_NULLPTR_DELETER | ( | FUNCTOR | ) |