summaryrefslogtreecommitdiffstats
path: root/src/membername.h
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-04-08 20:10:56 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-04-08 20:10:56 (GMT)
commit369e821fc6870e9e6b30aa13d59592c12c760800 (patch)
tree466f2dbaefc79f48639197b46ac07c7d426b277a /src/membername.h
parent7ea3bb2e16facf7befa820e4f1ce43872d335554 (diff)
downloadDoxygen-369e821fc6870e9e6b30aa13d59592c12c760800.zip
Doxygen-369e821fc6870e9e6b30aa13d59592c12c760800.tar.gz
Doxygen-369e821fc6870e9e6b30aa13d59592c12c760800.tar.bz2
Replaced MemberNameSDict by MemberNameLinkedMap based on LinkedMap
Diffstat (limited to 'src/membername.h')
-rw-r--r--src/membername.h42
1 files changed, 13 insertions, 29 deletions
diff --git a/src/membername.h b/src/membername.h
index 04ceda0..4094132 100644
--- a/src/membername.h
+++ b/src/membername.h
@@ -1,12 +1,12 @@
/******************************************************************************
*
- *
+ *
*
* 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.
*
@@ -21,36 +21,20 @@
#include <qlist.h>
#include "memberdef.h"
#include "sortdict.h"
+#include "linkedmap.h"
-/** Class representing all MemberDef objects with the same name */
-class MemberName : public QList<MemberDef>
+class MemberName : public std::vector< std::unique_ptr<MemberDef> >
{
public:
- MemberName(const char *name);
- ~MemberName();
- const char *memberName() const { return name; }
-
+ MemberName(const char *name) : m_name(name) {}
+ const char *memberName() const { return m_name; }
private:
- int compareValues(const MemberDef *item1,const MemberDef *item2) const;
- QCString name;
+ QCString m_name;
};
-/** Iterator for MemberDef objects in a MemberName list. */
-class MemberNameIterator : public QListIterator<MemberDef>
+/** Ordered dictionary of MemberName objects. */
+class MemberNameLinkedMap : public LinkedMap<MemberName>
{
- public:
- MemberNameIterator( const MemberName &list);
-};
-
-/** Sorted dictionary of MemberName objects. */
-class MemberNameSDict : public SDict<MemberName>
-{
- public:
- MemberNameSDict(uint size) : SDict<MemberName>(size) {}
- ~MemberNameSDict() {}
-
- private:
- int compareValues(const MemberName *item1,const MemberName *item2) const;
};
/** Data associated with a MemberDef in an inheritance relation. */
@@ -64,7 +48,7 @@ struct MemberInfo
Specifier virt;
bool inherited;
QCString scopePath;
- QCString ambiguityResolutionScope;
+ QCString ambiguityResolutionScope;
ClassDef *ambigClass;
};
@@ -72,7 +56,7 @@ struct MemberInfo
class MemberNameInfo : public QList<MemberInfo>
{
public:
- MemberNameInfo(const char *name);
+ MemberNameInfo(const char *name);
~MemberNameInfo() {}
const char *memberName() const { return name; }
private:
@@ -84,7 +68,7 @@ class MemberNameInfo : public QList<MemberInfo>
class MemberNameInfoIterator : public QListIterator<MemberInfo>
{
public:
- MemberNameInfoIterator(const MemberNameInfo &mnii)
+ MemberNameInfoIterator(const MemberNameInfo &mnii)
: QListIterator<MemberInfo>(mnii) {}
};