STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Types | List of all members
shared_future< _Ty & > Class Template Reference
Inheritance diagram for shared_future< _Ty & >:
_State_manager< _Ty * >

Public Member Functions

 shared_future () _NOEXCEPT
 
 shared_future (const shared_future &_Other)
 
shared_futureoperator= (const shared_future &_Right)
 
 shared_future (future< _Ty & > &&_Other) _NOEXCEPT
 
 shared_future (shared_future &&_Other) _NOEXCEPT
 
shared_futureoperator= (shared_future &&_Right) _NOEXCEPT
 
 ~shared_future () _NOEXCEPT
 
_Ty & get () const
 
- Public Member Functions inherited from _State_manager< _Ty * >
 _State_manager ()
 
 _State_manager (_Associated_state< _Ty * > *_New_state, bool _Get_once)
 
 _State_manager (const _State_manager &_Other, bool _Get_once=false)
 
 _State_manager (_State_manager &&_Other, bool _Get_once=false)
 
 ~_State_manager () _NOEXCEPT
 
_State_manageroperator= (const _State_manager &_Other)
 
_State_manageroperator= (_State_manager &&_Other)
 
bool valid () const _NOEXCEPT
 
void wait () const
 
_Future_status wait_for (const chrono::duration< _Rep, _Per > &_Rel_time) const
 
_Future_status wait_until (const chrono::time_point< _Clock, _Dur > &_Abs_time) const
 
_Ty *& _Get_value () const
 
void _Set_value (const _Ty *&_Val, bool _Defer)
 
void _Set_value (_Ty *&&_Val, bool _Defer)
 
void _Set_exception (_XSTD exception_ptr _Exc, bool _Defer)
 
void _Swap (_State_manager &_Other)
 
_Associated_state< _Ty * > * _Ptr () const
 
void _Copy_from (const _State_manager &_Other)
 
void _Move_from (_State_manager &_Other)
 
bool _Is_ready () const
 

Private Types

typedef _State_manager< _Ty * > _Mybase
 

Member Typedef Documentation

template<class _Ty >
typedef _State_manager<_Ty *> shared_future< _Ty & >::_Mybase
private

Constructor & Destructor Documentation

template<class _Ty >
shared_future< _Ty & >::shared_future ( )
inline
1293  { // construct
1294  }
template<class _Ty >
shared_future< _Ty & >::shared_future ( const shared_future< _Ty & > &  _Other)
inline
1297  : _Mybase(_Other)
1298  { // construct from shared_future object
1299  }
_State_manager< _Ty * > _Mybase
Definition: future:1289
template<class _Ty >
shared_future< _Ty & >::shared_future ( future< _Ty & > &&  _Other)
inline
1308  : _Mybase(_STD forward<_Mybase>(_Other))
1309  { // construct from rvalue future object
1310  }
_State_manager< _Ty * > _Mybase
Definition: future:1289
template<class _Ty >
shared_future< _Ty & >::shared_future ( shared_future< _Ty & > &&  _Other)
inline
1313  : _Mybase(_STD forward<shared_future>(_Other))
1314  { // construct from rvalue shared_future object
1315  }
_State_manager< _Ty * > _Mybase
Definition: future:1289
template<class _Ty >
shared_future< _Ty & >::~shared_future ( )
inline
1324  { // destroy
1325  }

Member Function Documentation

template<class _Ty >
_Ty& shared_future< _Ty & >::get ( ) const
inline
1328  { // block until ready then return the stored result or
1329  // throw the stored exception
1330  return (*this->_Get_value());
1331  }
_Ty *& _Get_value() const
Definition: future:1013
template<class _Ty >
shared_future& shared_future< _Ty & >::operator= ( const shared_future< _Ty & > &  _Right)
inline
1302  { // assign from shared_future object
1303  _Mybase::operator=(_Right);
1304  return (*this);
1305  }
_State_manager & operator=(const _State_manager &_Other)
Definition: future:968
template<class _Ty >
shared_future& shared_future< _Ty & >::operator= ( shared_future< _Ty & > &&  _Right)
inline
1318  { // assign from rvalue shared_future object
1319  _Mybase::operator=(_STD forward<shared_future>(_Right));
1320  return (*this);
1321  }
_State_manager & operator=(const _State_manager &_Other)
Definition: future:968

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