Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::shared_ptr< T > Singleton Reference

#include <memory.hpp>

Public Types

typedef
boost::detail::sp_element< T >
::type 
element_type
 

Public Member Functions

 shared_ptr () BOOST_NOEXCEPT
 
 shared_ptr (boost::detail::sp_nullptr_t) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (Y *p)
 
template<class Y , class D >
 shared_ptr (Y *p, D d)
 
template<class D >
 shared_ptr (boost::detail::sp_nullptr_t p, D d)
 
template<class Y , class D , class A >
 shared_ptr (Y *p, D d, A a)
 
template<class D , class A >
 shared_ptr (boost::detail::sp_nullptr_t p, D d, A a)
 
 shared_ptr (shared_ptr const &r) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (weak_ptr< Y > const &r)
 
template<class Y >
 shared_ptr (weak_ptr< Y > const &r, boost::detail::sp_nothrow_tag) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, typename boost::detail::sp_enable_if_convertible< Y, T >::type=boost::detail::sp_empty()) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, element_type *p) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (std::auto_ptr< Y > &r)
 
template<class Y >
 shared_ptr (std::auto_ptr< Y > &&r)
 
template<class Y , class D >
 shared_ptr (std::unique_ptr< Y, D > &&r)
 
shared_ptroperator= (shared_ptr const &r) BOOST_NOEXCEPT
 
template<class Y >
shared_ptroperator= (shared_ptr< Y > const &r) BOOST_NOEXCEPT
 
template<class Y >
shared_ptroperator= (std::auto_ptr< Y > &r)
 
template<class Y >
shared_ptroperator= (std::auto_ptr< Y > &&r)
 
template<class Y , class D >
shared_ptroperator= (std::unique_ptr< Y, D > &&r)
 
 shared_ptr (shared_ptr &&r) BOOST_NOEXCEPT
 
template<class Y >
 shared_ptr (shared_ptr< Y > &&r, typename boost::detail::sp_enable_if_convertible< Y, T >::type=boost::detail::sp_empty()) BOOST_NOEXCEPT
 
shared_ptroperator= (shared_ptr &&r) BOOST_NOEXCEPT
 
template<class Y >
shared_ptroperator= (shared_ptr< Y > &&r) BOOST_NOEXCEPT
 
shared_ptroperator= (boost::detail::sp_nullptr_t) BOOST_NOEXCEPT
 
void reset () BOOST_NOEXCEPT
 
template<class Y >
void reset (Y *p)
 
template<class Y , class D >
void reset (Y *p, D d)
 
template<class Y , class D , class A >
void reset (Y *p, D d, A a)
 
template<class Y >
void reset (shared_ptr< Y > const &r, element_type *p)
 
boost::detail::sp_dereference
< T >::type 
operator* () const
 
boost::detail::sp_member_access
< T >::type 
operator-> () const
 
boost::detail::sp_array_access
< T >::type 
operator[] (std::ptrdiff_t i) const
 
element_typeget () const BOOST_NOEXCEPT
 
bool unique () const BOOST_NOEXCEPT
 
long use_count () const BOOST_NOEXCEPT
 
void swap (shared_ptr &other) BOOST_NOEXCEPT
 
template<class Y >
bool owner_before (shared_ptr< Y > const &rhs) const BOOST_NOEXCEPT
 
template<class Y >
bool owner_before (weak_ptr< Y > const &rhs) const BOOST_NOEXCEPT
 
void * _internal_get_deleter (boost::detail::sp_typeinfo const &ti) const BOOST_NOEXCEPT
 
void * _internal_get_untyped_deleter () const BOOST_NOEXCEPT
 
bool _internal_equiv (shared_ptr const &r) const BOOST_NOEXCEPT
 

Friends

template<class Y >
class shared_ptr
 
template<class Y >
class weak_ptr
 

Member Typedef Documentation

template<class T>
typedef boost::detail::sp_element< T >::type boost::shared_ptr< T >::element_type

Constructor & Destructor Documentation

