20namespace seqan3::detail
33struct execution_handler_sequential
45 template <
typename algorithm_t,
typename algorithm_input_t,
typename callback_t>
46 requires std::invocable<algorithm_t, algorithm_input_t, callback_t>
47 void execute(algorithm_t && algorithm, algorithm_input_t && input, callback_t && callback)
49 algorithm(std::forward<algorithm_input_t>(input), std::forward<callback_t>(callback));
66 template <std::copy_constructible algorithm_t,
67 std::ranges::input_range algorithm_input_range_t,
68 std::copy_constructible callback_t>
69 requires std::invocable<algorithm_t, std::ranges::range_reference_t<algorithm_input_range_t>, callback_t>
70 void bulk_execute(algorithm_t && algorithm, algorithm_input_range_t && input_range, callback_t && callback)
72 for (
auto && input : input_range)
73 execute(algorithm,
std::forward<
decltype(input)>(input), callback);