summaryrefslogtreecommitdiffstats
path: root/src/define.h
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-03-29 18:19:37 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-03-29 18:19:37 (GMT)
commit29f29c2eb1a75ff02624fdb2badd47dd55427841 (patch)
tree1498070bbf93de34323682036524c69c43cb34b7 /src/define.h
parente688cb8dd84f2e2b078271c62053a494ec3ae226 (diff)
downloadDoxygen-29f29c2eb1a75ff02624fdb2badd47dd55427841.zip
Doxygen-29f29c2eb1a75ff02624fdb2badd47dd55427841.tar.gz
Doxygen-29f29c2eb1a75ff02624fdb2badd47dd55427841.tar.bz2
Migrated some code in pre.l to use STL containers (part 2)
Diffstat (limited to 'src/define.h')
-rw-r--r--src/define.h63
1 files changed, 11 insertions, 52 deletions
diff --git a/src/define.h b/src/define.h
index cc1e390..3627140 100644
--- a/src/define.h
+++ b/src/define.h
@@ -1,12 +1,10 @@
/******************************************************************************
*
- *
- *
* Copyright (C) 1997-2015 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
- * documentation under the terms of the GNU General Public License is hereby
- * granted. No representations are made about the suitability of this software
+ * documentation under the terms of the GNU General Public License is hereby
+ * granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
@@ -18,8 +16,11 @@
#ifndef DEFINE_H
#define DEFINE_H
-#include <qdict.h>
-#include <qlist.h>
+#include <map>
+#include <string>
+#include <memory>
+
+#include <qcstring.h>
class FileDef;
@@ -48,52 +49,10 @@ class Define
bool nonRecursive;
};
-/** A list of Define objects. */
-class DefineList : public QList<Define>
-{
- public:
- DefineList() : QList<Define>() {}
- ~DefineList() {}
- private:
- int compareValues(const Define *d1,const Define *d2) const
- {
- return qstricmp(d1->name,d2->name);
- }
-};
-
-/** A list of Define objects associated with a specific name. */
-class DefineName : public QList<Define>
-{
- public:
- DefineName(const char *n) : QList<Define>() { name=n; }
- ~DefineName() {}
- const char *nameString() const { return name; }
-
- private:
- int compareValues(const Define *d1,const Define *d2) const
- {
- return qstricmp(d1->name,d2->name);
- }
- QCString name;
-};
-
-/** A list of DefineName objects. */
-class DefineNameList : public QList<DefineName>
-{
- public:
- DefineNameList() : QList<DefineName>() {}
- ~DefineNameList() {}
- private:
- int compareValues(const DefineName *n1,const DefineName *n2) const
- {
- return qstricmp(n1->nameString(),n2->nameString());
- }
-};
-
-/** An unsorted dictionary of Define objects. */
-typedef QDict<Define> DefineDict;
+/** A dictionary of references to Define objects. */
+typedef std::map< std::string,Define* > DefineMapRef;
-/** A sorted dictionary of DefineName object. */
-typedef QDict<DefineName> DefineNameDict;
+/** A dictionary of managed Define objects. */
+typedef std::map< std::string,std::unique_ptr<Define> > DefineMapOwning;
#endif