Public Types | Public Member Functions | Static Public Member Functions
efl::_impl::shared_future_varargs_type< Args > Struct Template Reference

Public Types

typedef shared_future_common _base_type
 
typedef std::tuple< Args... > tuple_type
 
typedef shared_future_varargs_type< Args... > _self_type
 
- Public Types inherited from efl::_impl::shared_future_common
typedef Efl_Futurenative_handle_type
 
typedef shared_future_common _self_type
 

Public Member Functions

 shared_future_varargs_type (_base_type const &other)
 
std::tuple< Args... > get () const
 
- Public Member Functions inherited from efl::_impl::shared_future_common
 shared_future_common (Efl_Future *future)
 
 shared_future_common (shared_future_common const &future)
 
shared_future_commonoperator= (shared_future_common const &other)
 
 shared_future_common (shared_future_common &&future)
 
shared_future_commonoperator= (shared_future_common &&other)
 
void swap (shared_future_common &other)
 
bool valid () const noexcept
 
void wait () const
 
native_handle_type native_handle () const noexcept
 

Static Public Member Functions

template<std::size_t N>
static void read_accessor (Eina_Accessor *accessor, std::tuple< typename std::aligned_storage< sizeof(Args), alignof(Args)>::type... > &storage_tuple, wait_state< tuple_type > *wait_state, std::false_type)
 
template<std::size_t N, std::size_t... I>
static void read_accessor_end (std::tuple< typename std::aligned_storage< sizeof(Args), alignof(Args)>::type... > &storage_tuple, wait_state< tuple_type > *wait_state, eina::index_sequence< I... >)
 
template<std::size_t N>
static void read_accessor (Eina_Accessor *, std::tuple< typename std::aligned_storage< sizeof(Args), alignof(Args)>::type... > &storage_tuple, wait_state< tuple_type > *wait_state, std::true_type)
 
static void get_success (void *data, Efl_Event const *event)
 
- Static Public Member Functions inherited from efl::_impl::shared_future_common
static void wait_success (void *data, Efl_Event const *)
 

Additional Inherited Members

- Data Fields inherited from efl::_impl::shared_future_common
Efl_Future_future