#ifndef SMO_MARIONETTE_THREAD_H #define SMO_MARIONETTE_THREAD_H #include #include #include namespace smo { namespace mrntt { struct MrnttThreadTag { static boost::asio::io_context &io_context() noexcept; }; template using MrnttPostingPromise = sscl::co::TaggedPostingPromise; using MrnttNonViralPostingInvoker = sscl::co::NonViralPostingInvoker; template using MrnttViralPostingInvoker = sscl::co::ViralPostingInvoker; using MrnttViralNonPostingInvoker = sscl::co::ViralNonPostingInvoker; template using MrnttViralNonPostingInvokerT = sscl::co::ViralNonPostingInvoker; } // namespace mrntt } // namespace smo #endif // SMO_MARIONETTE_THREAD_H