Skip to content

Commit 34ba7e8

Browse files
committed
make sure unique_ptr has a complete type upon invocation
Since C++23 std::unique_ptr<T> is constexpr See: https://en.cppreference.com/w/cpp/memory/unique_ptr.html
1 parent c9c926f commit 34ba7e8

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

api/posix/tcp_fd.hpp

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,30 @@
2121

2222
#include "sockfd.hpp"
2323

24-
struct TCP_FD_Conn;
2524
struct TCP_FD_Listen;
2625

26+
struct TCP_FD_Conn
27+
{
28+
TCP_FD_Conn(net::tcp::Connection_ptr c);
29+
~TCP_FD_Conn() = default;
30+
31+
void retrieve_buffer();
32+
void set_default_read();
33+
34+
ssize_t send(const void *, size_t, int fl);
35+
ssize_t recv(void*, size_t, int fl);
36+
int close();
37+
int shutdown(int);
38+
39+
std::string to_string() const { return conn->to_string(); }
40+
41+
net::tcp::Connection_ptr conn;
42+
net::tcp::buffer_t buffer;
43+
size_t buf_offset;
44+
bool recv_disc = false;
45+
};
46+
47+
2748
class TCP_FD : public SockFD {
2849
public:
2950
using id_t = int;
@@ -68,25 +89,6 @@ class TCP_FD : public SockFD {
6889
friend struct TCP_FD_Listen;
6990
};
7091

71-
struct TCP_FD_Conn
72-
{
73-
TCP_FD_Conn(net::tcp::Connection_ptr c);
74-
75-
void retrieve_buffer();
76-
void set_default_read();
77-
78-
ssize_t send(const void *, size_t, int fl);
79-
ssize_t recv(void*, size_t, int fl);
80-
int close();
81-
int shutdown(int);
82-
83-
std::string to_string() const { return conn->to_string(); }
84-
85-
net::tcp::Connection_ptr conn;
86-
net::tcp::buffer_t buffer;
87-
size_t buf_offset;
88-
bool recv_disc = false;
89-
};
9092

9193
struct TCP_FD_Listen
9294
{

0 commit comments

Comments
 (0)