actions

The contents of this module can be included with the header hpx/modules/actions.hpp. These headers may be used by user-code but are not guaranteed stable (neither header location nor contents). You are using these at your own risk. If you wish to use non-public functionality from a module we strongly suggest only including the module header hpx/modules/actions.hpp, not the particular header in which the functionality you would like to use is defined. See Public API for a list of names that are part of the public HPX API.

namespace hpx

Functions

bool is_pre_startup()
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(naming::id_type const &id)
typed_continuation(naming::id_type &&id)
template<typename F>
typed_continuation(naming::id_type const &id, F &&f)
template<typename F>
typed_continuation(naming::id_type &&id, F &&f)
typed_continuation(naming::id_type const &id, naming::address &&addr)
typed_continuation(naming::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(naming::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(naming::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 = util::unique_function<void(naming::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(naming::id_type const &id)
continuation(naming::id_type &&id)
continuation(naming::id_type const &id, naming::address &&addr)
continuation(naming::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 naming::id_type const &get_id() const
constexpr naming::address get_addr() const

Protected Attributes

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

Public Functions

typed_continuation()
typed_continuation(naming::id_type const &id)
typed_continuation(naming::id_type &&id)
template<typename F>
typed_continuation(naming::id_type const &id, F &&f)
template<typename F>
typed_continuation(naming::id_type &&id, F &&f)
typed_continuation(naming::id_type const &id, naming::address &&addr)
typed_continuation(naming::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(naming::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(naming::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 = util::unique_function<void(naming::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(naming::id_type const &id)
typed_continuation(naming::id_type &&id)
template<typename F>
typed_continuation(naming::id_type const &id, F &&f)
template<typename F>
typed_continuation(naming::id_type &&id, F &&f)
typed_continuation(naming::id_type const &id, naming::address &&addr)
typed_continuation(naming::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(naming::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(naming::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 = util::unique_function<void(naming::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(naming::id_type const &id)
typed_continuation(naming::id_type &&id)
template<typename F>
typed_continuation(naming::id_type const &id, F &&f)
template<typename F>
typed_continuation(naming::id_type &&id, F &&f)
typed_continuation(naming::id_type const &id, naming::address &&addr)
typed_continuation(naming::id_type &&id, naming::address &&addr)
template<typename F>
typed_continuation(naming::id_type const &id, naming::address &&addr, F &&f)
template<typename F>
typed_continuation(naming::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 = util::unique_function<void(naming::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

namespace hpx
namespace actions

Functions

template<typename Result, typename RemoteResult, typename F, typename ...Ts>
void trigger(typed_continuation<Result, RemoteResult>&&, F&&, Ts&&...)
namespace hpx
namespace actions
struct set_lco_value_continuation

Public Functions

template<typename T>
T operator()(naming::id_type const &lco, T &&t) const
struct set_lco_value_unmanaged_continuation

Public Functions

template<typename T>
T operator()(naming::id_type const &lco, T &&t) const
namespace hpx
namespace actions

Functions

template<typename Result, typename RemoteResult, typename F, typename ...Ts>
void trigger(typed_continuation<Result, RemoteResult> &&cont, F &&f, Ts&&... vs)
template<typename Result, typename F, typename ...Ts>
void trigger(typed_continuation<Result, util::unused_type> &&cont, F &&f, Ts&&... vs)
namespace hpx
namespace traits
template<typename Action, typename Enable>
struct action_continuation

Public Types

template<>
using type = hpx::actions::typed_continuation<typename Action::local_result_type, typename Action::remote_result_type>
namespace hpx
namespace traits
template<typename Action, typename Enable = void>
struct action_decorate_continuation

Public Types

template<>
using continuation_type = typename hpx::traits::action_continuation<Action>::type

Public Static Functions

static constexpr bool call(continuation_type&)
template<typename Result, typename RemoteResult>
struct action_trigger_continuation<actions::typed_continuation<Result, RemoteResult>>

Public Static Functions

template<typename F, typename ...Ts>
static void call(actions::typed_continuation<Result, RemoteResult> &&cont, F &&f, Ts&&... ts)
namespace hpx
namespace traits
template<typename Result, typename RemoteResult>
struct action_trigger_continuation<actions::typed_continuation<Result, RemoteResult>>

Public Static Functions

template<typename F, typename ...Ts>
static void call(actions::typed_continuation<Result, RemoteResult> &&cont, F &&f, Ts&&... ts)