27 struct private_init {};
30 explicit Pipe(
const private_init&) {}
31 ~Pipe() noexcept override = default;
64 void Reuse(std::function<
void()> callback,
bool ipc =
false);
99 bool Accept(
const std::shared_ptr<Pipe>& client) {
138 const std::shared_ptr<PipeConnectReq>& req);
152 void Connect(std::string_view
name, std::function<
void()> callback);
189 std::function<void()> callback;
192 std::unique_ptr<ReuseData> m_reuseData;
then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file
Definition ThirdPartyNotices.txt:204
@ name
Definition base.h:690
NetworkStream & GetStream() const
Definition NetworkStream.hpp:27
bool Invoke(F &&f, Args &&... args) const
Definition Handle.hpp:265
Event loop.
Definition Loop.hpp:35
virtual NetworkStream * DoAccept()=0
std::shared_ptr< NetworkStream > Accept()
Accept incoming connection.
Definition NetworkStream.hpp:90
uv_pipe_t * GetRaw() const noexcept
Definition NetworkStream.hpp:141
NetworkStreamImpl()
Definition NetworkStream.hpp:146
Pipe connection request.
Definition Pipe.hpp:198
Pipe & GetStream() const
Definition Pipe.hpp:200
Pipe handle.
Definition Pipe.hpp:26
void SetPendingInstances(int count)
Set the number of pending pipe instance handles when the pipe server is waiting for connections.
Definition Pipe.hpp:173
std::shared_ptr< Pipe > Accept()
Accept incoming connection.
bool Accept(const std::shared_ptr< Pipe > &client)
Accept incoming connection.
Definition Pipe.hpp:99
static std::shared_ptr< Pipe > Create(Loop &loop, bool ipc=false)
Create a pipe handle.
Pipe(const private_init &)
Definition Pipe.hpp:30
void Bind(std::string_view name)
Bind the pipe to a file path (Unix) or a name (Windows).
void Reuse(std::function< void()> callback, bool ipc=false)
Reuse this handle.
void Connect(std::string_view name, const std::shared_ptr< PipeConnectReq > &req)
Connect to the Unix domain socket or the named pipe.
void Connect(std::string_view name, std::function< void()> callback)
Connect to the Unix domain socket or the named pipe.
std::string GetPeer()
Get the name of the Unix domain socket or the named pipe to which the handle is connected.
~Pipe() noexcept override=default
void Open(uv_file file)
Open an existing file descriptor or HANDLE as a pipe.
Definition Pipe.hpp:111
std::string GetSock()
Get the name of the Unix domain socket or the named pipe.
void Chmod(int flags)
Alters pipe permissions, allowing it to be accessed from processes run by different users.
Definition Pipe.hpp:183
Definition StringMap.hpp:773
Definition Prepare.hpp:14
flags
Definition http_parser.hpp:206
UV_EXTERN void uv_pipe_pending_instances(uv_pipe_t *handle, int count)
UV_EXTERN int uv_pipe_open(uv_pipe_t *, uv_file file)
UV_EXTERN int uv_pipe_chmod(uv_pipe_t *handle, int flags)