Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::basic_future< R > Class Template Reference

Common implementation for future and shared_future. More...

#include <future.hpp>

Inheritance diagram for boost::detail::basic_future< R >:
Collaboration diagram for boost::detail::basic_future< R >:

Public Types

typedef boost::shared_ptr
< detail::shared_state< R > > 
future_ptr
 
typedef detail::shared_state
< R >::move_dest_type 
move_dest_type
 
typedef future_state::state state
 

Public Member Functions

void set_exceptional_if_invalid ()
 
 basic_future (future_ptr a_future)
 
 basic_future (const shared_future< R > &) BOOST_NOEXCEPT
 
 basic_future ()
 
 basic_future (exceptional_ptr const &ex)
 
 ~basic_future ()
 
 basic_future (BOOST_THREAD_RV_REF(basic_future) other) BOOST_NOEXCEPT
 
basic_futureoperator= (BOOST_THREAD_RV_REF(basic_future) other) BOOST_NOEXCEPT
 
void swap (basic_future &that) BOOST_NOEXCEPT
 
state get_state () const
 
bool is_ready () const
 
bool has_exception () const
 
bool has_value () const
 
launch launch_policy (boost::unique_lock< boost::mutex > &lk) const
 
exception_ptr get_exception_ptr ()
 
bool valid () const BOOST_NOEXCEPT
 
void wait () const
 

Static Public Member Functions

static future_ptr make_exceptional_future_ptr (exceptional_ptr const &ex)
 

Public Attributes

future_ptr future_
 

Detailed Description

template<typename R>
class boost::detail::basic_future< R >

Common implementation for future and shared_future.

Member Typedef Documentation

template<typename R >
typedef future_state::state boost::detail::basic_future< R >::state

Constructor & Destructor Documentation

template<typename R >
boost::detail::basic_future< R >::basic_future ( future_ptr  a_future)
inline
template<typename R >
boost::detail::basic_future< R >::basic_future ( const shared_future< R > &  )
explicit
template<typename R >
boost::detail::basic_future< R >::basic_future ( )
inline
template<typename R >
boost::detail::basic_future< R >::basic_future ( exceptional_ptr const ex)
inline
template<typename R >
boost::detail::basic_future< R >::~basic_future ( )
inline
template<typename R >
boost::detail::basic_future< R >::basic_future ( BOOST_THREAD_RV_REF(basic_future< R >)  other)
inline

Member Function Documentation

template<typename R >
exception_ptr boost::detail::basic_future< R >::get_exception_ptr ( )
inline
template<typename R >
state boost::detail::basic_future< R >::get_state ( ) const
inline
template<typename R >
bool boost::detail::basic_future< R >::has_exception ( ) const
inline
template<typename R >
bool boost::detail::basic_future< R >::has_value ( ) const
inline
template<typename R >
bool boost::detail::basic_future< R >::is_ready ( ) const
inline
template<typename R >
launch boost::detail::basic_future< R >::launch_policy ( boost::unique_lock< boost::mutex > &  lk) const
inline
template<typename R >
basic_future& boost::detail::basic_future< R >::operator= ( BOOST_THREAD_RV_REF(basic_future< R >)  other)
inline
template<typename R >
void boost::detail::basic_future< R >::swap ( basic_future< R > &  that)
inline
template<typename R >
bool boost::detail::basic_future< R >::valid ( ) const
inline
template<typename R >
void boost::detail::basic_future< R >::wait ( void  ) const
inline

Member Data Documentation


The documentation for this class was generated from the following file: