[colobot] 123/377: Moving CBotString class in its own header and source files.

Didier Raboud odyx at moszumanska.debian.org
Wed Mar 30 13:34:06 UTC 2016


This is an automated email from the git hooks/post-receive script.

odyx pushed a commit to branch debian/master
in repository colobot.

commit 942d7195e4ad90fc107778b7f5536de992385c8b
Author: Grunaka <dev at romainbreton.fr>
Date:   Mon Nov 16 22:34:30 2015 +0100

    Moving CBotString class in its own header and source files.
---
 src/CBot/CBot.h                    |   1 -
 src/CBot/CBotCall.h                |   2 +
 src/CBot/CBotDll.h                 | 188 --------------------------------
 src/CBot/CBotString.h              | 214 +++++++++++++++++++++++++++++++++++++
 src/CBot/CBotStringArray.h         |   2 +-
 src/CBot/CBotUtils.cpp             |  18 ++++
 src/CBot/CBotUtils.h               |  19 ++--
 src/CBot/CBotVar/CBotVar.h         |   2 +
 test/unit/CBot/CBotString_test.cpp |   2 +
 9 files changed, 246 insertions(+), 202 deletions(-)

diff --git a/src/CBot/CBot.h b/src/CBot/CBot.h
index 71c2279..0b619fe 100644
--- a/src/CBot/CBot.h
+++ b/src/CBot/CBot.h
@@ -67,7 +67,6 @@ extern bool ReadLong(FILE* pf, long& w);
 extern bool WriteFloat(FILE* pf, float w);
 extern bool WriteLong(FILE* pf, long w);
 extern bool ReadFloat(FILE* pf, float& w);
-extern bool WriteString(FILE* pf, CBotString s);
 extern bool ReadString(FILE* pf, CBotString& s);
 extern bool WriteType(FILE* pf, CBotTypResult type);
 extern bool ReadType(FILE* pf, CBotTypResult& type);
diff --git a/src/CBot/CBotCall.h b/src/CBot/CBotCall.h
index 79cab9a..103d1fc 100644
--- a/src/CBot/CBotCall.h
+++ b/src/CBot/CBotCall.h
@@ -22,6 +22,8 @@
 // Modules inlcude
 #include "CBotDll.h"
 
+#include "CBotString.h"
+
 // Local include
 
 // Global include
diff --git a/src/CBot/CBotDll.h b/src/CBot/CBotDll.h
index 16b400e..40e4931 100644
--- a/src/CBot/CBotDll.h
+++ b/src/CBot/CBotDll.h
@@ -231,194 +231,6 @@ private:
 // for example exceptions returned by external routines
 // and " throw " with any number.
 
