42 template <
typename algorithm_t,
typename algorithm_input_t,
typename callback_t>
43 requires std::invocable<algorithm_t, algorithm_input_t, callback_t>
44 void execute(algorithm_t && algorithm, algorithm_input_t && input, callback_t && callback)
46 algorithm(std::forward<algorithm_input_t>(input), std::forward<callback_t>(callback));
63 template <std::copy_constructible algorithm_t,
64 std::ranges::input_range algorithm_input_range_t,
65 std::copy_constructible callback_t>
66 requires std::invocable<algorithm_t, std::ranges::range_reference_t<algorithm_input_range_t>, callback_t>
67 void bulk_execute(algorithm_t && algorithm, algorithm_input_range_t && input_range, callback_t && callback)
69 for (
auto && input : input_range)
The internal SeqAn3 namespace.
Definition aligned_sequence_concept.hpp:26
Handles the sequential execution of algorithms.
Definition execution_handler_sequential.hpp:31
void wait() noexcept
Waits for the submitted jobs to finish (noop).
Definition execution_handler_sequential.hpp:76
void bulk_execute(algorithm_t &&algorithm, algorithm_input_range_t &&input_range, callback_t &&callback)
Sequentially executes the algorithm for every element of the given input range.
Definition execution_handler_sequential.hpp:67
void execute(algorithm_t &&algorithm, algorithm_input_t &&input, callback_t &&callback)
Executes the algorithm with the given input and callback.
Definition execution_handler_sequential.hpp:44