aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2021-03-06 23:10:45 +0100
committerEven Rouault <even.rouault@spatialys.com>2021-03-06 23:14:25 +0100
commit6dae91bd0626dd91b3b729a8b58e72128d2928e1 (patch)
tree5ee19609faac5e01c021fdb53f39ae2f06e0de41
parent3af34fc1c404ab05499134fb36288c883ae1c1c9 (diff)
downloadPROJ-6dae91bd0626dd91b3b729a8b58e72128d2928e1.tar.gz
PROJ-6dae91bd0626dd91b3b729a8b58e72128d2928e1.zip
UnitOfMeasure: add a move assignment operator (CID 314811)
-rw-r--r--include/proj/common.hpp1
-rw-r--r--scripts/reference_exported_symbols.txt3
-rw-r--r--src/iso19111/common.cpp9
3 files changed, 12 insertions, 1 deletions
diff --git a/include/proj/common.hpp b/include/proj/common.hpp
index fa957c93..04ad63ad 100644
--- a/include/proj/common.hpp
+++ b/include/proj/common.hpp
@@ -86,6 +86,7 @@ class PROJ_GCC_DLL UnitOfMeasure : public util::BaseObject {
PROJ_DLL UnitOfMeasure(const UnitOfMeasure &other);
PROJ_DLL ~UnitOfMeasure() override;
PROJ_DLL UnitOfMeasure &operator=(const UnitOfMeasure &other);
+ PROJ_DLL UnitOfMeasure &operator=(UnitOfMeasure &&other);
PROJ_INTERNAL static UnitOfMeasureNNPtr create(const UnitOfMeasure &other);
//! @endcond
diff --git a/scripts/reference_exported_symbols.txt b/scripts/reference_exported_symbols.txt
index 42c7e43e..c6ddc03a 100644
--- a/scripts/reference_exported_symbols.txt
+++ b/scripts/reference_exported_symbols.txt
@@ -84,9 +84,10 @@ osgeo::proj::common::UnitOfMeasure::code() const
osgeo::proj::common::UnitOfMeasure::codeSpace() const
osgeo::proj::common::UnitOfMeasure::conversionToSI() const
osgeo::proj::common::UnitOfMeasure::name() const
+osgeo::proj::common::UnitOfMeasure::operator=(osgeo::proj::common::UnitOfMeasure&&)
osgeo::proj::common::UnitOfMeasure::operator=(osgeo::proj::common::UnitOfMeasure const&)
-osgeo::proj::common::UnitOfMeasure::operator==(osgeo::proj::common::UnitOfMeasure const&) const
osgeo::proj::common::UnitOfMeasure::operator!=(osgeo::proj::common::UnitOfMeasure const&) const
+osgeo::proj::common::UnitOfMeasure::operator==(osgeo::proj::common::UnitOfMeasure const&) const
osgeo::proj::common::UnitOfMeasure::type() const
osgeo::proj::common::UnitOfMeasure::~UnitOfMeasure()
osgeo::proj::common::UnitOfMeasure::UnitOfMeasure(osgeo::proj::common::UnitOfMeasure const&)
diff --git a/src/iso19111/common.cpp b/src/iso19111/common.cpp
index 0eb40f12..7a0d122d 100644
--- a/src/iso19111/common.cpp
+++ b/src/iso19111/common.cpp
@@ -119,6 +119,15 @@ UnitOfMeasure &UnitOfMeasure::operator=(const UnitOfMeasure &other) {
// ---------------------------------------------------------------------------
//! @cond Doxygen_Suppress
+UnitOfMeasure &UnitOfMeasure::operator=(UnitOfMeasure &&other) {
+ *d = std::move(*(other.d));
+ return *this;
+}
+//! @endcond
+
+// ---------------------------------------------------------------------------
+
+//! @cond Doxygen_Suppress
UnitOfMeasureNNPtr UnitOfMeasure::create(const UnitOfMeasure &other) {
return util::nn_make_shared<UnitOfMeasure>(other);
}