template<class T>
boost::shared_ptr< T >::shared_ptr ( )
inline
template<class T>
boost::shared_ptr< T >::shared_ptr ( boost::detail::sp_nullptr_t  )
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( Y *  p)
inlineexplicit
template<class T>
template<class Y , class D >
boost::shared_ptr< T >::shared_ptr ( Y *  p,
d 
)
inline
template<class T>
template<class D >
boost::shared_ptr< T >::shared_ptr ( boost::detail::sp_nullptr_t  p,
d 
)
inline
template<class T>
template<class Y , class D , class A >
boost::shared_ptr< T >::shared_ptr ( Y *  p,
d,
a 
)
inline
template<class T>
template<class D , class A >
boost::shared_ptr< T >::shared_ptr ( boost::detail::sp_nullptr_t  p,
d,
a 
)
inline
template<class T>
boost::shared_ptr< T >::shared_ptr ( shared_ptr< T > const &  r)
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( weak_ptr< Y > const &  r)
inlineexplicit
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( weak_ptr< Y > const &  r,
boost::detail::sp_nothrow_tag   
)
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( shared_ptr< Y > const &  r,
typename boost::detail::sp_enable_if_convertible< Y, T >::type  = boost::detail::sp_empty() 
)
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( shared_ptr< Y > const &  r,
element_type p 
)
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( std::auto_ptr< Y > &  r)
inlineexplicit
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( std::auto_ptr< Y > &&  r)
inline
template<class T>
template<class Y , class D >
boost::shared_ptr< T >::shared_ptr ( std::unique_ptr< Y, D > &&  r)
inline
template<class T>
boost::shared_ptr< T >::shared_ptr ( shared_ptr< T > &&  r)
inline
template<class T>
template<class Y >
boost::shared_ptr< T >::shared_ptr ( shared_ptr< Y > &&  r,
typename boost::detail::sp_enable_if_convertible< Y, T >::type  = boost::detail::sp_empty() 
)
inline

Member Function Documentation

template<class T>
bool boost::shared_ptr< T >::_internal_equiv ( shared_ptr< T > const &  r) const
inline
template<class T>
void* boost::shared_ptr< T >::_internal_get_deleter ( boost::detail::sp_typeinfo const &  ti) const
inline
template<class T>
void* boost::shared_ptr< T >::_internal_get_untyped_deleter ( ) const
inline
template<class T>
element_type* boost::shared_ptr< T >::get ( ) const
inline

Referenced by boost::basic_regex< Ch, Tr >::begin(), boost::basic_regex< Ch, Tr >::can_be_null(), boost::basic_regex< Ch, Tr >::compare(), boost::signals2::deconstruct_access::deconstruct(), boost::basic_regex< Ch, Tr >::empty(), boost::basic_regex< Ch, Tr >::end(), boost::basic_regex< Ch, Tr >::expression(), boost::basic_regex< Ch, Tr >::flags(), boost::gil::detail::file_mgr::get(), boost::basic_regex< Ch, Tr >::get_data(), boost::basic_regex< Ch, Tr >::get_first_state(), boost::promise< R & >::get_future(), boost::promise< void >::get_future(), boost::basic_regex< Ch, Tr >::get_map(), boost::basic_regex< Ch, Tr >::get_restart_type(), boost::basic_regex< Ch, Tr >::get_traits(), boost::basic_regex< Ch, Tr >::getloc(), boost::filesystem::recursive_directory_iterator::increment(), boost::gil::detail::jpeg_reader::init(), boost::filesystem::recursive_directory_iterator::level(), boost::basic_regex< Ch, Tr >::mark_count(), boost::filesystem::recursive_directory_iterator::no_push(), boost::filesystem::recursive_directory_iterator::no_push_pending(), boost::weak_ptr< shared_state_base >::operator=(), boost::u32regex_iterator< BidirectionalIterator >::operator==(), boost::regex_iterator< BidirectionalIterator, charT, traits >::operator==(), boost::u32regex_token_iterator< BidirectionalIterator >::operator==(), boost::regex_token_iterator< BidirectionalIterator, charT, traits >::operator==(), boost::filesystem::recursive_directory_iterator::pop(), boost::put(), boost::archive::detail::shared_ptr_helper::reset(), boost::serialization::save(), boost::promise< R & >::set_exception_at_thread_exit(), boost::promise< void >::set_exception_at_thread_exit(), boost::promise< R & >::set_value_at_thread_exit(), boost::promise< void >::set_value_at_thread_exit(), boost::enable_shared_from_this< shared_state_base >::shared_from_this(), boost::basic_regex< Ch, Tr >::size(), boost::basic_regex< Ch, Tr >::status(), boost::filesystem::recursive_directory_iterator::status(), boost::basic_regex< Ch, Tr >::str(), boost::basic_regex< Ch, Tr >::subexpression(), and boost::filesystem::recursive_directory_iterator::symlink_status().

