diff options
Diffstat (limited to 'include/cru/common/platform')
-rw-r--r-- | include/cru/common/platform/unix/PosixSpawnSubProcess.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/include/cru/common/platform/unix/PosixSpawnSubProcess.h b/include/cru/common/platform/unix/PosixSpawnSubProcess.h index 9c303700..d4df284b 100644 --- a/include/cru/common/platform/unix/PosixSpawnSubProcess.h +++ b/include/cru/common/platform/unix/PosixSpawnSubProcess.h @@ -16,21 +16,20 @@ #include <spawn.h> namespace cru::platform::unix { -class PosixSpawnSubProcess : public PlatformSubProcessBase { +class PosixSpawnSubProcessImpl { CRU_DEFINE_CLASS_LOG_TAG(u"PosixSpawnSubProcess") public: - explicit PosixSpawnSubProcess(SubProcessStartInfo start_info); - ~PosixSpawnSubProcess(); + explicit PosixSpawnSubProcessImpl(); + ~PosixSpawnSubProcessImpl(); - io::Stream* GetStdinStream() override; - io::Stream* GetStdoutStream() override; - io::Stream* GetStderrStream() override; + io::Stream* GetStdinStream(); + io::Stream* GetStdoutStream(); + io::Stream* GetStderrStream(); - protected: - void PlatformCreateProcess() override; - SubProcessExitResult PlatformWaitForProcess() override; - void PlatformKillProcess() override; + void PlatformCreateProcess(const SubProcessStartInfo& start_info); + SubProcessExitResult PlatformWaitForProcess(); + void PlatformKillProcess(); private: pid_t pid_; @@ -47,4 +46,6 @@ class PosixSpawnSubProcess : public PlatformSubProcessBase { std::unique_ptr<io::AutoReadStream> stdout_buffer_stream_; std::unique_ptr<io::AutoReadStream> stderr_buffer_stream_; }; + +using PosixSpawnSubProcess = PlatformSubProcess<PosixSpawnSubProcessImpl>; } // namespace cru::platform::unix |