File indexing completed on 2025-10-30 08:33:24
0001 
0002 
0003 
0004 
0005 
0006 
0007 
0008 
0009 
0010 
0011 #ifndef BOOST_PROCESS_DETAIL_HANDLER_BASE_HPP
0012 #define BOOST_PROCESS_DETAIL_HANDLER_BASE_HPP
0013 
0014 #include <boost/process/v1/detail/config.hpp>
0015 #include <system_error>
0016 
0017 namespace boost { namespace process { BOOST_PROCESS_V1_INLINE namespace v1 { namespace detail {
0018 
0019 template<template <class> class Template>
0020 struct make_handler_t
0021 {
0022     constexpr make_handler_t() {}
0023     template<typename Handler>
0024     constexpr Template<Handler> operator()(Handler handler) const {return Template<Handler>(handler);}
0025     template<typename Handler>
0026     constexpr Template<Handler> operator= (Handler handler) const {return Template<Handler>(handler);}
0027     template<typename Handler>
0028     constexpr Template<Handler> operator+=(Handler handler) const {return Template<Handler>(handler);}
0029 };
0030 
0031 
0032 struct handler_base
0033 {
0034     using resource_type = void;
0035 
0036     template <class Executor>
0037     void on_setup(Executor&) const {}
0038 
0039     template <class Executor>
0040     void on_error(Executor&, const std::error_code &) const {}
0041 
0042     template <class Executor>
0043     void on_success(Executor&) const {}
0044 
0045 };
0046 
0047 
0048 }}}}
0049 
0050 #endif