From 7c97aed0c8388c77e8cff305a43d8177db63b4bc Mon Sep 17 00:00:00 2001 From: Michael Mayer Date: Sat, 12 Dec 2015 16:43:24 +0100 Subject: [PATCH] Added default argument to extno() and extver() --- include/GFilename.hpp | 28 ++-------------------------- pyext/GFilename.i | 4 ++-- src/support/GFilename.cpp | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 28 deletions(-) diff --git a/include/GFilename.hpp b/include/GFilename.hpp index f8a96e0..585586b 100644 --- a/include/GFilename.hpp +++ b/include/GFilename.hpp @@ -61,8 +61,8 @@ public: int length(void) const; const std::string& filename(void) const; std::string extname(const std::string& defaultname = "") const; - const int& extno(void) const; - const int& extver(void) const; + int extno(const int& defaultextno = 1) const; + int extver(const int& defaultextver = 1) const; bool has_extname(void) const; bool has_extno(void) const; bool has_extver(void) const; @@ -146,30 +146,6 @@ const std::string& GFilename::filename(void) const /***********************************************************************//** - * @brief Return extension number - * - * @return Extension number (-1 if not set). - ***************************************************************************/ -inline -const int& GFilename::extno(void) const -{ - return (m_extno); -} - - -/***********************************************************************//** - * @brief Return extension version - * - * @return Extension version (0 if not set). - ***************************************************************************/ -inline -const int& GFilename::extver(void) const -{ - return (m_extver); -} - - -/***********************************************************************//** * @brief Signal if filename has an extension name * * @return True if filename has an extension name, false otherwise. diff --git a/pyext/GFilename.i b/pyext/GFilename.i index 154ad51..f23966d 100644 --- a/pyext/GFilename.i +++ b/pyext/GFilename.i @@ -53,8 +53,8 @@ public: int length(void) const; const std::string& filename(void) const; std::string extname(const std::string& defaultname = "") const; - const int& extno(void) const; - const int& extver(void) const; + int extno(const int& defaultextno = 1) const; + int extver(const int& defaultextver = 1) const; bool has_extname(void) const; bool has_extno(void) const; bool has_extver(void) const; diff --git a/src/support/GFilename.cpp b/src/support/GFilename.cpp index 8456f75..fa42d77 100644 --- a/src/support/GFilename.cpp +++ b/src/support/GFilename.cpp @@ -225,6 +225,57 @@ std::string GFilename::extname(const std::string& defaultname) const /***********************************************************************//** + * @brief Return extension number + * + * @param[in] defaultextno Default extension number (default: 1). + * @return Integer containing extension number. + * + * Returns the extension number. If no extension number is given the number + * provided by the @p defaultextno argument will be used. By default, the + * @p defaultextno parameter is set to 1. + ***************************************************************************/ +int GFilename::extno(const int& defaultextno) const +{ + // Set the extension number + int extno = m_extno; + + // If no extension number is set, the use the default extension number + if (!has_extno()) { + extno = defaultextno; + } + + // Return extension number + return (extno); +} + + +/***********************************************************************//** + * @brief Return extension version number + * + * @param[in] defaultextver Default extension version number (default: 1). + * @return Integer containing extension version number. + * + * Returns the extension version number. If no extension version number is given the number + * provided by the @p defaultextver argument will be used. By default, the + * @p defaultextver parameter is set to 1. + ***************************************************************************/ +int GFilename::extver(const int& defaultextver) const +{ + // Set the extension version number + int extver = m_extver; + + // If no extension number is set, the use the default extension version number + if (!has_extver()) { + extver = defaultextver; + } + + // Return extension number + return (extver); +} + + + +/***********************************************************************//** * @brief Print file name information * * @param[in] chatter Chattiness (default: NORMAL). -- libgit2 0.21.4