8 #ifndef WPIUTIL_WPI_UV_GETNAMEINFO_H_
9 #define WPIUTIL_WPI_UV_GETNAMEINFO_H_
16 #include "wpi/Signal.h"
17 #include "wpi/Twine.h"
18 #include "wpi/uv/Request.h"
33 Loop& GetLoop()
const {
return *
static_cast<Loop*
>(
GetRaw()->loop->data); }
52 void GetNameInfo(
Loop& loop,
const std::shared_ptr<GetNameInfoReq>& req,
53 const sockaddr& addr,
int flags = 0);
65 inline void GetNameInfo(
const std::shared_ptr<Loop>& loop,
66 const std::shared_ptr<GetNameInfoReq>& req,
67 const sockaddr& addr,
int flags = 0) {
68 GetNameInfo(*loop, req, addr, flags);
80 void GetNameInfo(Loop& loop,
81 std::function<
void(
const char*,
const char*)> callback,
82 const sockaddr& addr,
int flags = 0);
94 inline void GetNameInfo(
const std::shared_ptr<Loop>& loop,
95 std::function<
void(
const char*,
const char*)> callback,
96 const sockaddr& addr,
int flags = 0) {
97 GetNameInfo(*loop, callback, addr, flags);
111 void GetNameInfo4(Loop& loop,
const std::shared_ptr<GetNameInfoReq>& req,
112 const Twine& ip,
unsigned int port,
int flags = 0);
125 inline void GetNameInfo4(
const std::shared_ptr<Loop>& loop,
126 const std::shared_ptr<GetNameInfoReq>& req,
127 const Twine& ip,
unsigned int port,
int flags = 0) {
128 return GetNameInfo4(*loop, req, ip, port, flags);
141 void GetNameInfo4(Loop& loop,
142 std::function<
void(
const char*,
const char*)> callback,
143 const Twine& ip,
unsigned int port,
int flags = 0);
156 inline void GetNameInfo4(
const std::shared_ptr<Loop>& loop,
157 std::function<
void(
const char*,
const char*)> callback,
158 const Twine& ip,
unsigned int port,
int flags = 0) {
159 return GetNameInfo4(*loop, callback, ip, port, flags);
173 void GetNameInfo6(Loop& loop,
const std::shared_ptr<GetNameInfoReq>& req,
174 const Twine& ip,
unsigned int port,
int flags = 0);
187 inline void GetNameInfo6(
const std::shared_ptr<Loop>& loop,
188 const std::shared_ptr<GetNameInfoReq>& req,
189 const Twine& ip,
unsigned int port,
int flags = 0) {
190 GetNameInfo6(*loop, req, ip, port, flags);
204 void GetNameInfo6(Loop& loop,
205 std::function<
void(
const char*,
const char*)> callback,
206 const Twine& ip,
unsigned int port,
int flags = 0);
219 inline void GetNameInfo6(
const std::shared_ptr<Loop>& loop,
220 std::function<
void(
const char*,
const char*)> callback,
221 const Twine& ip,
unsigned int port,
int flags = 0) {
222 return GetNameInfo6(*loop, callback, ip, port, flags);
228 #endif // WPIUTIL_WPI_UV_GETNAMEINFO_H_
WPILib C++ utilities (wpiutil) namespace.
Definition: SmallString.h:21
uv_getnameinfo_t * GetRaw() noexcept
Get the underlying request data structure.
Definition: Request.h:149
GetNameInfo request.
Definition: GetNameInfo.h:29
Event loop.
Definition: Loop.h:37
sig::Signal< const char *, const char * > resolved
Resolved lookup signal.
Definition: GetNameInfo.h:39
SignalBase is an implementation of the observer pattern, through the use of an emitting object and sl...
Definition: Signal.h:495
Request.
Definition: Request.h:134