template<class T>
boost::detail::sp_dereference< T >::type boost::shared_ptr< T >::operator* ( ) const
inline
template<class T>
boost::detail::sp_member_access< T >::type boost::shared_ptr< T >::operator-> ( ) const
inline
template<class T>
shared_ptr& boost::shared_ptr< T >::operator= ( shared_ptr< T > const &  r)
inline
template<class T>
template<class Y >
shared_ptr& boost::shared_ptr< T >::operator= ( shared_ptr< Y > const &  r)
inline
template<class T>
template<class Y >
shared_ptr& boost::shared_ptr< T >::operator= ( std::auto_ptr< Y > &  r)
inline
template<class T>
template<class Y >
shared_ptr& boost::shared_ptr< T >::operator= ( std::auto_ptr< Y > &&  r)
inline
template<class T>
template<class Y , class D >
shared_ptr& boost::shared_ptr< T >::operator= ( std::unique_ptr< Y, D > &&  r)
inline
template<class T>
shared_ptr& boost::shared_ptr< T >::operator= ( shared_ptr< T > &&  r)
inline
template<class T>
template<class Y >
shared_ptr& boost::shared_ptr< T >::operator= ( shared_ptr< Y > &&  r)
inline
template<class T>
shared_ptr& boost::shared_ptr< T >::operator= ( boost::detail::sp_nullptr_t  )
inline
template<class T>
boost::detail::sp_array_access< T >::type boost::shared_ptr< T >::operator[] ( std::ptrdiff_t  i) const
inline
template<class T>
template<class Y >
bool boost::shared_ptr< T >::owner_before ( shared_ptr< Y > const &  rhs) const
inline
template<class T>
template<class Y >
bool boost::shared_ptr< T >::owner_before ( weak_ptr< Y > const &  rhs) const
inline
template<class T>
void boost::shared_ptr< T >::reset ( void  )
inline

Referenced by boost::detail::basic_future< R >::basic_future(), boost::signals2::shared_connection_block::block(), boost::BOOST_THREAD_DCL_MOVABLE_BEG(), boost::parallel::variant_distribution< process_group_type, Vertex >::clear(), boost::BOOST_RT_PARAM_NAMESPACE::cla::parser::get(), boost::unique_future< R >::get(), boost::signals2::detail::connection_body_base::get_blocker(), boost::unique_future< R >::get_or(), boost::parallel::global_index_map< VertexIndexMap, VertexGlobalMap >::global_index_map(), boost::filesystem::recursive_directory_iterator::increment(), boost::BOOST_RT_PARAM_NAMESPACE::environment::rt_env_detail::init_new_var(), boost::detail::esft2_deleter_wrapper::operator()(), boost::u32regex_iterator< BidirectionalIterator >::operator++(), boost::regex_iterator< BidirectionalIterator, charT, traits >::operator++(), boost::u32regex_token_iterator< BidirectionalIterator >::operator++(), boost::regex_token_iterator< BidirectionalIterator, charT, traits >::operator++(), boost::spirit::stored_rule< T0, T1, T2, EmbedByValue >::operator=(), boost::unit_test::callback0< R >::operator=(), boost::BOOST_RT_PARAM_NAMESPACE::environment::variable< T >::operator=(), boost::unit_test::callback1< ParamType >::operator=(), boost::unit_test::callback2< boost::BOOST_RT_PARAM_NAMESPACE::cla::argv_traverser &, boost::boost::optional< T > & >::operator=(), boost::unit_test::callback3< T1, T2, T3, R >::operator=(), boost::detail::basic_future< R >::operator=(), boost::promise< R & >::operator=(), boost::promise< void >::operator=(), boost::filesystem::recursive_directory_iterator::pop(), boost::BOOST_RT_PARAM_NAMESPACE::cla::typed_argument_factory< T >::produce_using(), boost::promise< R & >::promise(), boost::promise< void >::promise(), boost::filesystem::recursive_directory_iterator::recursive_directory_iterator(), boost::regex_iterator< BidirectionalIterator, charT, traits >::regex_iterator(), boost::regex_token_iterator< BidirectionalIterator, charT, traits >::regex_token_iterator(), boost::archive::detail::shared_ptr_helper::reset(), boost::aux::scoped_thread_attribute::scoped_thread_attribute(), boost::mpi::graph_communicator::setup_graph(), boost::thread_specific_ptr< formatting_context >::thread_specific_ptr(), boost::u32regex_iterator< BidirectionalIterator >::u32regex_iterator(), boost::u32regex_token_iterator< BidirectionalIterator >::u32regex_token_iterator(), boost::signals2::shared_connection_block::unblock(), and boost::graph::vertex_list_adaptor< Graph, GlobalIndexMap >::vertex_list_adaptor().

template<class T>
template<class Y >
void boost::shared_ptr< T >::reset ( Y *  p)
inline
template<class T>
template<class Y , class D >
void boost::shared_ptr< T >::reset ( Y *  p,
d 
)
inline
template<class T>
template<class Y , class D , class A >
void boost::shared_ptr< T >::reset ( Y *  p,
d,
a 
)
inline
template<class T>
template<class Y >
void boost::shared_ptr< T >::reset ( shared_ptr< Y > const &  r,
element_type p 
)
inline
template<class T>
bool boost::shared_ptr< T >::unique ( void  ) const
inline

Friends And Related Function Documentation

template<class T>
template<class Y >
friend class shared_ptr
friend
template<class T>
template<class Y >
friend class weak_ptr
friend

The documentation for this singleton was generated from the following files: