summaryrefslogtreecommitdiff
path: root/src/mongo/util/shared_buffer.h
diff options
context:
space:
mode:
authorAndrew Morrow <acm@mongodb.com>2015-01-03 10:55:42 -0500
committerAndrew Morrow <acm@mongodb.com>2015-02-13 13:01:12 -0500
commit05d73815c390e344842ac8870acfea53498279ea (patch)
treef47dd823f6b7982df32480eb14c5834277fd72ce /src/mongo/util/shared_buffer.h
parentc1b5595b5fdf93e0599bbdd4154f35bfa10fadd1 (diff)
downloadmongo-05d73815c390e344842ac8870acfea53498279ea.tar.gz
SERVER-16559 Require C++11 and remove conditional compilation
Diffstat (limited to 'src/mongo/util/shared_buffer.h')
-rw-r--r--src/mongo/util/shared_buffer.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/mongo/util/shared_buffer.h b/src/mongo/util/shared_buffer.h
index 442f5681482..af21b19d615 100644
--- a/src/mongo/util/shared_buffer.h
+++ b/src/mongo/util/shared_buffer.h
@@ -36,19 +36,24 @@ namespace mongo {
class SharedBuffer {
public:
- SharedBuffer() {}
+ SharedBuffer() = default;
void swap(SharedBuffer& other) {
_holder.swap(other._holder);
}
- /**
- * C++03 compatible way of writing std::move(someSharedBuffer)
- */
- SharedBuffer moveFrom() {
- SharedBuffer out;
- this->swap(out);
- return out;
+ SharedBuffer(const SharedBuffer&) = default;
+ SharedBuffer& operator=(const SharedBuffer&) = default;
+
+ SharedBuffer(SharedBuffer&& other)
+ : _holder() {
+ swap(other);
+ }
+
+ SharedBuffer& operator=(SharedBuffer&& other) {
+ swap(other);
+ other._holder.reset();
+ return *this;
}
static SharedBuffer allocate(size_t bytes) {