-
-////////////////////////////////////////////////////////////////////////
-/**
- * \brief CBotString Class used to work on strings
- */
-class CBotString
-{
-public:
-
-    /**
-     * \brief CBotString Default constructor.
-     */
-    CBotString();
-
-    /**
-     * \brief CBotString
-     * \param p
-     */
-    CBotString(const char* p);
-
-    /**
-     * \brief CBotString
-     * \param p
-     */
-    CBotString(const CBotString& p);
-
-    /**
-     * \brief CBotString Destructor.
-     */
-    ~CBotString();
-
-    /**
-     * \brief Empty Clear the internal string.
-     */
-    void Empty();
-
-    /**
-     * \brief IsEmpty Check if the string is empty.
-     * \return True if the sting is empty false otherwise.
-     */
-    bool IsEmpty() const;
-
-    /**
-     * \brief GetLength Get the string length.
-     * \return The size of the string.
-     */
-    int GetLength();
-
-    /**
-     * \brief Find Find the position of a character in a string starting from
-     *             the beginning of the string.
-     * \param c    The character to find.
-     * \return     The position of the character or -1 if the character was not
-     *             found.
-     * \see        ReverseFind(const char c)
-     */
-    int Find(const char c);
-
-    /**
-     * \brief Find Find the position of a string in a string starting from the
-     *             beginning of the string.
-     * \param lpsz The string to find.
-     * \return     The position of the string or -1 if the string was not
-     *             found.
-     * \see        ReverseFind(const char* lpsz)
-     */
-    int Find(const char* lpsz);
-
-    /**
-     * \brief Find Find the position of a character in a string starting from
-     *             the end of the string.
-     * \param c    The character to find.
-     * \return     The position of the character or -1 if the character was not
-     *             found.
-     * \see        Find(const char c)
-     */
-    int ReverseFind(const char c);
-
-    /**
-     * \brief Find Find the position of a string in a string starting from the
-     *             end of the string.
-     * \param lpsz The string to find.
-     * \return     The string of the character or -1 if the string was not
-     *             found.
-     * \see        Find(const char* lpsz)
-     */
-    int ReverseFind(const char* lpsz);
-
-    /**
-     * \brief LoadString Load the string associate with the id.
-     * \param id         The id to load.
-     * \return           True if the id exist false otherwise.
-     */
-    bool LoadString(unsigned int id);
-
-    /**
-     * \brief Mid    Return a part of a string from a starting index and until
-     *               the end of the string with a limited size.
-     * \param nFirst The start index of the character in the string.
-     * \param lg     The size limit. Default value is 2000.
-     * \return       The exctracted string.
-     */
-    CBotString Mid(int start, int lg=-1);
-
-    /**
-     * \brief Left   Return a part of a string starting from the left.
-     * \param nCount The number of character to retreive.
-     * \return       The exctracted string.
-     */
-    CBotString Left(int nCount) const;
-
-    /**
-     * \brief Right  Return a part of a string starting from the right.
-     * \param nCount The number of character to retreive.
-     * \return       The exctracted string.
-     */
-    CBotString Right(int nCount) const;
-
-    /**
-     * \brief Compare Compare a given string to an other.
-     * \param lpsz    The string to compare.
-     * \return        0 if the two string matches. Less than 0 if the current
-     *                string is less than lpsz. Greater than 0 if the current
-     *                string is greater than lpsz.
-     */
-    int Compare(const char* lpsz) const;
-
-    /**
-     * \brief MakeUpper Uppercase the string.
-     */
-    void MakeUpper();
-
-    /**
-     * \brief MakeLower Lowercase the string.
-     */
-    void MakeLower();
-
-    /**
-     * @brief CStr Convert the CBotString to a C string.
-     * @return     A C string string.
-     */
-    const char* CStr() const;
-
-    /**
-     * \brief Overloaded oprators to work on CBotString classes
-     */
-    const CBotString& operator=(const CBotString& stringSrc);
-    const CBotString& operator=(const char ch);
-    const CBotString& operator=(const char* pString);
-    CBotString operator+(const CBotString& str);
-
-    const CBotString& operator+=(const char ch);
-    const CBotString& operator+=(const CBotString& str);
-    bool              operator==(const CBotString& str);
-    bool              operator==(const char* p);
-    bool              operator!=(const CBotString& str);
-    bool              operator!=(const char* p);
-    bool              operator>(const CBotString& str);
-    bool              operator>(const char* p);
-    bool              operator>=(const CBotString& str);
-    bool              operator>=(const char* p);
-    bool              operator<(const CBotString& str);
-    bool              operator<(const char* p);
-    bool              operator<=(const CBotString& str);
-    bool              operator<=(const char* p);
-
-                      operator const char*() const;           // as a C string
-
-
-private:
-
-    //! \brief Pointer to string
-    char* m_ptr;
-
-    //! \brief Length of the string
-    int m_lg;
-
-    //! \brief Keeps the string corresponding to keyword ID
-    static const std::map<EID, const char *> s_keywordString;
-
-    /**
-     * \brief MapIdToString Maps given ID to its string equivalent.
-     * \param id            Provided identifier.
-     * \return              String if found, else NullString.
-     */
-    static const char * MapIdToString(EID id);
-};
-
 ///////////////////////////////////////////////////////////////////////////////
 // routines for file management  (* FILE)
     FILE*        fOpen(const char* name, const char* mode);
