hpx/async_distributed/continuation.hpp

See Public API for a list of names and headers that are part of the public HPX API.

template<>
struct typed_continuation<void, util::unused_type> : public hpx::actions::continuation

Public Types

template<>
using result_type = void

Public Functions

typed_continuation()
typed_continuation(hpx::id_type const &id)
typed_continuation(hpx::id_type &&id)
template<typename F>
typed_continuation(hpx::id_type const &id, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, F &&f)
typed_continuation(hpx::id_type const &id, naming::address &&addr)
typed_continuation(hpx::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(hpx::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, naming::address &&addr, F &&f)
template<typename F, typename Enable = typename std::enable_if<!std::is_same<typename std::decay<F>::type, typed_continuation>::value>::type>
typed_continuation(F &&f)
typed_continuation(typed_continuation&&)
typed_continuation &operator=(typed_continuation&&)
void trigger()
void trigger_value(util::unused_type&&)
void trigger_value(util::unused_type const&)

Private Types

template<>
using function_type = hpx::distributed::move_only_function<void(hpx::id_type)>

Private Functions

void serialize(hpx::serialization::input_archive &ar, unsigned)
void serialize(hpx::serialization::output_archive &ar, unsigned)

Private Members

function_type f_

Friends

friend hpx::serialization::access

serialization support

namespace hpx
namespace actions
class continuation

Subclassed by hpx::actions::typed_continuation< Result, Result >, hpx::actions::typed_continuation< void, util::unused_type >

Public Types

typedef void continuation_tag

Public Functions

continuation()
continuation(hpx::id_type const &id)
continuation(hpx::id_type &&id)
continuation(hpx::id_type const &id, naming::address &&addr)
continuation(hpx::id_type &&id, naming::address &&addr)
continuation(continuation &&o)
continuation &operator=(continuation &&o)
void trigger_error(std::exception_ptr const &e)
void trigger_error(std::exception_ptr &&e)
void serialize(hpx::serialization::input_archive &ar, unsigned)
void serialize(hpx::serialization::output_archive &ar, unsigned)
constexpr hpx::id_type const &get_id() const
constexpr naming::address get_addr() const

Protected Attributes

hpx::id_type id_
naming::address addr_
template<typename Result, typename RemoteResult>
struct typed_continuation

Public Functions

typed_continuation()
typed_continuation(hpx::id_type const &id)
typed_continuation(hpx::id_type &&id)
template<typename F>
typed_continuation(hpx::id_type const &id, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, F &&f)
typed_continuation(hpx::id_type const &id, naming::address &&addr)
typed_continuation(hpx::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(hpx::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, naming::address &&addr, F &&f)
template<typename F, typename Enable = typename std::enable_if<!std::is_same<typename std::decay<F>::type, typed_continuation>::value>::type>
typed_continuation(F &&f)
typed_continuation(typed_continuation&&)
typed_continuation &operator=(typed_continuation&&)
void trigger_value(RemoteResult &&result)

Private Types

template<>
using base_type = typed_continuation<RemoteResult>
template<>
using function_type = hpx::distributed::move_only_function<void(hpx::id_type, RemoteResult)>

Private Functions

template<typename Archive>
void serialize(Archive &ar, unsigned)

Friends

friend hpx::actions::hpx::serialization::access

serialization support

template<typename Result>
struct typed_continuation<Result, Result> : public hpx::actions::continuation

Public Types

template<>
using result_type = Result

Public Functions

typed_continuation()
typed_continuation(hpx::id_type const &id)
typed_continuation(hpx::id_type &&id)
template<typename F>
typed_continuation(hpx::id_type const &id, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, F &&f)
typed_continuation(hpx::id_type const &id, naming::address &&addr)
typed_continuation(hpx::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(hpx::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, naming::address &&addr, F &&f)
template<typename F, typename Enable = typename std::enable_if<!std::is_same<typename std::decay<F>::type, typed_continuation>::value>::type>
typed_continuation(F &&f)
typed_continuation(typed_continuation&&)
typed_continuation &operator=(typed_continuation&&)
void trigger_value(Result &&result)

Protected Attributes

function_type f_

Private Types

template<>
using function_type = hpx::distributed::move_only_function<void(hpx::id_type, Result)>

Private Functions

template<typename Archive>
void serialize(Archive &ar, unsigned)

Friends

friend hpx::actions::hpx::serialization::access

serialization support

template<>
struct typed_continuation<void, util::unused_type> : public hpx::actions::continuation

Public Types

template<>
using result_type = void

Public Functions

typed_continuation()
typed_continuation(hpx::id_type const &id)
typed_continuation(hpx::id_type &&id)
template<typename F>
typed_continuation(hpx::id_type const &id, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, F &&f)
typed_continuation(hpx::id_type const &id, naming::address &&addr)
typed_continuation(hpx::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(hpx::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(hpx::id_type &&id, naming::address &&addr, F &&f)
template<typename F, typename Enable = typename std::enable_if<!std::is_same<typename std::decay<F>::type, typed_continuation>::value>::type>
typed_continuation(F &&f)
typed_continuation(typed_continuation&&)
typed_continuation &operator=(typed_continuation&&)
void trigger()
void trigger_value(util::unused_type&&)
void trigger_value(util::unused_type const&)

Private Types

template<>
using function_type = hpx::distributed::move_only_function<void(hpx::id_type)>

Private Functions

void serialize(hpx::serialization::input_archive &ar, unsigned)
void serialize(hpx::serialization::output_archive &ar, unsigned)

Private Members

function_type f_

Friends

friend hpx::actions::hpx::serialization::access

serialization support