◆ ConnectAwaiter_()
| uvco::TcpClient::ConnectAwaiter_::ConnectAwaiter_ |
( |
| ) |
|
45 :
req_{std::make_unique<uv_connect_t>()},
46 socket_{std::make_unique<uv_tcp_t>()} {
48}
void setRequestData(Request *req, Data *data)
Set data pointer on request.
Definition internal_utils.h:90
std::unique_ptr< uv_connect_t > req_
Definition tcp.cc:38
std::unique_ptr< uv_tcp_t > socket_
Definition tcp.cc:39
◆ ~ConnectAwaiter_()
| uvco::TcpClient::ConnectAwaiter_::~ConnectAwaiter_ |
( |
| ) |
|
63 {
66 uv_cancel((uv_req_t *)
req_.release());
67 }
70 }
71}
void closeHandle(Handle *handle, void(*closer)(CloserArg *, void(*)(uv_handle_t *)))
Definition close.h:37
void resetRequestData(Request *req)
Definition internal_utils.h:95
bool requestDataIsNull(Request *req)
Check if request data is null.
Definition internal_utils.h:107
◆ await_ready()
| bool uvco::TcpClient::ConnectAwaiter_::await_ready |
( |
| ) |
const |
|
nodiscard |
73 {
75}
std::optional< uv_status > status_
Definition tcp.cc:41
◆ await_resume()
| TcpStream uvco::TcpClient::ConnectAwaiter_::await_resume |
( |
| ) |
|
83 {
87 throw UvcoException{
status_.value(),
88 "TcpClient::connect() connection failed"};
89 }
90 return TcpStream{std::move(
socket_)};
91}
◆ await_suspend()
| bool uvco::TcpClient::ConnectAwaiter_::await_suspend |
( |
std::coroutine_handle<> | handle | ) |
|
77 {
80 return true;
81}
std::coroutine_handle handle_
Definition tcp.cc:40
◆ onConnect()
| void uvco::TcpClient::ConnectAwaiter_::onConnect |
( |
uv_status | status | ) |
|
93 {
98 }
99}
static void enqueue(std::coroutine_handle<> handle)
Definition loop.cc:94
◆ handle_
| std::coroutine_handle uvco::TcpClient::ConnectAwaiter_::handle_ |
◆ req_
| std::unique_ptr<uv_connect_t> uvco::TcpClient::ConnectAwaiter_::req_ |
◆ socket_
| std::unique_ptr<uv_tcp_t> uvco::TcpClient::ConnectAwaiter_::socket_ |
◆ status_
| std::optional<uv_status> uvco::TcpClient::ConnectAwaiter_::status_ |
The documentation for this struct was generated from the following file: