9#include <userver/utils/traceful_exception.hpp> 
   11USERVER_NAMESPACE_BEGIN
 
   13namespace engine::subprocess {
 
   18  ChildProcessStatus(
int status, std::chrono::milliseconds execution_time);
 
   20  enum class ExitReason { kExited, kSignaled };
 
   22  ExitReason GetExitReason() 
const { 
return exit_reason_; }
 
   24  bool IsExited() 
const { 
return exit_reason_ == ExitReason::kExited; }
 
   29  bool IsSignaled() 
const { 
return exit_reason_ == ExitReason::kSignaled; }
 
   38  const std::chrono::milliseconds execution_time_;
 
   39  const ExitReason exit_reason_;
 
   41  const int term_signal_;