libstdc++
std::__basic_future< _Res > Class Template Reference
Inheritance diagram for std::__basic_future< _Res >:
[legend]

Public Types

template<typename _Res >
using _Ptr = unique_ptr< _Res, _Result_base::_Deleter >
 
using _State_base = _State_baseV2
 

Public Member Functions

 __basic_future (const __basic_future &)=delete
 
__basic_futureoperator= (const __basic_future &)=delete
 
bool valid () const noexcept
 
void wait () const
 
template<typename _Rep , typename _Period >
future_status wait_for (const chrono::duration< _Rep, _Period > &__rel) const
 
template<typename _Clock , typename _Duration >
future_status wait_until (const chrono::time_point< _Clock, _Duration > &__abs) const
 

Static Public Member Functions

template<typename _Res , typename _Allocator >
static _Ptr< _Result_alloc< _Res, _Allocator > > _S_allocate_result (const _Allocator &__a)
 
template<typename _Res , typename _Tp >
static _Ptr< _Result< _Res > > _S_allocate_result (const std::allocator< _Tp > &__a)
 
template<typename _Res_ptr , typename _BoundFn >
static _Task_setter< _Res_ptr, _BoundFn > _S_task_setter (_Res_ptr &__ptr, _BoundFn &__call)
 

Protected Types

typedef __future_base::_Result< _Res > & __result_type
 
typedef shared_ptr< _State_base > __state_type
 

Protected Member Functions

 __basic_future (const __state_type &__state)
 
 __basic_future (const shared_future< _Res > &) noexcept
 
 __basic_future (future< _Res > &&) noexcept
 
 __basic_future (shared_future< _Res > &&) noexcept
 
__result_type _M_get_result () const
 
void _M_swap (__basic_future &__that) noexcept
 

Detailed Description

template<typename _Res>
class std::__basic_future< _Res >

Common implementation for future and shared_future.

Definition at line 673 of file future.

Member Typedef Documentation

◆ __result_type

template<typename _Res >
typedef __future_base::_Result<_Res>& std::__basic_future< _Res >::__result_type
protected

Definition at line 677 of file future.

◆ __state_type

template<typename _Res >
typedef shared_ptr<_State_base> std::__basic_future< _Res >::__state_type
protected

Definition at line 676 of file future.

◆ _Ptr

template<typename _Res >
using std::__future_base::_Ptr = unique_ptr<_Res, _Result_base::_Deleter>
inherited

A unique_ptr for result objects.

Definition at line 222 of file future.

◆ _State_base

using std::__future_base::_State_base = _State_baseV2
inherited

Definition at line 597 of file future.

Constructor & Destructor Documentation

◆ __basic_future() [1/2]

template<typename _Res >
std::__basic_future< _Res >::__basic_future ( const __state_type __state)
inlineexplicitprotected

Definition at line 732 of file future.

◆ __basic_future() [2/2]

template<typename _Res >
constexpr std::__basic_future< _Res >::__basic_future ( )
inlineconstexprprotectednoexcept

Definition at line 750 of file future.

Member Function Documentation

◆ _M_get_result()

template<typename _Res >
__result_type std::__basic_future< _Res >::_M_get_result ( ) const
inlineprotected

Wait for the state to be ready and rethrow any stored exception.

Definition at line 716 of file future.

◆ _M_swap()

template<typename _Res >
void std::__basic_future< _Res >::_M_swap ( __basic_future< _Res > &  __that)
inlineprotectednoexcept

Definition at line 725 of file future.

◆ _S_allocate_result() [1/2]

template<typename _Res , typename _Allocator >
static _Ptr< _Result_alloc< _Res, _Allocator > > std::__future_base::_S_allocate_result ( const _Allocator &  __a)
inlinestaticinherited

Definition at line 287 of file future.

◆ _S_allocate_result() [2/2]

template<typename _Res , typename _Tp >
static _Ptr< _Result< _Res > > std::__future_base::_S_allocate_result ( const std::allocator< _Tp > &  __a)
inlinestaticinherited

Definition at line 300 of file future.

◆ _S_task_setter()

template<typename _Res_ptr , typename _BoundFn >
static _Task_setter< _Res_ptr, _BoundFn > std::__future_base::_S_task_setter ( _Res_ptr &  __ptr,
_BoundFn &  __call 
)
inlinestaticinherited

Definition at line 621 of file future.

◆ valid()

template<typename _Res >
bool std::__basic_future< _Res >::valid ( ) const
inlinenoexcept

Definition at line 688 of file future.

◆ wait()

template<typename _Res >
void std::__basic_future< _Res >::wait ( ) const
inline

Definition at line 691 of file future.

◆ wait_for()

template<typename _Res >
template<typename _Rep , typename _Period >
future_status std::__basic_future< _Res >::wait_for ( const chrono::duration< _Rep, _Period > &  __rel) const
inline

Definition at line 699 of file future.

◆ wait_until()

template<typename _Res >
template<typename _Clock , typename _Duration >
future_status std::__basic_future< _Res >::wait_until ( const chrono::time_point< _Clock, _Duration > &  __abs) const
inline

Definition at line 707 of file future.


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