#include #include #include #include #include "common.hpp" #include "config.hpp" namespace kel { namespace sch { using namespace saw::schema; using GitArgs = Args< Struct< >, Tuple<> >; } saw::error_or kmain(int argc, char** argv){ saw::data args_d; { saw::data args_data{argc, argv}; saw::codec args_codec; auto eov = args_codec.decode(args_data, args_d); if(eov.is_error()){ return eov; } } // saw::data cmd_data; { // Parse from file } bool running = true; auto eo_aio = saw::setup_async_io(); if(eo_aio.is_error()){ return std::move(eo_aio.get_error()); } auto& aio = eo_aio.get_value(); auto term_sink = aio.event_port.on_signal(saw::Signal::Terminate).then([&running](){ running = false; }).sink(); while(running){ aio.event_port.wait(); } return saw::make_void(); } } int main(int argc, char** argv){ auto eov = kel::kmain(argc, argv); if(eov.is_error()){ auto& err = eov.get_error(); auto err_msg = err.get_message(); std::cerr<<"[Error]: "<