Skip to content

Commit 90ab5bc

Browse files
committed
Fix swap and equals methods of http::request
1 parent 0185e6b commit 90ab5bc

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

http/src/network/protocol/http/request/request.hpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,8 @@ struct request : request_base {
3030
request(request const&);
3131
request& operator=(request);
3232

33-
// Then we lift the swap and equals implementation.
34-
using request_base::swap;
35-
using request_base::equals;
33+
virtual void swap(request& other);
34+
virtual bool equals(request const& other) const;
3635

3736
// From message_base...
3837
// Mutators

http/src/network/protocol/http/request/request.ipp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,15 @@ request& request::operator=(request rhs) {
161161
return *this;
162162
}
163163

164+
void request::swap(request& other ) {
165+
std::swap(pimpl_, other.pimpl_);
166+
request_storage_base::swap(other);
167+
}
168+
169+
bool request::equals(request const& other) const {
170+
return pimpl_->equals(*other.pimpl_) && request_storage_base::equals(other);
171+
}
172+
164173
// From message_base...
165174
// Mutators
166175
void request::set_destination(std::string const& destination) {

0 commit comments

Comments
 (0)