diff options
Diffstat (limited to 'src/unique_pipe.hh')
| -rw-r--r-- | src/unique_pipe.hh | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/src/unique_pipe.hh b/src/unique_pipe.hh deleted file mode 100644 index c133018..0000000 --- a/src/unique_pipe.hh +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef UNIQUE_PIPE_HH -#define UNIQUE_PIPE_HH - -#include "unique_fd.hh" - -#include <cstddef> - -class unique_pipe { - public: - unique_pipe(); - unique_pipe(unique_pipe&& fd); - unique_pipe(unique_pipe const&) = delete; - unique_pipe& operator=(unique_pipe const&) = delete; - - ~unique_pipe() = default; - - unique_pipe& operator=(unique_pipe&& fd); - - [[nodiscard]] - int reader() const { - return fd_[0].get(); - } - [[nodiscard]] - int writer() const { - return fd_[1].get(); - } - - [[nodiscard]] - explicit operator bool() const { - return fd_[0] || fd_[1]; - } - - void reset(); - - unique_fd release_reader(); - unique_fd release_writer(); - - private: - unique_fd fd_[2]; -}; - -#endif // UNIQUE_PIPE_HH |
