Skip to content

Commit 13184f5

Browse files
author
Anonymous
authored
Return Server& from handler setters (#836)
* Update httplib.h * Update httplib.h * Update httplib.h * Update httplib.h
1 parent 8d9a477 commit 13184f5

File tree

1 file changed

+65
-33
lines changed

1 file changed

+65
-33
lines changed

httplib.h

Lines changed: 65 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -624,28 +624,28 @@ class Server {
624624
bool set_mount_point(const char *mount_point, const char *dir,
625625
Headers headers = Headers());
626626
bool remove_mount_point(const char *mount_point);
627-
void set_file_extension_and_mimetype_mapping(const char *ext,
627+
Server &set_file_extension_and_mimetype_mapping(const char *ext,
628628
const char *mime);
629-
void set_file_request_handler(Handler handler);
629+
Server &set_file_request_handler(Handler handler);
630630

631-
void set_error_handler(HandlerWithReturn handler);
632-
void set_error_handler(Handler handler);
633-
void set_pre_routing_handler(HandlerWithReturn handler);
634-
void set_post_routing_handler(Handler handler);
631+
Server &set_error_handler(HandlerWithReturn handler);
632+
Server &set_error_handler(Handler handler);
633+
Server &set_pre_routing_handler(HandlerWithReturn handler);
634+
Server &set_post_routing_handler(Handler handler);
635635

636-
void set_expect_100_continue_handler(Expect100ContinueHandler handler);
637-
void set_logger(Logger logger);
636+
Server &set_expect_100_continue_handler(Expect100ContinueHandler handler);
637+
Server &set_logger(Logger logger);
638638

639-
void set_tcp_nodelay(bool on);
640-
void set_socket_options(SocketOptions socket_options);
639+
Server &set_tcp_nodelay(bool on);
640+
Server &set_socket_options(SocketOptions socket_options);
641641

642-
void set_keep_alive_max_count(size_t count);
643-
void set_keep_alive_timeout(time_t sec);
644-
void set_read_timeout(time_t sec, time_t usec = 0);
645-
void set_write_timeout(time_t sec, time_t usec = 0);
646-
void set_idle_interval(time_t sec, time_t usec = 0);
642+
Server &set_keep_alive_max_count(size_t count);
643+
Server &set_keep_alive_timeout(time_t sec);
644+
Server &set_read_timeout(time_t sec, time_t usec = 0);
645+
Server &set_write_timeout(time_t sec, time_t usec = 0);
646+
Server &set_idle_interval(time_t sec, time_t usec = 0);
647647

648-
void set_payload_max_length(size_t length);
648+
Server &set_payload_max_length(size_t length);
649649

650650
bool bind_to_port(const char *host, int port, int socket_flags = 0);
651651
int bind_to_any_port(const char *host, int socket_flags = 0);
@@ -4158,72 +4158,104 @@ inline bool Server::remove_mount_point(const char *mount_point) {
41584158
return false;
41594159
}
41604160

4161-
inline void Server::set_file_extension_and_mimetype_mapping(const char *ext,
4161+
inline Server &Server::set_file_extension_and_mimetype_mapping(const char *ext,
41624162
const char *mime) {
41634163
file_extension_and_mimetype_map_[ext] = mime;
4164+
4165+
return *this;
41644166
}
41654167

4166-
inline void Server::set_file_request_handler(Handler handler) {
4168+
inline Server &Server::set_file_request_handler(Handler handler) {
41674169
file_request_handler_ = std::move(handler);
4170+
4171+
return *this;
41684172
}
41694173

4170-
inline void Server::set_error_handler(HandlerWithReturn handler) {
4174+
inline Server &Server::set_error_handler(HandlerWithReturn handler) {
41714175
error_handler_ = std::move(handler);
4176+
return *this;
41724177
}
41734178

4174-
inline void Server::set_error_handler(Handler handler) {
4179+
inline Server &Server::set_error_handler(Handler handler) {
41754180
error_handler_ = [handler](const Request &req, Response &res) {
41764181
handler(req, res);
41774182
return true;
41784183
};
4184+
return *this;
41794185
}
41804186

4181-
inline void Server::set_pre_routing_handler(HandlerWithReturn handler) {
4187+
inline Server &Server::set_pre_routing_handler(HandlerWithReturn handler) {
41824188
pre_routing_handler_ = std::move(handler);
4189+
return *this;
41834190
}
41844191

4185-
inline void Server::set_post_routing_handler(Handler handler) {
4192+
inline Server &Server::set_post_routing_handler(Handler handler) {
41864193
post_routing_handler_ = std::move(handler);
4194+
return *this;
41874195
}
41884196

4189-
inline void Server::set_logger(Logger logger) { logger_ = std::move(logger); }
4197+
inline Server &Server::set_logger(Logger logger) {
4198+
logger_ = std::move(logger);
41904199

4191-
inline void
4192-
Server::set_expect_100_continue_handler(Expect100ContinueHandler handler) {
4200+
return *this;
4201+
}
4202+
4203+
inline Server
4204+
&Server::set_expect_100_continue_handler(Expect100ContinueHandler handler) {
41934205
expect_100_continue_handler_ = std::move(handler);
4206+
4207+
return *this;
41944208
}
41954209

4196-
inline void Server::set_tcp_nodelay(bool on) { tcp_nodelay_ = on; }
4210+
inline Server &Server::set_tcp_nodelay(bool on) {
4211+
tcp_nodelay_ = on;
41974212

4198-
inline void Server::set_socket_options(SocketOptions socket_options) {
4213+
return *this;
4214+
}
4215+
4216+
inline Server &Server::set_socket_options(SocketOptions socket_options) {
41994217
socket_options_ = std::move(socket_options);
4218+
4219+
return *this;
42004220
}
42014221

4202-
inline void Server::set_keep_alive_max_count(size_t count) {
4222+
inline Server &Server::set_keep_alive_max_count(size_t count) {
42034223
keep_alive_max_count_ = count;
4224+
4225+
return *this;
42044226
}
42054227

4206-
inline void Server::set_keep_alive_timeout(time_t sec) {
4228+
inline Server &Server::set_keep_alive_timeout(time_t sec) {
42074229
keep_alive_timeout_sec_ = sec;
4230+
4231+
return *this;
42084232
}
42094233

4210-
inline void Server::set_read_timeout(time_t sec, time_t usec) {
4234+
inline Server &Server::set_read_timeout(time_t sec, time_t usec) {
42114235
read_timeout_sec_ = sec;
42124236
read_timeout_usec_ = usec;
4237+
4238+
return *this;
42134239
}
42144240

4215-
inline void Server::set_write_timeout(time_t sec, time_t usec) {
4241+
inline Server &Server::set_write_timeout(time_t sec, time_t usec) {
42164242
write_timeout_sec_ = sec;
42174243
write_timeout_usec_ = usec;
4244+
4245+
return *this;
42184246
}
42194247

4220-
inline void Server::set_idle_interval(time_t sec, time_t usec) {
4248+
inline Server &Server::set_idle_interval(time_t sec, time_t usec) {
42214249
idle_interval_sec_ = sec;
42224250
idle_interval_usec_ = usec;
4251+
4252+
return *this;
42234253
}
42244254

4225-
inline void Server::set_payload_max_length(size_t length) {
4255+
inline Server &Server::set_payload_max_length(size_t length) {
42264256
payload_max_length_ = length;
4257+
4258+
return *this;
42274259
}
42284260

42294261
inline bool Server::bind_to_port(const char *host, int port, int socket_flags) {

0 commit comments

Comments
 (0)