diff options
author | Andrew Morrow <acm@mongodb.com> | 2015-01-03 10:55:42 -0500 |
---|---|---|
committer | Andrew Morrow <acm@mongodb.com> | 2015-02-13 13:01:12 -0500 |
commit | 05d73815c390e344842ac8870acfea53498279ea (patch) | |
tree | f47dd823f6b7982df32480eb14c5834277fd72ce /src/mongo/util/shared_buffer.h | |
parent | c1b5595b5fdf93e0599bbdd4154f35bfa10fadd1 (diff) | |
download | mongo-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.h | 21 |
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) { |