From 577e6ee98af8c683ff4747b9a105c4a7ba3f7101 Mon Sep 17 00:00:00 2001 From: Mikhail Pozdnyakov Date: Tue, 15 Jan 2019 15:43:10 +0200 Subject: [PATCH] [core] Simplify mbgl::Immutable --- include/mbgl/util/immutable.hpp | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/include/mbgl/util/immutable.hpp b/include/mbgl/util/immutable.hpp index b4117166d..4d251df8d 100644 --- a/include/mbgl/util/immutable.hpp +++ b/include/mbgl/util/immutable.hpp @@ -69,12 +69,11 @@ public: : ptr(std::const_pointer_cast(std::move(s.ptr))) {} template - Immutable(Immutable&& s) + Immutable(Immutable s) : ptr(std::move(s.ptr)) {} - template - Immutable(const Immutable& s) - : ptr(s.ptr) {} + Immutable(Immutable&&) = default; + Immutable(const Immutable&) = default; template Immutable& operator=(Mutable&& s) { @@ -82,17 +81,8 @@ public: return *this; } - template - Immutable& operator=(Immutable&& s) { - ptr = std::move(s.ptr); - return *this; - } - - template - Immutable& operator=(const Immutable& s) { - ptr = s.ptr; - return *this; - } + Immutable& operator=(Immutable&&) = default; + Immutable& operator=(const Immutable&) = default; const T* get() const { return ptr.get(); } const T* operator->() const { return ptr.get(); }