lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 755f3cf4 1/5: Revert recent changes to one cl


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 755f3cf4 1/5: Revert recent changes to one class's special member functions
Date: Mon, 11 Jul 2022 22:53:09 -0400 (EDT)

branch: master
commit 755f3cf402e39c51ee64fc49e0db64cdb04f45b5
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>

    Revert recent changes to one class's special member functions
    
    The copy ctor is implemented, but private (and is now used only in a
    unit test), while the copy assignment operator is deleted, and private.
    This seems a bit unusual, but there's nothing wrong with it, and in
    particular it doesn't depend on any deprecated behavior, so it's not
    fated to become wrong. There was no really good reason to change it.
    
    Comments indicating that a function is implemented out of line do not
    say anything that is not already clear enough.
    
    See:
      https://lists.nongnu.org/archive/html/lmi/2022-07/msg00032.html
---
 product_data.hpp | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/product_data.hpp b/product_data.hpp
index 237bcecd..5b57d68a 100644
--- a/product_data.hpp
+++ b/product_data.hpp
@@ -97,12 +97,7 @@ class LMI_SO product_data
   public:
     explicit product_data(fs::path const& product_filename);
     explicit product_data(std::string const& product_name);
-
-    product_data(product_data const&); // Implemented out of line.
-    product_data(product_data&&) = delete;
-    product_data& operator=(product_data const&) = delete;
-    product_data& operator=(product_data&&) = delete;
-    ~product_data() override; // Implemented out of line.
+    ~product_data() override;
 
     std::string const& datum(std::string const& name) const;
 
@@ -115,6 +110,9 @@ class LMI_SO product_data
     glossed_string& item(std::string const& name);
 
   private:
+    product_data(product_data const&);
+    product_data& operator=(product_data const&) = delete;
+
     void ascribe_members();
 
     // xml_serializable required implementation.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]