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

Public Types

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

Public Member Functions

 shared_future (const shared_future &__sf)
 
 shared_future (future< _Res & > &&__uf) noexcept
 
 shared_future (shared_future &&__sf) noexcept
 
_Res & get () const
 
shared_futureoperator= (const shared_future &__sf)
 
shared_futureoperator= (shared_future &&__sf) noexcept
 
bool valid () const noexcept
 
void wait () const
 
future_status wait_for (const chrono::duration< _Rep, _Period > &__rel) const
 
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

__result_type _M_get_result () const
 
void _M_swap (__basic_future &__that) noexcept
 

Detailed Description

template<typename _Res>
class std::shared_future< _Res & >

Partial specialization for shared_future<R&>

Definition at line 946 of file future.

Member Typedef Documentation

◆ __result_type

typedef __future_base::_Result<_Res & >& std::__basic_future< _Res & >::__result_type
protectedinherited

Definition at line 677 of file future.

◆ __state_type

typedef shared_ptr<_State_base> std::__basic_future< _Res & >::__state_type
protectedinherited

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

◆ shared_future() [1/4]

template<typename _Res >
constexpr std::shared_future< _Res & >::shared_future ( )
inlineconstexprnoexcept

Definition at line 951 of file future.

◆ shared_future() [2/4]

template<typename _Res >
std::shared_future< _Res & >::shared_future ( const shared_future< _Res & > &  __sf)
inline

Copy constructor.

Definition at line 954 of file future.

◆ shared_future() [3/4]

template<typename _Res >
std::shared_future< _Res & >::shared_future ( future< _Res & > &&  __uf)
inlinenoexcept

Construct from a future rvalue.

Definition at line 957 of file future.

◆ shared_future() [4/4]

template<typename _Res >
std::shared_future< _Res & >::shared_future ( shared_future< _Res & > &&  __sf)
inlinenoexcept

Construct from a shared_future rvalue.

Definition at line 962 of file future.

Member Function Documentation

◆ _M_get_result()

__result_type std::__basic_future< _Res & >::_M_get_result ( ) const
inlineprotectedinherited

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

Definition at line 716 of file future.

◆ _M_swap()

void std::__basic_future< _Res & >::_M_swap ( __basic_future< _Res & > &  __that)
inlineprotectednoexceptinherited

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.

◆ get()

template<typename _Res >
_Res & std::shared_future< _Res & >::get ( ) const
inline

Retrieving the value.

Definition at line 980 of file future.

◆ operator=() [1/2]

template<typename _Res >
shared_future & std::shared_future< _Res & >::operator= ( const shared_future< _Res & > &  __sf)
inline

Definition at line 966 of file future.

◆ operator=() [2/2]

template<typename _Res >
shared_future & std::shared_future< _Res & >::operator= ( shared_future< _Res & > &&  __sf)
inlinenoexcept

Definition at line 972 of file future.

◆ valid()

bool std::__basic_future< _Res & >::valid ( ) const
inlinenoexceptinherited

Definition at line 688 of file future.

◆ wait()

void std::__basic_future< _Res & >::wait ( ) const
inlineinherited

Definition at line 691 of file future.

◆ wait_for()

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

Definition at line 699 of file future.

◆ wait_until()

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

Definition at line 707 of file future.


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