mirror of
https://github.com/yhirose/cpp-httplib
synced 2024-11-21 14:29:10 -07:00
Support move semantics for Response::set_content() (#1764)
This commit is contained in:
parent
449801990f
commit
44b3fe6277
1 changed files with 10 additions and 0 deletions
10
httplib.h
10
httplib.h
|
@ -596,6 +596,7 @@ struct Response {
|
|||
void set_redirect(const std::string &url, int status = StatusCode::Found_302);
|
||||
void set_content(const char *s, size_t n, const std::string &content_type);
|
||||
void set_content(const std::string &s, const std::string &content_type);
|
||||
void set_content(std::string &&s, const std::string &content_type);
|
||||
|
||||
void set_content_provider(
|
||||
size_t length, const std::string &content_type, ContentProvider provider,
|
||||
|
@ -5350,6 +5351,15 @@ inline void Response::set_content(const std::string &s,
|
|||
set_content(s.data(), s.size(), content_type);
|
||||
}
|
||||
|
||||
inline void Response::set_content(std::string &&s,
|
||||
const std::string &content_type) {
|
||||
body = std::move(s);
|
||||
|
||||
auto rng = headers.equal_range("Content-Type");
|
||||
headers.erase(rng.first, rng.second);
|
||||
set_header("Content-Type", content_type);
|
||||
}
|
||||
|
||||
inline void Response::set_content_provider(
|
||||
size_t in_length, const std::string &content_type, ContentProvider provider,
|
||||
ContentProviderResourceReleaser resource_releaser) {
|
||||
|
|
Loading…
Reference in a new issue