Template Struct AbortList

Inheritance Relationships

Base Type

  • public detail::Extendable< aborters_t... >

Struct Documentation

template<typename ...aborters_t>
struct Acts::AbortList : public detail::Extendable<aborters_t...>

AbortList object to be used in the propagation.

The abort list is a list of structs or classes that is called at each propagation step and can trigger the abort of the current propagation.

It can (optionally) depend on a result of an Actor from the actor list.

Public Types

result_type = typename decltype(hana::unpack(detail::type_collector_t< detail::action_type_extractor, aborters_t... >, hana::template_< AbortList >))::type

Public Functions

AbortList() = default

Default constructor.

AbortList(const AbortList<aborters_t...> &aborters) = default

Default copy constructor.

Parameters
  • aborters: The source action list

AbortList(AbortList<aborters_t...> &&aborters) = default

Default move constructor.

Parameters
  • aborters: The source action list

AbortList(const std::tuple<aborters_t...> &aborters)

Constructor from tuple.

Parameters
  • extensions: Source extensions tuple

AbortList(std::tuple<aborters_t...> &&aborters)

Constructor from tuple move.

Parameters
  • extensions: Source extensions tuple

template<typename ...appendices_t>
AbortList<aborters_t..., appendices_t...> append(appendices_t... aps) const

Append new entries and return a new condition.

template<typename result_t, typename propagator_state_t, typename stepper_t>
bool operator()(const result_t &result, propagator_state_t &state, const stepper_t &stepper) const

This is the call signature for the abort list, it broadcasts the call to the tuple() memembers of the list.

Template Parameters
  • result_t: is the result type from a certain action

  • propagator_state_t: is the state type of the propagator

  • stepper_t: Type of the stepper

Parameters
  • [in] result: is the result object from a certain action

  • [inout] state: is the state object from the propagator

  • [in] stepper: Stepper used for the propagation

AbortList<aborters_t...> &operator=(const AbortList<aborters_t...> &aborters) = default

Default move assignment operator.

Parameters
  • aborters: The source action list

AbortList<aborters_t...> &operator=(AbortList<aborters_t...> &&aborters) = default

Default move assignment operator.

Parameters
  • aborters: The source action list