diff --git a/src/CBot/CBotString.h b/src/CBot/CBotString.h
new file mode 100644
index 0000000..3297c2b
--- /dev/null
+++ b/src/CBot/CBotString.h
@@ -0,0 +1,214 @@
+/*
+ * This file is part of the Colobot: Gold Edition source code
+ * Copyright (C) 2001-2015, Daniel Roux, EPSITEC SA & TerranovaTeam
+ * http://epsitec.ch; http://colobot.info; http://github.com/colobot
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see http://gnu.org/licenses
+ */
+
+#pragma once
+
+// Modules inlcude
+#include "CBotUtils.h"
+
+// Local include
+
+// Global include
+#include <map>
+
+/**
+ * \brief CBotString Class used to work on strings
+ */
+class CBotString
+{
+public:
+
+    /**
+     * \brief CBotString Default constructor.
+     */
+    CBotString();
+
+    /**
+     * \brief CBotString
+     * \param p
+     */
+    CBotString(const char* p);
+
+    /**
+     * \brief CBotString
+     * \param p
+     */
+    CBotString(const CBotString& p);
+
+    /**
+     * \brief CBotString Destructor.
+     */
+    ~CBotString();
+
+    /**
+     * \brief Empty Clear the internal string.
+     */
+    void Empty();
+
+    /**
+     * \brief IsEmpty Check if the string is empty.
+     * \return True if the sting is empty false otherwise.
+     */
+    bool IsEmpty() const;
+
+    /**
+     * \brief GetLength Get the string length.
+     * \return The size of the string.
+     */
+    int GetLength();
+
+    /**
+     * \brief Find Find the position of a character in a string starting from
+     *             the beginning of the string.
+     * \param c    The character to find.
+     * \return     The position of the character or -1 if the character was not
+     *             found.
+     * \see        ReverseFind(const char c)
+     */
+    int Find(const char c);
+
+    /**
+     * \brief Find Find the position of a string in a string starting from the
+     *             beginning of the string.
+     * \param lpsz The string to find.
+     * \return     The position of the string or -1 if the string was not
+     *             found.
+     * \see        ReverseFind(const char* lpsz)
+     */
+    int Find(const char* lpsz);
+
+    /**
+     * \brief Find Find the position of a character in a string starting from
+     *             the end of the string.
+     * \param c    The character to find.
+     * \return     The position of the character or -1 if the character was not
+     *             found.
+     * \see        Find(const char c)
+     */
+    int ReverseFind(const char c);
+
+    /**
+     * \brief Find Find the position of a string in a string starting from the
+     *             end of the string.
+     * \param lpsz The string to find.
+     * \return     The string of the character or -1 if the string was not
+     *             found.
+     * \see        Find(const char* lpsz)
+     */
+    int ReverseFind(const char* lpsz);
+
+    /**
+     * \brief LoadString Load the string associate with the id.
+     * \param id         The id to load.
+     * \return           True if the id exist false otherwise.
+     */
+    bool LoadString(unsigned int id);
+
+    /**
+     * \brief Mid    Return a part of a string from a starting index and until
+     *               the end of the string with a limited size.
+     * \param nFirst The start index of the character in the string.
+     * \param lg     The size limit. Default value is 2000.
+     * \return       The exctracted string.
+     */
+    CBotString Mid(int start, int lg=-1);
+
+    /**
+     * \brief Left   Return a part of a string starting from the left.
+     * \param nCount The number of character to retreive.
+     * \return       The exctracted string.
+     */
+    CBotString Left(int nCount) const;
+
+    /**
+     * \brief Right  Return a part of a string starting from the right.
+     * \param nCount The number of character to retreive.
+     * \return       The exctracted string.
+     */
+    CBotString Right(int nCount) const;
+
+    /**
+     * \brief Compare Compare a given string to an other.
+     * \param lpsz    The string to compare.
+     * \return        0 if the two string matches. Less than 0 if the current
+     *                string is less than lpsz. Greater than 0 if the current
+     *                string is greater than lpsz.
+     */
+    int Compare(const char* lpsz) const;
+
+    /**
+     * \brief MakeUpper Uppercase the string.
+     */
+    void MakeUpper();
+
+    /**
+     * \brief MakeLower Lowercase the string.
+     */
+    void MakeLower();
+
+    /**
+     * @brief CStr Convert the CBotString to a C string.
+     * @return     A C string string.
+     */
+    const char* CStr() const;
+
+    /**
+     * \brief Overloaded oprators to work on CBotString classes
+     */
+    const CBotString& operator=(const CBotString& stringSrc);
+    const CBotString& operator=(const char ch);
+    const CBotString& operator=(const char* pString);
+    CBotString operator+(const CBotString& str);
+
+    const CBotString& operator+=(const char ch);
+    const CBotString& operator+=(const CBotString& str);
+    bool              operator==(const CBotString& str);
+    bool              operator==(const char* p);
+    bool              operator!=(const CBotString& str);
+    bool              operator!=(const char* p);
+    bool              operator>(const CBotString& str);
+    bool              operator>(const char* p);
+    bool              operator>=(const CBotString& str);
+    bool              operator>=(const char* p);
+    bool              operator<(const CBotString& str);
+    bool              operator<(const char* p);
+    bool              operator<=(const CBotString& str);
+    bool              operator<=(const char* p);
+
+                      operator const char*() const;           // as a C string
+
+
+private:
+
+    //! \brief Pointer to string
+    char* m_ptr;
+
+    //! \brief Length of the string
+    int m_lg;
+
+    //! \brief Keeps the string corresponding to keyword ID
+    static const std::map<EID, const char *> s_keywordString;
+
+    /**
+     * \brief MapIdToString Maps given ID to its string equivalent.
+     * \param id            Provided identifier.
+     * \return              String if found, else NullString.
+     */
+    static const char * MapIdToString(EID id);
+};
diff --git a/src/CBot/CBotStringArray.h b/src/CBot/CBotStringArray.h
index 761f874..bc13233 100644
--- a/src/CBot/CBotStringArray.h
+++ b/src/CBot/CBotStringArray.h
@@ -20,7 +20,7 @@
 #pragma once
 
 // Modules inlcude
