5#include <boost/asio/experimental/coro.hpp>
6#include <boost/asio/use_awaitable.hpp>
7#include <boost/thread/future.hpp>
10#include <fmt/ranges.h>
11#include <gsl/gsl-lite.hpp>
18 template <
typename Input,
typename Output>
27 using RunResult = std::expected<OutputType, std::string_view>;
38 [[nodiscard]]
auto get_name() const -> std::string_view {
return name_; };
47 template <DataConvertOptions Conversion,
typename Input,
typename Output>
53 :
BaseTask<Input, Output>{ name, prev_convert, n_lines }
58 template <DataWriterOption writer,
typename Input,
typename Output>
64 :
BaseTask<Input, Output>{ name, prev_convert, n_lines }
BaseTask(std::string_view name, DataConvertOptions prev_convert, std::size_t n_lines=1)
auto get_n_lines() const -> std::size_t
auto get_name_str() const -> std::string
process::DataConvertOptions previous_conversion_
std::expected< OutputType, std::string_view > RunResult
auto get_required_conversion() const -> DataConvertOptions
auto get_name() const -> std::string_view
static constexpr auto converter_type
ConverterTask(std::string_view name, DataConvertOptions prev_convert, std::size_t n_lines=1)
WriterTask(std::string_view name, DataConvertOptions prev_convert, std::size_t n_lines=1)
static constexpr auto writer_type