From 2e73aa9dc0c457f2b1b17d5a558d95dcaed2847b Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Mon, 26 Apr 2021 20:59:36 -0700 Subject: [PATCH] default con/destructors in headers Helps to optimize trivially destructable stuff. Signed-off-by: Rosen Penev --- include/exiv2/basicio.hpp | 2 +- include/exiv2/datasets.hpp | 2 +- include/exiv2/exif.hpp | 2 +- include/exiv2/image.hpp | 2 +- include/exiv2/iptc.hpp | 2 +- include/exiv2/metadatum.hpp | 10 +++++----- include/exiv2/value.hpp | 16 ++++++++-------- src/actions.cpp | 20 -------------------- src/actions.hpp | 20 ++++++++++---------- src/basicio.cpp | 2 -- src/cr2header_int.cpp | 2 -- src/cr2header_int.hpp | 2 +- src/crwimage_int.cpp | 2 -- src/crwimage_int.hpp | 2 +- src/datasets.cpp | 2 -- src/exif.cpp | 2 -- src/getopt.cpp | 2 -- src/getopt.hpp | 2 +- src/image.cpp | 2 -- src/iptc.cpp | 2 -- src/makernote_int.cpp | 24 ------------------------ src/makernote_int.hpp | 24 ++++++++++++------------ src/metadatum.cpp | 10 ---------- src/orfimage_int.cpp | 2 -- src/orfimage_int.hpp | 2 +- src/rw2image_int.cpp | 2 -- src/rw2image_int.hpp | 2 +- src/tiffcomposite_int.cpp | 14 -------------- src/tiffcomposite_int.hpp | 14 +++++++------- src/tiffimage_int.cpp | 4 ---- src/tiffimage_int.hpp | 4 ++-- src/tiffvisitor_int.cpp | 12 ------------ src/tiffvisitor_int.hpp | 12 ++++++------ src/value.cpp | 18 ------------------ 34 files changed, 60 insertions(+), 182 deletions(-) diff --git a/include/exiv2/basicio.hpp b/include/exiv2/basicio.hpp index 267ebc8c..b0169b23 100644 --- a/include/exiv2/basicio.hpp +++ b/include/exiv2/basicio.hpp @@ -63,7 +63,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Destructor - virtual ~BasicIo(); + virtual ~BasicIo() = default; //@} //! @name Manipulators diff --git a/include/exiv2/datasets.hpp b/include/exiv2/datasets.hpp index f94ac0b5..5388f6e0 100644 --- a/include/exiv2/datasets.hpp +++ b/include/exiv2/datasets.hpp @@ -297,7 +297,7 @@ namespace Exiv2 { //! Copy constructor IptcKey(const IptcKey& rhs); //! Destructor - virtual ~IptcKey(); + virtual ~IptcKey() = default; //@} //! @name Manipulators diff --git a/include/exiv2/exif.hpp b/include/exiv2/exif.hpp index d439a5e4..824dbb3c 100644 --- a/include/exiv2/exif.hpp +++ b/include/exiv2/exif.hpp @@ -76,7 +76,7 @@ namespace Exiv2 { //! Copy constructor Exifdatum(const Exifdatum& rhs); //! Destructor - virtual ~Exifdatum(); + virtual ~Exifdatum() = default; //@} //! @name Manipulators diff --git a/include/exiv2/image.hpp b/include/exiv2/image.hpp index 0e8db075..7059aca4 100644 --- a/include/exiv2/image.hpp +++ b/include/exiv2/image.hpp @@ -91,7 +91,7 @@ namespace Exiv2 { uint16_t supportedMetadata, BasicIo::UniquePtr io); //! Virtual Destructor - virtual ~Image(); + virtual ~Image() = default; //@} //! @name Manipulators diff --git a/include/exiv2/iptc.hpp b/include/exiv2/iptc.hpp index bdc24019..6b802968 100644 --- a/include/exiv2/iptc.hpp +++ b/include/exiv2/iptc.hpp @@ -67,7 +67,7 @@ namespace Exiv2 { //! Copy constructor Iptcdatum(const Iptcdatum& rhs); //! Destructor - virtual ~Iptcdatum(); + virtual ~Iptcdatum() = default; //@} //! @name Manipulators diff --git a/include/exiv2/metadatum.hpp b/include/exiv2/metadatum.hpp index 743a4b98..fc97a76b 100644 --- a/include/exiv2/metadatum.hpp +++ b/include/exiv2/metadatum.hpp @@ -93,7 +93,7 @@ namespace Exiv2 { @brief Assignment operator. Protected so that it can only be used by subclasses but not directly. */ - Key& operator=(const Key& rhs); + Key& operator=(const Key& rhs) = default; //@} private: @@ -117,11 +117,11 @@ namespace Exiv2 { //! @name Creators //@{ //! Default Constructor - Metadatum(); + Metadatum() = default; //! Copy constructor - Metadatum(const Metadatum& rhs); + Metadatum(const Metadatum& rhs) = default; //! Destructor - virtual ~Metadatum(); + virtual ~Metadatum() = default; //@} //! @name Manipulators @@ -275,7 +275,7 @@ namespace Exiv2 { @brief Assignment operator. Protected so that it can only be used by subclasses but not directly. */ - Metadatum& operator=(const Metadatum& rhs); + Metadatum& operator=(const Metadatum& rhs) = default; //@} }; // class Metadatum diff --git a/include/exiv2/value.hpp b/include/exiv2/value.hpp index 64381333..aa5e2648 100644 --- a/include/exiv2/value.hpp +++ b/include/exiv2/value.hpp @@ -261,7 +261,7 @@ namespace Exiv2 { long len, ByteOrder byteOrder =invalidByteOrder, TypeId typeId =undefined); - virtual ~DataValue(); + virtual ~DataValue() = default; //! @name Manipulators //@{ @@ -344,9 +344,9 @@ namespace Exiv2 { //! Constructor for subclasses StringValueBase(TypeId typeId, const std::string& buf); //! Copy constructor - StringValueBase(const StringValueBase& rhs); + StringValueBase(const StringValueBase& rhs) = default; //! Virtual destructor. - virtual ~StringValueBase(); + virtual ~StringValueBase() = default; //@} //! @name Manipulators @@ -426,7 +426,7 @@ namespace Exiv2 { //! Constructor explicit StringValue(const std::string& buf); //! Virtual destructor. - virtual ~StringValue(); + virtual ~StringValue() = default; //@} //! @name Accessors @@ -458,7 +458,7 @@ namespace Exiv2 { //! Constructor explicit AsciiValue(const std::string& buf); //! Virtual destructor. - virtual ~AsciiValue(); + virtual ~AsciiValue() = default; //@} //! @name Manipulators @@ -546,7 +546,7 @@ namespace Exiv2 { //! Constructor, uses read(const std::string& comment) explicit CommentValue(const std::string& comment); //! Virtual destructor. - virtual ~CommentValue(); + virtual ~CommentValue() = default; //@} //! @name Manipulators @@ -987,7 +987,7 @@ namespace Exiv2 { //! Constructor DateValue(int year, int month, int day); //! Virtual destructor. - virtual ~DateValue(); + virtual ~DateValue() = default; //@} //! Simple Date helper structure @@ -1090,7 +1090,7 @@ namespace Exiv2 { int tzHour =0, int tzMinute =0); //! Virtual destructor. - virtual ~TimeValue(); + virtual ~TimeValue() = default; //@} //! Simple Time helper structure diff --git a/src/actions.cpp b/src/actions.cpp index 7d084e2f..fe8931f2 100644 --- a/src/actions.cpp +++ b/src/actions.cpp @@ -162,8 +162,6 @@ namespace { // ***************************************************************************** // class member definitions namespace Action { - Task::~Task() = default; - Task::UniquePtr Task::clone() const { return UniquePtr(clone_()); @@ -223,8 +221,6 @@ namespace Action { return nullptr; } // TaskFactory::create - Print::~Print() = default; - int setModeAndPrintStructure(Exiv2::PrintStructureOption option, const std::string& path,bool binary) { int result = 0 ; @@ -699,8 +695,6 @@ namespace Action { return new Print(*this); } - Rename::~Rename() = default; - int Rename::run(const std::string& path) { try { @@ -785,8 +779,6 @@ namespace Action { return new Rename(*this); } - Erase::~Erase() = default; - int Erase::run(const std::string& path) try { path_ = path; @@ -909,8 +901,6 @@ namespace Action { return new Erase(*this); } - Extract::~Extract() = default; - int Extract::run(const std::string& path) { try { @@ -1098,8 +1088,6 @@ namespace Action { return new Extract(*this); } - Insert::~Insert() = default; - int Insert::run(const std::string& path) try { // -i{tgt}- reading from stdin? @@ -1278,8 +1266,6 @@ namespace Action { return new Insert(*this); } - Modify::~Modify() = default; - int Modify::run(const std::string& path) { try { @@ -1510,8 +1496,6 @@ namespace Action { return new Modify(*this); } - Adjust::~Adjust() = default; - int Adjust::run(const std::string& path) try { adjustment_ = Params::instance().adjustment_; @@ -1648,8 +1632,6 @@ namespace Action { return 0; } // Adjust::adjustDateTime - FixIso::~FixIso() = default; - int FixIso::run(const std::string& path) { try { @@ -1709,8 +1691,6 @@ namespace Action { return new FixIso(*this); } - FixCom::~FixCom() = default; - int FixCom::run(const std::string& path) { try { diff --git a/src/actions.hpp b/src/actions.hpp index 79c57b93..dc449722 100644 --- a/src/actions.hpp +++ b/src/actions.hpp @@ -67,7 +67,7 @@ namespace Action { //! Shortcut for an auto pointer. using UniquePtr = std::unique_ptr; //! Virtual destructor. - virtual ~Task(); + virtual ~Task() = default; //! Virtual copy construction. UniquePtr clone() const; /*! @@ -159,7 +159,7 @@ namespace Action { //! %Print the Exif (or other metadata) of a file to stdout class Print : public Task { public: - virtual ~Print(); + virtual ~Print() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -215,7 +215,7 @@ namespace Action { */ class Rename : public Task { public: - virtual ~Rename(); + virtual ~Rename() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -227,7 +227,7 @@ namespace Action { //! %Adjust the Exif (or other metadata) timestamps class Adjust : public Task { public: - virtual ~Adjust(); + virtual ~Adjust() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -250,7 +250,7 @@ namespace Action { */ class Erase : public Task { public: - virtual ~Erase(); + virtual ~Erase() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -292,7 +292,7 @@ namespace Action { */ class Extract : public Task { public: - virtual ~Extract(); + virtual ~Extract() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -331,7 +331,7 @@ namespace Action { */ class Insert : public Task { public: - virtual ~Insert(); + virtual ~Insert() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -372,7 +372,7 @@ namespace Action { */ class Modify : public Task { public: - virtual ~Modify(); + virtual ~Modify() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -405,7 +405,7 @@ namespace Action { */ class FixIso : public Task { public: - virtual ~FixIso(); + virtual ~FixIso() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; @@ -423,7 +423,7 @@ namespace Action { */ class FixCom : public Task { public: - virtual ~FixCom(); + virtual ~FixCom() = default; virtual int run(const std::string& path); using UniquePtr = std::unique_ptr; UniquePtr clone() const; diff --git a/src/basicio.cpp b/src/basicio.cpp index 60586dab..79ef6a09 100644 --- a/src/basicio.cpp +++ b/src/basicio.cpp @@ -77,8 +77,6 @@ using nlink_t = short; // ***************************************************************************** // class member definitions namespace Exiv2 { - BasicIo::~BasicIo() = default; - //! Internal Pimpl structure of class FileIo. class FileIo::Impl { public: diff --git a/src/cr2header_int.cpp b/src/cr2header_int.cpp index 27d805e3..6d081e42 100644 --- a/src/cr2header_int.cpp +++ b/src/cr2header_int.cpp @@ -11,8 +11,6 @@ namespace Exiv2 { { } - Cr2Header::~Cr2Header() = default; - bool Cr2Header::read(const byte* pData, uint32_t size) { if (!pData || size < 16) { diff --git a/src/cr2header_int.hpp b/src/cr2header_int.hpp index 443c03d4..3b47c7c2 100644 --- a/src/cr2header_int.hpp +++ b/src/cr2header_int.hpp @@ -47,7 +47,7 @@ namespace Exiv2 { //! Default constructor explicit Cr2Header(ByteOrder byteOrder =littleEndian); //! Destructor. - ~Cr2Header(); + ~Cr2Header() = default; //@} //! @name Manipulators diff --git a/src/crwimage_int.cpp b/src/crwimage_int.cpp index a1aaf0ea..c45dd928 100644 --- a/src/crwimage_int.cpp +++ b/src/crwimage_int.cpp @@ -186,8 +186,6 @@ namespace Exiv2 { if (isAllocated_) delete[] pData_; } - CiffEntry::~CiffEntry() = default; - CiffDirectory::~CiffDirectory() { Components::iterator b = components_.begin(); diff --git a/src/crwimage_int.hpp b/src/crwimage_int.hpp index b1bdacec..795c7a8e 100644 --- a/src/crwimage_int.hpp +++ b/src/crwimage_int.hpp @@ -306,7 +306,7 @@ namespace Exiv2 { CiffEntry(uint16_t tag, uint16_t dir) : CiffComponent(tag, dir) {} //! Virtual destructor. - virtual ~CiffEntry(); + virtual ~CiffEntry() = default; //@} // Default assignment operator is fine diff --git a/src/datasets.cpp b/src/datasets.cpp index 01e3c5e5..c4ccf085 100644 --- a/src/datasets.cpp +++ b/src/datasets.cpp @@ -602,8 +602,6 @@ namespace Exiv2 { { } - IptcKey::~IptcKey() = default; - IptcKey& IptcKey::operator=(const IptcKey& rhs) { if (this == &rhs) return *this; diff --git a/src/exif.cpp b/src/exif.cpp index 41879b6b..04799bb9 100644 --- a/src/exif.cpp +++ b/src/exif.cpp @@ -205,8 +205,6 @@ namespace Exiv2 { if (pValue) value_ = pValue->clone(); } - Exifdatum::~Exifdatum() = default; - Exifdatum::Exifdatum(const Exifdatum& rhs) : Metadatum(rhs) { diff --git a/src/getopt.cpp b/src/getopt.cpp index 3ff9fd6d..6446c356 100644 --- a/src/getopt.cpp +++ b/src/getopt.cpp @@ -113,8 +113,6 @@ namespace Util { { } - Getopt::~Getopt() = default; - int Getopt::getopt(int argc, char* const argv[], const std::string& optstring) { progname_ = Util::basename(argv[0]); diff --git a/src/getopt.hpp b/src/getopt.hpp index 6abef8cc..c6e5be9a 100644 --- a/src/getopt.hpp +++ b/src/getopt.hpp @@ -53,7 +53,7 @@ namespace Util { Getopt(); //! Destructor. - virtual ~Getopt(); + virtual ~Getopt() = default; /*! @brief Parse command line arguments. diff --git a/src/image.cpp b/src/image.cpp index 7184b15a..ab47c9ae 100644 --- a/src/image.cpp +++ b/src/image.cpp @@ -157,8 +157,6 @@ namespace Exiv2 { { } - Image::~Image() = default; - void Image::printStructure(std::ostream&, PrintStructureOption,int /*depth*/) { throw Error(kerUnsupportedImageType, io_->path()); diff --git a/src/iptc.cpp b/src/iptc.cpp index 777fd6f2..42f2ecc1 100644 --- a/src/iptc.cpp +++ b/src/iptc.cpp @@ -94,8 +94,6 @@ namespace Exiv2 { if (rhs.value_.get() != 0) value_ = rhs.value_->clone(); // deep copy } - Iptcdatum::~Iptcdatum() = default; - long Iptcdatum::copy(byte* buf, ByteOrder byteOrder) const { return value_.get() == 0 ? 0 : value_->copy(buf, byteOrder); diff --git a/src/makernote_int.cpp b/src/makernote_int.cpp index a5968b98..ca63c77c 100644 --- a/src/makernote_int.cpp +++ b/src/makernote_int.cpp @@ -205,8 +205,6 @@ namespace Exiv2 { return tc; } // TiffMnCreator::create - MnHeader::~MnHeader() = default; - void MnHeader::setByteOrder(ByteOrder /*byteOrder*/) { } @@ -240,8 +238,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - OlympusMnHeader::~OlympusMnHeader() = default; - uint32_t OlympusMnHeader::size() const { return header_.size_; @@ -284,8 +280,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - Olympus2MnHeader::~Olympus2MnHeader() = default; - uint32_t Olympus2MnHeader::size() const { return header_.size_; @@ -334,8 +328,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), byteOrder_); } - FujiMnHeader::~FujiMnHeader() = default; - uint32_t FujiMnHeader::size() const { return header_.size_; @@ -391,8 +383,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - Nikon2MnHeader::~Nikon2MnHeader() = default; - uint32_t Nikon2MnHeader::size() const { return sizeOfSignature(); @@ -440,8 +430,6 @@ namespace Exiv2 { start_ = sizeOfSignature(); } - Nikon3MnHeader::~Nikon3MnHeader() = default; - uint32_t Nikon3MnHeader::size() const { return sizeOfSignature(); @@ -510,8 +498,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - PanasonicMnHeader::~PanasonicMnHeader() = default; - uint32_t PanasonicMnHeader::size() const { return sizeOfSignature(); @@ -555,8 +541,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - PentaxDngMnHeader::~PentaxDngMnHeader() = default; - uint32_t PentaxDngMnHeader::size() const { return header_.size_; @@ -604,8 +588,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - PentaxMnHeader::~PentaxMnHeader() = default; - uint32_t PentaxMnHeader::size() const { return header_.size_; @@ -680,8 +662,6 @@ namespace Exiv2 { read(signature1_, sizeOfSignature(), invalidByteOrder); } - SigmaMnHeader::~SigmaMnHeader() = default; - uint32_t SigmaMnHeader::size() const { return sizeOfSignature(); @@ -726,8 +706,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder); } - SonyMnHeader::~SonyMnHeader() = default; - uint32_t SonyMnHeader::size() const { return sizeOfSignature(); @@ -772,8 +750,6 @@ namespace Exiv2 { read(signature_, sizeOfSignature(), invalidByteOrder ); } - Casio2MnHeader::~Casio2MnHeader() = default; - uint32_t Casio2MnHeader::size() const { return sizeOfSignature(); diff --git a/src/makernote_int.hpp b/src/makernote_int.hpp index cde8712c..90923f9c 100644 --- a/src/makernote_int.hpp +++ b/src/makernote_int.hpp @@ -128,7 +128,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Virtual destructor. - virtual ~MnHeader(); + virtual ~MnHeader() = default; //@} //! @name Manipulators //@{ @@ -177,7 +177,7 @@ namespace Exiv2 { //! Default constructor OlympusMnHeader(); //! Virtual destructor. - virtual ~OlympusMnHeader(); + virtual ~OlympusMnHeader() = default; //@} //! @name Manipulators //@{ @@ -208,7 +208,7 @@ namespace Exiv2 { //! Default constructor Olympus2MnHeader(); //! Virtual destructor. - virtual ~Olympus2MnHeader(); + virtual ~Olympus2MnHeader() = default; //@} //! @name Manipulators //@{ @@ -240,7 +240,7 @@ namespace Exiv2 { //! Default constructor FujiMnHeader(); //! Virtual destructor. - virtual ~FujiMnHeader(); + virtual ~FujiMnHeader() = default; //@} //! @name Manipulators //@{ @@ -276,7 +276,7 @@ namespace Exiv2 { //! Default constructor Nikon2MnHeader(); //! Virtual destructor. - virtual ~Nikon2MnHeader(); + virtual ~Nikon2MnHeader() = default; //@} //! @name Manipulators //@{ @@ -308,7 +308,7 @@ namespace Exiv2 { //! Default constructor Nikon3MnHeader(); //! Virtual destructor. - virtual ~Nikon3MnHeader(); + virtual ~Nikon3MnHeader() = default; //@} //! @name Manipulators //@{ @@ -344,7 +344,7 @@ namespace Exiv2 { //! Default constructor PanasonicMnHeader(); //! Virtual destructor. - virtual ~PanasonicMnHeader(); + virtual ~PanasonicMnHeader() = default; //@} //! @name Manipulators //@{ @@ -376,7 +376,7 @@ namespace Exiv2 { //! Default constructor PentaxDngMnHeader(); //! Virtual destructor. - virtual ~PentaxDngMnHeader(); + virtual ~PentaxDngMnHeader() = default; //@} //! @name Manipulators //@{ @@ -408,7 +408,7 @@ namespace Exiv2 { //! Default constructor PentaxMnHeader(); //! Virtual destructor. - virtual ~PentaxMnHeader(); + virtual ~PentaxMnHeader() = default; //@} //! @name Manipulators //@{ @@ -462,7 +462,7 @@ namespace Exiv2 { //! Default constructor SigmaMnHeader(); //! Virtual destructor. - virtual ~SigmaMnHeader(); + virtual ~SigmaMnHeader() = default; //@} //! @name Manipulators //@{ @@ -495,7 +495,7 @@ namespace Exiv2 { //! Default constructor SonyMnHeader(); //! Virtual destructor. - virtual ~SonyMnHeader(); + virtual ~SonyMnHeader() = default; //@} //! @name Manipulators //@{ @@ -527,7 +527,7 @@ namespace Exiv2 { //! Default constructor Casio2MnHeader(); //! Virtual destructor. - virtual ~Casio2MnHeader(); + virtual ~Casio2MnHeader() = default; //@} //! @name Manipulators //@{ diff --git a/src/metadatum.cpp b/src/metadatum.cpp index 3517d044..9b6f57e6 100644 --- a/src/metadatum.cpp +++ b/src/metadatum.cpp @@ -35,16 +35,6 @@ namespace Exiv2 { return UniquePtr(clone_()); } - Key& Key::operator=(const Key& /*rhs*/) = default; - - Metadatum::Metadatum() = default; - - Metadatum::Metadatum(const Metadatum& /*rhs*/) = default; - - Metadatum::~Metadatum() = default; - - Metadatum& Metadatum::operator=(const Metadatum& /*rhs*/) = default; - std::string Metadatum::print(const ExifData* pMetadata) const { std::ostringstream os; diff --git a/src/orfimage_int.cpp b/src/orfimage_int.cpp index 00c1dad4..8e9bce3b 100644 --- a/src/orfimage_int.cpp +++ b/src/orfimage_int.cpp @@ -29,8 +29,6 @@ namespace Exiv2 { { } - OrfHeader::~OrfHeader() = default; - bool OrfHeader::read(const byte* pData, uint32_t size) { if (size < 8) return false; diff --git a/src/orfimage_int.hpp b/src/orfimage_int.hpp index b95c7e0e..9d8b0c97 100644 --- a/src/orfimage_int.hpp +++ b/src/orfimage_int.hpp @@ -43,7 +43,7 @@ namespace Exiv2 { //! Default constructor explicit OrfHeader(ByteOrder byteOrder =littleEndian); //! Destructor. - ~OrfHeader(); + ~OrfHeader() = default; //@} //! @name Manipulators diff --git a/src/rw2image_int.cpp b/src/rw2image_int.cpp index 943ded85..ff3a0942 100644 --- a/src/rw2image_int.cpp +++ b/src/rw2image_int.cpp @@ -28,8 +28,6 @@ namespace Exiv2 { { } - Rw2Header::~Rw2Header() = default; - DataBuf Rw2Header::write() const { // Todo: Implement me! diff --git a/src/rw2image_int.hpp b/src/rw2image_int.hpp index 08e4e7c7..7ed47910 100644 --- a/src/rw2image_int.hpp +++ b/src/rw2image_int.hpp @@ -46,7 +46,7 @@ namespace Exiv2 { //! Default constructor Rw2Header(); //! Destructor. - ~Rw2Header(); + ~Rw2Header() = default; //@} //! @name Accessors diff --git a/src/tiffcomposite_int.cpp b/src/tiffcomposite_int.cpp index 0244e0b5..bb4ff656 100644 --- a/src/tiffcomposite_int.cpp +++ b/src/tiffcomposite_int.cpp @@ -172,8 +172,6 @@ namespace Exiv2 { elDef_.count_ = 0; } - TiffComponent::~TiffComponent() = default; - TiffDirectory::~TiffDirectory() { for (auto&& component : components_) { @@ -197,16 +195,6 @@ namespace Exiv2 { delete pValue_; } - TiffEntry::~TiffEntry() = default; - - TiffDataEntryBase::~TiffDataEntryBase() = default; - - TiffDataEntry::~TiffDataEntry() = default; - - TiffImageEntry::~TiffImageEntry() = default; - - TiffSizeEntry::~TiffSizeEntry() = default; - TiffMnEntry::~TiffMnEntry() { delete mn_; @@ -224,8 +212,6 @@ namespace Exiv2 { } } - TiffBinaryElement::~TiffBinaryElement() = default; - TiffEntryBase::TiffEntryBase(const TiffEntryBase& rhs) : TiffComponent(rhs), tiffType_(rhs.tiffType_), diff --git a/src/tiffcomposite_int.hpp b/src/tiffcomposite_int.hpp index 155b1ed1..c1068fe4 100644 --- a/src/tiffcomposite_int.hpp +++ b/src/tiffcomposite_int.hpp @@ -181,7 +181,7 @@ namespace Exiv2 { //! Constructor TiffComponent(uint16_t tag, IfdId group); //! Virtual destructor. - virtual ~TiffComponent(); + virtual ~TiffComponent() = default; //@} //! @name Manipulators @@ -568,7 +568,7 @@ namespace Exiv2 { //! Constructor TiffEntry(uint16_t tag, IfdId group) : TiffEntryBase(tag, group) {} //! Virtual destructor. - virtual ~TiffEntry(); + virtual ~TiffEntry() = default; //@} protected: @@ -602,7 +602,7 @@ namespace Exiv2 { : TiffEntryBase(tag, group), szTag_(szTag), szGroup_(szGroup) {} //! Virtual destructor. - virtual ~TiffDataEntryBase(); + virtual ~TiffDataEntryBase() = default; //@} //! @name Manipulators @@ -658,7 +658,7 @@ namespace Exiv2 { : TiffDataEntryBase(tag, group, szTag, szGroup), pDataArea_(0), sizeDataArea_(0) {} //! Virtual destructor. - virtual ~TiffDataEntry(); + virtual ~TiffDataEntry() = default; //@} //! @name Manipulators @@ -740,7 +740,7 @@ namespace Exiv2 { TiffImageEntry(uint16_t tag, IfdId group, uint16_t szTag, IfdId szGroup) : TiffDataEntryBase(tag, group, szTag, szGroup) {} //! Virtual destructor. - virtual ~TiffImageEntry(); + virtual ~TiffImageEntry() = default; //@} //! @name Manipulators @@ -822,7 +822,7 @@ namespace Exiv2 { TiffSizeEntry(uint16_t tag, IfdId group, uint16_t dtTag, IfdId dtGroup) : TiffEntryBase(tag, group), dtTag_(dtTag), dtGroup_(dtGroup) {} //! Virtual destructor. - virtual ~TiffSizeEntry(); + virtual ~TiffSizeEntry() = default; //@} //! @name Accessors @@ -1498,7 +1498,7 @@ namespace Exiv2 { //! Constructor TiffBinaryElement(uint16_t tag, IfdId group); //! Virtual destructor. - virtual ~TiffBinaryElement(); + virtual ~TiffBinaryElement() = default; //@} //! @name Manipulators diff --git a/src/tiffimage_int.cpp b/src/tiffimage_int.cpp index 50d0f445..dd18a227 100644 --- a/src/tiffimage_int.cpp +++ b/src/tiffimage_int.cpp @@ -1893,8 +1893,6 @@ namespace Exiv2 { { } - TiffHeaderBase::~TiffHeaderBase() = default; - bool TiffHeaderBase::read(const byte* pData, uint32_t size) { if (!pData || size < 8) return false; @@ -2079,8 +2077,6 @@ namespace Exiv2 { { } - TiffHeader::~TiffHeader() = default; - bool TiffHeader::isImageTag( uint16_t tag, IfdId group, const PrimaryGroups* pPrimaryGroups) const diff --git a/src/tiffimage_int.hpp b/src/tiffimage_int.hpp index bb455de7..0f0c307b 100644 --- a/src/tiffimage_int.hpp +++ b/src/tiffimage_int.hpp @@ -59,7 +59,7 @@ namespace Exiv2 { ByteOrder byteOrder, uint32_t offset); //! Virtual destructor. - virtual ~TiffHeaderBase() =0; + virtual ~TiffHeaderBase() = default; //@} //! @name Manipulators @@ -148,7 +148,7 @@ namespace Exiv2 { uint32_t offset =0x00000008, bool hasImageTags =true); //! Destructor - ~TiffHeader(); + ~TiffHeader() = default; //@} //@{ //! @name Accessors diff --git a/src/tiffvisitor_int.cpp b/src/tiffvisitor_int.cpp index 6ad9cb5c..6c77213f 100644 --- a/src/tiffvisitor_int.cpp +++ b/src/tiffvisitor_int.cpp @@ -83,8 +83,6 @@ namespace Exiv2 { go_.fill(true); } - TiffVisitor::~TiffVisitor() = default; - void TiffVisitor::setGo(GoEvent event, bool go) { assert(event >= 0 && static_cast(event) < events_); @@ -121,8 +119,6 @@ namespace Exiv2 { setGo(geTraverse, true); } - TiffFinder::~TiffFinder() = default; - void TiffFinder::findObject(TiffComponent* object) { if (object->tag() == tag_ && object->group() == group_) { @@ -195,8 +191,6 @@ namespace Exiv2 { assert(pPrimaryGroups_ != 0); } - TiffCopier::~TiffCopier() = default; - void TiffCopier::copyObject(TiffComponent* object) { assert(object != 0); @@ -296,8 +290,6 @@ namespace Exiv2 { } } - TiffDecoder::~TiffDecoder() = default; - void TiffDecoder::visitEntry(TiffEntry* object) { decodeTiffEntry(object); @@ -610,8 +602,6 @@ namespace Exiv2 { } } - TiffEncoder::~TiffEncoder() = default; - void TiffEncoder::encodeIptc() { // Update IPTCNAA Exif tag, if it exists. Delete the tag if there @@ -1210,8 +1200,6 @@ namespace Exiv2 { } // TiffReader::TiffReader - TiffReader::~TiffReader() = default; - void TiffReader::setOrigState() { pState_ = &origState_; diff --git a/src/tiffvisitor_int.hpp b/src/tiffvisitor_int.hpp index 08b4cb90..4264e4ce 100644 --- a/src/tiffvisitor_int.hpp +++ b/src/tiffvisitor_int.hpp @@ -84,7 +84,7 @@ namespace Exiv2 { //! Default constructor. Initialises all stop/go flags to true. TiffVisitor(); //! Virtual destructor - virtual ~TiffVisitor(); + virtual ~TiffVisitor() = default; //@} //! @name Manipulators @@ -162,7 +162,7 @@ namespace Exiv2 { TiffFinder(uint16_t tag, IfdId group) : tag_(tag), group_(group), tiffComponent_(0) {} //! Virtual destructor - virtual ~TiffFinder(); + virtual ~TiffFinder() = default; //@} //! @name Manipulators @@ -231,7 +231,7 @@ namespace Exiv2 { const TiffHeaderBase* pHeader, const PrimaryGroups* pPrimaryGroups); //! Virtual destructor - virtual ~TiffCopier(); + virtual ~TiffCopier() = default; //@} //! @name Manipulators @@ -291,7 +291,7 @@ namespace Exiv2 { FindDecoderFct findDecoderFct ); //! Virtual destructor - virtual ~TiffDecoder(); + virtual ~TiffDecoder() = default; //@} //! @name Manipulators @@ -394,7 +394,7 @@ namespace Exiv2 { FindEncoderFct findEncoderFct ); //! Virtual destructor - virtual ~TiffEncoder(); + virtual ~TiffEncoder() = default; //@} //! @name Manipulators @@ -639,7 +639,7 @@ namespace Exiv2 { TiffRwState state); //! Virtual destructor - virtual ~TiffReader(); + virtual ~TiffReader() = default; //@} //! @name Manipulators diff --git a/src/value.cpp b/src/value.cpp index d25fb6cd..d5a4a59c 100644 --- a/src/value.cpp +++ b/src/value.cpp @@ -188,8 +188,6 @@ namespace Exiv2 { read(buf, len, byteOrder); } - DataValue::~DataValue() = default; - long DataValue::count() const { return size(); @@ -279,12 +277,6 @@ namespace Exiv2 { read(buf); } - StringValueBase::StringValueBase(const StringValueBase& rhs) - - = default; - - StringValueBase::~StringValueBase() = default; - StringValueBase& StringValueBase::operator=(const StringValueBase& rhs) { if (this == &rhs) return *this; @@ -360,8 +352,6 @@ namespace Exiv2 { { } - StringValue::~StringValue() = default; - StringValue* StringValue::clone_() const { return new StringValue(*this); @@ -377,8 +367,6 @@ namespace Exiv2 { { } - AsciiValue::~AsciiValue() = default; - int AsciiValue::read(const std::string& buf) { value_ = buf; @@ -459,8 +447,6 @@ namespace Exiv2 { read(comment); } - CommentValue::~CommentValue() = default; - int CommentValue::read(const std::string& comment) { std::string c = comment; @@ -944,8 +930,6 @@ namespace Exiv2 { date_.day = day; } - DateValue::~DateValue() = default; - int DateValue::read(const byte* buf, long len, ByteOrder /*byteOrder*/) { // Hard coded to read Iptc style dates @@ -1078,8 +1062,6 @@ namespace Exiv2 { time_.tzMinute = tzMinute; } - TimeValue::~TimeValue() = default; - int TimeValue::read(const byte* buf, long len, ByteOrder /*byteOrder*/) { // Make the buffer a 0 terminated C-string for scanTime[36]