-#include "CBotDll.h"
+#include "CBotString.h"
 
 // Local include
 
diff --git a/src/CBot/CBotUtils.cpp b/src/CBot/CBotUtils.cpp
index 824b3fd..1a226db 100644
--- a/src/CBot/CBotUtils.cpp
+++ b/src/CBot/CBotUtils.cpp
@@ -142,6 +142,24 @@ bool WriteFloat(FILE* pf, float w)
 }
 
 ////////////////////////////////////////////////////////////////////////////////
+void ConstructElement(CBotString* pNewData)
+{
+    memset(pNewData, 0, sizeof(CBotString));
+}
+
+////////////////////////////////////////////////////////////////////////////////
+void DestructElement(CBotString* pOldData)
+{
+    pOldData->~CBotString();
+}
+
+////////////////////////////////////////////////////////////////////////////////
+void CopyElement(CBotString* pSrc, CBotString* pDest)
+{
+    *pSrc = *pDest;
+}
+
+////////////////////////////////////////////////////////////////////////////////
 void ConstructElements(CBotString* pNewData, int nCount)
 {
     while (nCount--)
diff --git a/src/CBot/CBotUtils.h b/src/CBot/CBotUtils.h
index f25c8c6..e14b474 100644
--- a/src/CBot/CBotUtils.h
+++ b/src/CBot/CBotUtils.h
@@ -22,10 +22,14 @@
 // Modules inlcude
 #include "CBotDll.h"
 
+#include "CBotString.h"
+
 // Local include
 
 // Global include
 
+class CBotString;
+
 /*!
  * \brief MakeListVars Transforms the array of pointers to variables in a
  * chained list of variables
@@ -80,29 +84,20 @@ bool WriteFloat(FILE* pf, float w);
  * \brief ConstructElement
  * \param pNewData
  */
-static inline void ConstructElement(CBotString* pNewData)
-{
-    memset(pNewData, 0, sizeof(CBotString));
-}
+void ConstructElement(CBotString* pNewData);
 
 /*!
  * \brief DestructElement
  * \param pOldData
  */
-static inline void DestructElement(CBotString* pOldData)
-{
-    pOldData->~CBotString();
-}
+void DestructElement(CBotString* pOldData);
 
 /*!
  * \brief CopyElement
  * \param pSrc
  * \param pDest
  */
-static inline void CopyElement(CBotString* pSrc, CBotString* pDest)
-{
-    *pSrc = *pDest;
-}
+void CopyElement(CBotString* pSrc, CBotString* pDest);
 
 /*!
  * \brief ConstructElements
diff --git a/src/CBot/CBotVar/CBotVar.h b/src/CBot/CBotVar/CBotVar.h
index 8f465fc..68132ad 100644
--- a/src/CBot/CBotVar/CBotVar.h
+++ b/src/CBot/CBotVar/CBotVar.h
@@ -24,6 +24,8 @@
 
 #include "../CBotDefines.h"
 
+#include "../CBotString.h"
+
 // Local include
 
 // Global include
diff --git a/test/unit/CBot/CBotString_test.cpp b/test/unit/CBot/CBotString_test.cpp
index 97576a9..b0d1ede 100644
--- a/test/unit/CBot/CBotString_test.cpp
+++ b/test/unit/CBot/CBotString_test.cpp
@@ -20,6 +20,8 @@
 // Modules inlcude
 #include "CBot/CBotDll.h"
 
+#include "CBot/CBotString.h"
+
 // Local include
 
 // Global include

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/colobot.git



More information about the Pkg-games-commits mailing list