summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2021-01-04 13:33:02 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2021-01-04 13:36:40 (GMT)
commitef5be2c99caa8e5fbc1cec3ec53e91b2c929f613 (patch)
treef2493e4f41d0bfe2105facffdd3c46287bf516ab
parent0252f61004cada8f9e10644b850dd6ba47d61438 (diff)
downloadDoxygen-ef5be2c99caa8e5fbc1cec3ec53e91b2c929f613.zip
Doxygen-ef5be2c99caa8e5fbc1cec3ec53e91b2c929f613.tar.gz
Doxygen-ef5be2c99caa8e5fbc1cec3ec53e91b2c929f613.tar.bz2
Refactoring: modernize getMemberLists()
-rw-r--r--src/classdef.cpp118
-rw-r--r--src/classdef.h3
-rw-r--r--src/defgen.cpp8
-rw-r--r--src/filedef.cpp97
-rw-r--r--src/filedef.h2
-rw-r--r--src/groupdef.cpp89
-rw-r--r--src/groupdef.h3
-rw-r--r--src/index.cpp10
-rw-r--r--src/memberdef.cpp35
-rw-r--r--src/memberdef.h2
-rw-r--r--src/memberlist.h20
-rw-r--r--src/namespacedef.cpp98
-rw-r--r--src/namespacedef.h2
-rw-r--r--src/sqlite3gen.cpp32
-rw-r--r--src/xmlgen.cpp34
15 files changed, 195 insertions, 358 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 99b6c06..5a3c75d 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -222,7 +222,7 @@ class ClassDefImpl : public DefinitionMixin<ClassDefMutable>
virtual ClassDef *categoryOf() const;
virtual QCString className() const;
virtual MemberList *getMemberList(MemberListType lt) const;
- virtual const QList<MemberList> &getMemberLists() const;
+ virtual const MemberLists &getMemberLists() const;
virtual const MemberGroupList &getMemberGroups() const;
virtual QDict<int> *getTemplateBaseClassNames() const;
virtual ClassDef *getVariableInstance(const char *templSpec) const;
@@ -321,7 +321,6 @@ class ClassDefImpl : public DefinitionMixin<ClassDefMutable>
void writeDocumentationContents(OutputList &ol,const QCString &pageTitle) const;
void internalInsertMember(MemberDef *md,Protection prot,bool addToAllList);
void addMemberToList(MemberListType lt,MemberDef *md,bool isBrief);
- MemberList *createMemberList(MemberListType lt);
void writeInheritedMemberDeclarations(OutputList &ol,MemberListType lt,int lt2,const QCString &title,
const ClassDef *inheritedFrom,bool invert,
bool showAlways,QPtrDict<void> *visitedClasses) const;
@@ -493,7 +492,7 @@ class ClassDefAliasImpl : public DefinitionAliasMixin<ClassDef>
{ return getCdAlias()->className(); }
virtual MemberList *getMemberList(MemberListType lt) const
{ return getCdAlias()->getMemberList(lt); }
- virtual const QList<MemberList> &getMemberLists() const
+ virtual const MemberLists &getMemberLists() const
{ return getCdAlias()->getMemberLists(); }
virtual const MemberGroupList &getMemberGroups() const
{ return getCdAlias()->getMemberGroups(); }
@@ -674,7 +673,7 @@ class ClassDefImpl::IMPL
*/
ClassDef *categoryOf = 0;
- QList<MemberList> memberLists;
+ MemberLists memberLists;
/* user defined member groups */
MemberGroupList memberGroups;
@@ -850,13 +849,11 @@ void ClassDefImpl::insertSubClass(ClassDef *cd,Protection p,
void ClassDefImpl::addMembersToMemberGroup()
{
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- ::addMembersToMemberGroup(ml,&m_impl->memberGroups,this);
+ ::addMembersToMemberGroup(&ml,&m_impl->memberGroups,this);
}
}
@@ -1103,8 +1100,8 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
case MemberType_Function:
if (md->isConstructor() || md->isDestructor())
{
- MemberList *ml = createMemberList(MemberListType_constructors);
- ml->append(md);
+ MemberList &ml = m_impl->memberLists.get(MemberListType_constructors);
+ ml.append(md);
}
else
{
@@ -1168,16 +1165,11 @@ void ClassDefImpl::insertMember(MemberDef *md)
// compute the anchors for all members
void ClassDefImpl::computeAnchors()
{
- //ClassDef *context = Config_getBool(INLINE_INHERITED_MEMB) ? this : 0;
- //const char *letters = "abcdefghijklmnopqrstuvwxyz0123456789";
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- //int index = 0;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- ml->setAnchors();
+ ml.setAnchors();
}
}
@@ -1203,13 +1195,11 @@ void ClassDefImpl::findSectionsInDocumentation()
{
mg->findSectionsInDocumentation(this);
}
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- ml->findSectionsInDocumentation(this);
+ ml.findSectionsInDocumentation(this);
}
}
}
@@ -2770,13 +2760,11 @@ void ClassDefImpl::writeMemberPages(OutputList &ol) const
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : m_impl->memberLists)
{
- if (ml->numDocMembers()>ml->numDocEnumValues() && (ml->listType()&MemberListType_detailedLists))
+ if (ml.numDocMembers()>ml.numDocEnumValues() && (ml.listType()&MemberListType_detailedLists))
{
- ml->writeDocumentationPage(ol,displayName(),this);
+ ml.writeDocumentationPage(ol,displayName(),this);
}
}
@@ -4179,13 +4167,11 @@ void ClassDefImpl::addListReferences()
{
mg->addListReferences(this);
}
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if (ml->listType()&MemberListType_detailedLists)
+ if (ml.listType()&MemberListType_detailedLists)
{
- ml->addListReferences(this);
+ ml.addListReferences(this);
}
}
}
@@ -4220,33 +4206,13 @@ bool ClassDefImpl::isAccessibleMember(const MemberDef *md) const
return md->getClassDef() && isBaseClass(md->getClassDef(),TRUE);
}
-MemberList *ClassDefImpl::createMemberList(MemberListType lt)
-{
- m_impl->memberLists.setAutoDelete(TRUE);
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
- {
- if (ml->listType()==lt)
- {
- return ml;
- }
- }
- // not found, create a new member list
- ml = new MemberList(lt);
- m_impl->memberLists.append(ml);
- return ml;
-}
-
MemberList *ClassDefImpl::getMemberList(MemberListType lt) const
{
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if (ml->listType()==lt)
+ if (ml.listType()==lt)
{
- return ml;
+ return &ml;
}
}
return 0;
@@ -4256,28 +4222,26 @@ void ClassDefImpl::addMemberToList(MemberListType lt,MemberDef *md,bool isBrief)
{
static bool sortBriefDocs = Config_getBool(SORT_BRIEF_DOCS);
static bool sortMemberDocs = Config_getBool(SORT_MEMBER_DOCS);
- MemberList *ml = createMemberList(lt);
- ml->setNeedsSorting((isBrief && sortBriefDocs) || (!isBrief && sortMemberDocs));
- ml->append(md);
+ MemberList &ml = m_impl->memberLists.get(lt);
+ ml.setNeedsSorting((isBrief && sortBriefDocs) || (!isBrief && sortMemberDocs));
+ ml.append(md);
// for members in the declaration lists we set the section, needed for member grouping
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
MemberDefMutable *mdm = toMemberDefMutable(md);
if (mdm)
{
- mdm->setSectionList(this,ml);
+ mdm->setSectionList(this,&ml);
}
}
}
void ClassDefImpl::sortMemberLists()
{
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
+ if (ml.needsSorting()) { ml.sort(); ml.setNeedsSorting(FALSE); }
}
std::sort(m_impl->innerClasses.begin(),
m_impl->innerClasses.end(),
@@ -4355,12 +4319,10 @@ void ClassDefImpl::setAnonymousEnumType()
void ClassDefImpl::countMembers()
{
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- ml->countDecMembers();
- ml->countDocMembers();
+ ml.countDecMembers();
+ ml.countDocMembers();
}
for (const auto &mg : m_impl->memberGroups)
{
@@ -4795,7 +4757,7 @@ ClassDef *ClassDefImpl::categoryOf() const
return m_impl->categoryOf;
}
-const QList<MemberList> &ClassDefImpl::getMemberLists() const
+const MemberLists &ClassDefImpl::getMemberLists() const
{
return m_impl->memberLists;
}
@@ -4873,11 +4835,9 @@ MemberDef *ClassDefImpl::isSmartPointer() const
void ClassDefImpl::reclassifyMember(MemberDefMutable *md,MemberType t)
{
md->setMemberType(t);
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- ml->remove(md);
+ ml.remove(md);
}
insertMember(md);
}
@@ -4942,11 +4902,9 @@ void ClassDefImpl::setTagLessReference(const ClassDef *cd)
void ClassDefImpl::removeMemberFromLists(MemberDef *md)
{
- QListIterator<MemberList> mli(m_impl->memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_impl->memberLists)
{
- ml->remove(md);
+ ml.remove(md);
}
}
diff --git a/src/classdef.h b/src/classdef.h
index 2a96d22..46e1f7d 100644
--- a/src/classdef.h
+++ b/src/classdef.h
@@ -34,6 +34,7 @@ struct Argument;
class MemberDef;
class MemberDefMutable;
class MemberList;
+class MemberLists;
class ClassLinkedRefMap;
class OutputList;
class FileDef;
@@ -316,7 +317,7 @@ class ClassDef : public Definition
virtual MemberList *getMemberList(MemberListType lt) const = 0;
/** Returns the list containing the list of members sorted per type */
- virtual const QList<MemberList> &getMemberLists() const = 0;
+ virtual const MemberLists &getMemberLists() const = 0;
/** Returns the member groups defined for this class */
virtual const MemberGroupList &getMemberGroups() const = 0;
diff --git a/src/defgen.cpp b/src/defgen.cpp
index a1cd28d..4e2eb88 100644
--- a/src/defgen.cpp
+++ b/src/defgen.cpp
@@ -392,13 +392,11 @@ void generateDEFForClass(ClassDef *cd,FTextStream &t)
}
int numMembers = 0;
- QListIterator<MemberList> mli(cd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : cd->getMemberLists())
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- numMembers+=ml->count();
+ numMembers+=ml.count();
}
}
if (numMembers>0)
diff --git a/src/filedef.cpp b/src/filedef.cpp
index 6c31940..917af49 100644
--- a/src/filedef.cpp
+++ b/src/filedef.cpp
@@ -87,7 +87,7 @@ class FileDefImpl : public DefinitionMixin<FileDef>
virtual QList<IncludeInfo> *includedByFileList() const { return m_includedByList; }
virtual void getAllIncludeFilesRecursively(StringVector &incFiles) const;
virtual MemberList *getMemberList(MemberListType lt) const;
- virtual const QList<MemberList> &getMemberLists() const { return m_memberLists; }
+ virtual const MemberLists &getMemberLists() const { return m_memberLists; }
virtual const MemberGroupList &getMemberGroups() const { return m_memberGroups; }
virtual NamespaceLinkedRefMap getNamespaces() const { return m_namespaces; }
virtual ClassLinkedRefMap getClasses() const { return m_classes; }
@@ -130,7 +130,6 @@ class FileDefImpl : public DefinitionMixin<FileDef>
private:
void acquireFileVersion();
- MemberList *createMemberList(MemberListType lt);
void addMemberToList(MemberListType lt,MemberDef *md);
void writeMemberDeclarations(OutputList &ol,MemberListType lt,const QCString &title);
void writeMemberDocumentation(OutputList &ol,MemberListType lt,const QCString &title);
@@ -171,7 +170,7 @@ class FileDefImpl : public DefinitionMixin<FileDef>
QCString m_fileVersion;
PackageDef *m_package;
DirDef *m_dir;
- QList<MemberList> m_memberLists;
+ MemberLists m_memberLists;
MemberGroupList m_memberGroups;
NamespaceLinkedRefMap m_namespaces;
ClassLinkedRefMap m_classes;
@@ -296,13 +295,11 @@ void FileDefImpl::findSectionsInDocumentation()
mg->findSectionsInDocumentation(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ml->findSectionsInDocumentation(this);
+ ml.findSectionsInDocumentation(this);
}
}
}
@@ -1044,13 +1041,11 @@ void FileDefImpl::writeMemberPages(OutputList &ol)
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->writeDocumentationPage(ol,name(),this);
+ ml.writeDocumentationPage(ol,name(),this);
}
}
@@ -1243,13 +1238,11 @@ void FileDefImpl::parseSource(ClangTUParser *clangParser)
void FileDefImpl::addMembersToMemberGroup()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
}
}
@@ -1278,8 +1271,8 @@ void FileDefImpl::insertMember(MemberDef *md)
if (allMemberList==0)
{
- allMemberList = new MemberList(MemberListType_allMembersList);
- m_memberLists.append(allMemberList);
+ m_memberLists.emplace_back(MemberListType_allMembersList);
+ allMemberList = &m_memberLists.back();
}
allMemberList->append(md);
//::addFileMemberNameToIndex(md);
@@ -1540,13 +1533,11 @@ void FileDefImpl::addListReferences()
{
mg->addListReferences(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->addListReferences(this);
+ ml.addListReferences(this);
}
}
}
@@ -1886,54 +1877,34 @@ QCString FileDefImpl::includeName() const
return getSourceFileBase();
}
-MemberList *FileDefImpl::createMemberList(MemberListType lt)
-{
- m_memberLists.setAutoDelete(TRUE);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
- {
- if (ml->listType()==lt)
- {
- return ml;
- }
- }
- // not found, create a new member list
- ml = new MemberList(lt);
- m_memberLists.append(ml);
- return ml;
-}
-
void FileDefImpl::addMemberToList(MemberListType lt,MemberDef *md)
{
static bool sortBriefDocs = Config_getBool(SORT_BRIEF_DOCS);
static bool sortMemberDocs = Config_getBool(SORT_MEMBER_DOCS);
- MemberList *ml = createMemberList(lt);
- ml->setNeedsSorting(
- ((ml->listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml->listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml->append(md);
+ MemberList &ml = m_memberLists.get(lt);
+ ml.setNeedsSorting(
+ ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
+ ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
+ ml.append(md);
if (lt&MemberListType_documentationLists)
{
- ml->setInFile(TRUE);
+ ml.setInFile(TRUE);
}
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
MemberDefMutable *mdm = toMemberDefMutable(md);
if (mdm)
{
- mdm->setSectionList(this,ml);
+ mdm->setSectionList(this,&ml);
}
}
}
void FileDefImpl::sortMemberLists()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
+ if (ml.needsSorting()) { ml.sort(); ml.setNeedsSorting(FALSE); }
}
for (const auto &mg : m_memberGroups)
@@ -1967,13 +1938,11 @@ void FileDefImpl::sortMemberLists()
MemberList *FileDefImpl::getMemberList(MemberListType lt) const
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()==lt)
+ if (ml.listType()==lt)
{
- return ml;
+ return const_cast<MemberList*>(&ml);
}
}
return 0;
@@ -2058,12 +2027,10 @@ QCString FileDefImpl::includedByDependencyGraphFileName() const
void FileDefImpl::countMembers()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- ml->countDecMembers();
- ml->countDocMembers();
+ ml.countDecMembers();
+ ml.countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
diff --git a/src/filedef.h b/src/filedef.h
index f27ff6d..ba18c2b 100644
--- a/src/filedef.h
+++ b/src/filedef.h
@@ -127,7 +127,7 @@ class FileDef : public DefinitionMutable, public Definition
virtual void getAllIncludeFilesRecursively(StringVector &incFiles) const = 0;
virtual MemberList *getMemberList(MemberListType lt) const = 0;
- virtual const QList<MemberList> &getMemberLists() const = 0;
+ virtual const MemberLists &getMemberLists() const = 0;
/* user defined member groups */
virtual const MemberGroupList &getMemberGroups() const = 0;
diff --git a/src/groupdef.cpp b/src/groupdef.cpp
index d0f47db..53a24f2 100644
--- a/src/groupdef.cpp
+++ b/src/groupdef.cpp
@@ -95,7 +95,7 @@ class GroupDefImpl : public DefinitionMixin<GroupDef>
virtual Definition *getGroupScope() const { return m_groupScope; }
virtual MemberList *getMemberList(MemberListType lt) const;
- virtual const QList<MemberList> &getMemberLists() const { return m_memberLists; }
+ virtual const MemberLists &getMemberLists() const { return m_memberLists; }
/* user defined member groups */
virtual const MemberGroupList &getMemberGroups() const { return m_memberGroups; }
@@ -112,7 +112,6 @@ class GroupDefImpl : public DefinitionMixin<GroupDef>
private:
void addMemberListToGroup(MemberList *,bool (MemberDef::*)() const);
- MemberList *createMemberList(MemberListType lt);
void addMemberToList(MemberListType lt,MemberDef *md);
void writeMemberDeclarations(OutputList &ol,MemberListType lt,const QCString &title);
void writeMemberDocumentation(OutputList &ol,MemberListType lt,const QCString &title);
@@ -149,7 +148,7 @@ class GroupDefImpl : public DefinitionMixin<GroupDef>
MemberList * m_allMemberList;
MemberNameInfoLinkedMap m_allMemberNameInfoLinkedMap;
Definition * m_groupScope;
- QList<MemberList> m_memberLists;
+ MemberLists m_memberLists;
MemberGroupList m_memberGroups;
bool m_subGrouping;
@@ -225,13 +224,11 @@ void GroupDefImpl::findSectionsInDocumentation()
mg->findSectionsInDocumentation(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ml->findSectionsInDocumentation(this);
+ ml.findSectionsInDocumentation(this);
}
}
}
@@ -295,13 +292,11 @@ void GroupDefImpl::addExample(const PageDef *def)
void GroupDefImpl::addMembersToMemberGroup()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
}
}
@@ -572,12 +567,10 @@ bool GroupDefImpl::isASubGroup() const
void GroupDefImpl::countMembers()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- ml->countDecMembers();
- ml->countDocMembers();
+ ml.countDecMembers();
+ ml.countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
@@ -1264,13 +1257,11 @@ void GroupDefImpl::writeMemberPages(OutputList &ol)
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->writeDocumentationPage(ol,name(),this);
+ ml.writeDocumentationPage(ol,name(),this);
}
}
@@ -1541,45 +1532,25 @@ void GroupDefImpl::addListReferences()
{
mg->addListReferences(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->addListReferences(this);
+ ml.addListReferences(this);
}
}
}
-MemberList *GroupDefImpl::createMemberList(MemberListType lt)
-{
- m_memberLists.setAutoDelete(TRUE);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
- {
- if (ml->listType()==lt)
- {
- return ml;
- }
- }
- // not found, create a new member list
- ml = new MemberList(lt);
- m_memberLists.append(ml);
- ml->setInGroup(TRUE);
- return ml;
-}
-
void GroupDefImpl::addMemberToList(MemberListType lt,MemberDef *md)
{
static bool sortBriefDocs = Config_getBool(SORT_BRIEF_DOCS);
static bool sortMemberDocs = Config_getBool(SORT_MEMBER_DOCS);
- MemberList *ml = createMemberList(lt);
- ml->setNeedsSorting(
- ((ml->listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml->listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml->append(md);
+ MemberList &ml = m_memberLists.get(lt);
+ ml.setInGroup(true);
+ ml.setNeedsSorting(
+ ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
+ ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
+ ml.append(md);
}
// performs a partial reordering to group elements together with the same scope
@@ -1645,11 +1616,9 @@ static void groupClassesWithSameScope(Vec &vec)
void GroupDefImpl::sortMemberLists()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
+ if (ml.needsSorting()) { ml.sort(); ml.setNeedsSorting(FALSE); }
}
if (Config_getBool(SORT_BRIEF_DOCS))
{
@@ -1679,13 +1648,11 @@ void GroupDefImpl::sortMemberLists()
MemberList *GroupDefImpl::getMemberList(MemberListType lt) const
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (;(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()==lt)
+ if (ml.listType()==lt)
{
- return ml;
+ return const_cast<MemberList*>(&ml);
}
}
return 0;
diff --git a/src/groupdef.h b/src/groupdef.h
index 2ab8231..624a680 100644
--- a/src/groupdef.h
+++ b/src/groupdef.h
@@ -28,6 +28,7 @@
#include "linkedmap.h"
class MemberList;
+class MemberLists;
class FileList;
class ClassLinkedRefMap;
class NamespaceLinkedRefMap;
@@ -91,7 +92,7 @@ class GroupDef : public DefinitionMutable, public Definition
virtual Definition *getGroupScope() const = 0;
virtual MemberList *getMemberList(MemberListType lt) const = 0;
- virtual const QList<MemberList> &getMemberLists() const = 0;
+ virtual const MemberLists &getMemberLists() const = 0;
/* user defined member groups */
virtual const MemberGroupList &getMemberGroups() const = 0;
diff --git a/src/index.cpp b/src/index.cpp
index c54f7a2..7089a0c 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -355,7 +355,7 @@ void addMembersToIndex(T *def,LayoutDocManager::LayoutPart part,
const QCString &name,const QCString &anchor,
bool addToIndex=TRUE,bool preventSeparateIndex=FALSE)
{
- bool hasMembers = def->getMemberLists().count()>0 || !def->getMemberGroups().empty();
+ bool hasMembers = !def->getMemberLists().empty() || !def->getMemberGroups().empty();
Doxygen::indexList->addContentsItem(hasMembers,name,
def->getReference(),def->getOutputFileBase(),anchor,
hasMembers && !preventSeparateIndex,
@@ -3759,13 +3759,11 @@ static void writeGroupTreeNode(OutputList &ol, const GroupDef *gd, int level, FT
size_t numSubItems = 0;
if (1 /*Config_getBool(TOC_EXPAND)*/)
{
- QListIterator<MemberList> mli(gd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : gd->getMemberLists())
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- numSubItems += ml->count();
+ numSubItems += ml.count();
}
}
numSubItems += gd->getNamespaces().size();
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index 5499dc5..8f09347 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -247,7 +247,7 @@ class MemberDefImpl : public DefinitionMixin<MemberDefMutable>
virtual void setBitfields(const char *s);
virtual void setMaxInitLines(int lines);
virtual void setMemberClass(const ClassDef *cd);
- virtual void setSectionList(const Definition *container,MemberList *sl);
+ virtual void setSectionList(const Definition *container,const MemberList *sl);
virtual void setGroupDef(const GroupDef *gd,Grouping::GroupPri_t pri,
const QCString &fileName,int startLine,bool hasDocs,
MemberDef *member=0);
@@ -1240,7 +1240,7 @@ class MemberDefImpl::IMPL
// as its type then this is computed by
// getClassDefOfAnonymousType() and
// cached here.
- SDict<MemberList> *classSectionSDict = 0; // not accessible
+ std::map<const Definition *,const MemberList *> sectionMap;
const MemberDef *groupAlias = 0; // Member containing the definition
int grpId = 0; // group id
@@ -1302,7 +1302,6 @@ class MemberDefImpl::IMPL
MemberDefImpl::IMPL::IMPL() :
enumFields(0),
redefinedBy(0),
- classSectionSDict(0),
category(0),
categoryRelation(0),
declLine(-1),
@@ -1315,7 +1314,6 @@ MemberDefImpl::IMPL::~IMPL()
{
delete redefinedBy;
delete enumFields;
- delete classSectionSDict;
}
void MemberDefImpl::IMPL::init(Definition *d,
@@ -1388,7 +1386,6 @@ void MemberDefImpl::IMPL::init(Definition *d,
}
metaData = meta;
templateMaster = 0;
- classSectionSDict = 0;
docsForDefinition = TRUE;
isTypedefValCached = FALSE;
cachedTypedefValue = 0;
@@ -1460,7 +1457,6 @@ MemberDef *MemberDefImpl::deepCopy() const
// clear pointers owned by object
result->m_impl->redefinedBy= 0;
result->m_impl->enumFields=0;
- result->m_impl->classSectionSDict=0;
// replace pointers owned by the object by deep copies
if (m_impl->redefinedBy)
{
@@ -1484,16 +1480,6 @@ MemberDef *MemberDefImpl::deepCopy() const
result->m_impl->tArgList = m_impl->tArgList;
result->m_impl->typeConstraints = m_impl->typeConstraints;
result->setDefinitionTemplateParameterLists(m_impl->defTmpArgLists);
- if (m_impl->classSectionSDict)
- {
- result->m_impl->classSectionSDict = new SDict<MemberList>(7);
- SDict<MemberList>::IteratorDict it(*m_impl->classSectionSDict);
- MemberList *ml;
- for (it.toFirst();(ml=it.current());++it)
- {
- result->m_impl->classSectionSDict->append(it.currentKey(),ml);
- }
- }
result->m_impl->declArgList = m_impl->declArgList;
return result;
}
@@ -4355,23 +4341,14 @@ void MemberDefImpl::addListReference(Definition *)
const MemberList *MemberDefImpl::getSectionList(const Definition *container) const
{
- const Definition *d = container;
- char key[20];
- sprintf(key,"%p",(void*)d);
- return (d!=0 && m_impl->classSectionSDict) ? m_impl->classSectionSDict->find(key) : 0;
+ auto it = m_impl->sectionMap.find(container);
+ return it!=m_impl->sectionMap.end() ? it->second : 0;
}
-void MemberDefImpl::setSectionList(const Definition *container,MemberList *sl)
+void MemberDefImpl::setSectionList(const Definition *container,const MemberList *sl)
{
//printf("MemberDefImpl::setSectionList(%s,%p) name=%s\n",d->name().data(),sl,name().data());
- const Definition *d= container;
- char key[20];
- sprintf(key,"%p",(void*)d);
- if (m_impl->classSectionSDict==0)
- {
- m_impl->classSectionSDict = new SDict<MemberList>(7);
- }
- m_impl->classSectionSDict->append(key,sl);
+ m_impl->sectionMap.insert(std::make_pair(container,sl));
}
Specifier MemberDefImpl::virtualness(int count) const
diff --git a/src/memberdef.h b/src/memberdef.h
index 1fbfc27..ff0e300 100644
--- a/src/memberdef.h
+++ b/src/memberdef.h
@@ -308,7 +308,7 @@ class MemberDefMutable : public DefinitionMutable, public MemberDef
virtual void setBitfields(const char *s) = 0;
virtual void setMaxInitLines(int lines) = 0;
virtual void setMemberClass(const ClassDef *cd) = 0;
- virtual void setSectionList(const Definition *container,MemberList *sl) = 0;
+ virtual void setSectionList(const Definition *container,const MemberList *sl) = 0;
virtual void setGroupDef(const GroupDef *gd,Grouping::GroupPri_t pri,
const QCString &fileName,int startLine,bool hasDocs,
MemberDef *member=0) = 0;
diff --git a/src/memberlist.h b/src/memberlist.h
index 200767d..d2433f4 100644
--- a/src/memberlist.h
+++ b/src/memberlist.h
@@ -17,6 +17,7 @@
#define MEMBERLIST_H
#include <vector>
+#include <algorithm>
#include <qlist.h>
#include "memberdef.h"
@@ -131,6 +132,25 @@ class MemberLinkedRefMap : public LinkedRefMap<const MemberDef>
{
};
+class MemberLists : public std::vector<MemberList>
+{
+ public:
+ MemberLists() = default;
+ MemberList &get(MemberListType lt)
+ {
+ // find the list with the given type
+ auto it = std::find_if(begin(),end(),[&lt](const auto &ml) { return ml.listType()==lt; });
+ if (it!=end()) return *it;
+ // or create a new list if it is not found
+ emplace_back(lt);
+ return back();
+ }
+
+ private:
+ MemberLists(const MemberLists &) = delete;
+ MemberLists &operator=(const MemberLists &) = delete;
+};
+
int genericCompareMembers(const MemberDef *c1,const MemberDef *c2);
#endif
diff --git a/src/namespacedef.cpp b/src/namespacedef.cpp
index 1108653..f1ac814 100644
--- a/src/namespacedef.cpp
+++ b/src/namespacedef.cpp
@@ -95,7 +95,7 @@ class NamespaceDefImpl : public DefinitionMixin<NamespaceDefMutable>
virtual void setFileName(const QCString &fn);
virtual bool subGrouping() const { return m_subGrouping; }
virtual MemberList *getMemberList(MemberListType lt) const;
- virtual const QList<MemberList> &getMemberLists() const { return m_memberLists; }
+ virtual const MemberLists &getMemberLists() const { return m_memberLists; }
virtual const MemberDef *getMemberByName(const QCString &) const;
virtual const MemberGroupList &getMemberGroups() const { return m_memberGroups; }
virtual ClassLinkedRefMap getClasses() const { return classes; }
@@ -110,7 +110,6 @@ class NamespaceDefImpl : public DefinitionMixin<NamespaceDefMutable>
virtual void setMetaData(const QCString &m);
private:
- MemberList *createMemberList(MemberListType lt);
void addMemberToList(MemberListType lt,MemberDef *md);
void writeMemberDeclarations(OutputList &ol,MemberListType lt,const QCString &title);
void writeMemberDocumentation(OutputList &ol,MemberListType lt,const QCString &title);
@@ -139,7 +138,7 @@ class NamespaceDefImpl : public DefinitionMixin<NamespaceDefMutable>
SDict<Definition> *m_innerCompounds = 0;
MemberLinkedRefMap m_allMembers;
- QList<MemberList> m_memberLists;
+ MemberLists m_memberLists;
MemberGroupList m_memberGroups;
ClassLinkedRefMap classes;
ClassLinkedRefMap interfaces;
@@ -208,7 +207,7 @@ class NamespaceDefAliasImpl : public DefinitionAliasMixin<NamespaceDef>
{ return getNSAlias()->subGrouping(); }
virtual MemberList *getMemberList(MemberListType lt) const
{ return getNSAlias()->getMemberList(lt); }
- virtual const QList<MemberList> &getMemberLists() const
+ virtual const MemberLists &getMemberLists() const
{ return getNSAlias()->getMemberLists(); }
virtual const MemberDef *getMemberByName(const QCString &name) const
{ return getNSAlias()->getMemberByName(name); }
@@ -318,13 +317,11 @@ void NamespaceDefImpl::findSectionsInDocumentation()
{
mg->findSectionsInDocumentation(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ml->findSectionsInDocumentation(this);
+ ml.findSectionsInDocumentation(this);
}
}
}
@@ -385,13 +382,11 @@ void NamespaceDefImpl::insertNamespace(const NamespaceDef *nd)
void NamespaceDefImpl::addMembersToMemberGroup()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
}
}
@@ -449,8 +444,8 @@ void NamespaceDefImpl::insertMember(MemberDef *md)
MemberList *allMemberList = getMemberList(MemberListType_allMembersList);
if (allMemberList==0)
{
- allMemberList = new MemberList(MemberListType_allMembersList);
- m_memberLists.append(allMemberList);
+ m_memberLists.emplace_back(MemberListType_allMembersList);
+ allMemberList = &m_memberLists.back();
}
allMemberList->append(md);
//printf("%s::m_allMembersDict->append(%s)\n",name().data(),md->localName().data());
@@ -1053,13 +1048,11 @@ void NamespaceDefImpl::writeMemberPages(OutputList &ol)
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->writeDocumentationPage(ol,displayName(),this);
+ ml.writeDocumentationPage(ol,displayName(),this);
}
}
ol.popGeneratorState();
@@ -1110,12 +1103,10 @@ void NamespaceDefImpl::writeQuickMemberLinks(OutputList &ol,const MemberDef *cur
void NamespaceDefImpl::countMembers()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- ml->countDecMembers();
- ml->countDocMembers();
+ ml.countDecMembers();
+ ml.countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
@@ -1183,13 +1174,11 @@ void NamespaceDefImpl::addListReferences()
{
mg->addListReferences(this);
}
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()&MemberListType_documentationLists)
+ if (ml.listType()&MemberListType_documentationLists)
{
- ml->addListReferences(this);
+ ml.addListReferences(this);
}
}
}
@@ -1336,54 +1325,33 @@ void NamespaceLinkedRefMap::writeDeclaration(OutputList &ol,const char *title,
//-------------------------------------------------------------------------------
-MemberList *NamespaceDefImpl::createMemberList(MemberListType lt)
-{
- m_memberLists.setAutoDelete(TRUE);
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
- {
- if (ml->listType()==lt)
- {
- return ml;
- }
- }
- // not found, create a new member list
- ml = new MemberList(lt);
- m_memberLists.append(ml);
- return ml;
-}
-
void NamespaceDefImpl::addMemberToList(MemberListType lt,MemberDef *md)
{
static bool sortBriefDocs = Config_getBool(SORT_BRIEF_DOCS);
static bool sortMemberDocs = Config_getBool(SORT_MEMBER_DOCS);
- MemberList *ml = createMemberList(lt);
- ml->setNeedsSorting(
- ((ml->listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml->listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml->append(md);
+ MemberList &ml = m_memberLists.get(lt);
+ ml.setNeedsSorting(
+ ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
+ ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
+ ml.append(md);
- if (ml->listType()&MemberListType_declarationLists)
+ if (ml.listType()&MemberListType_declarationLists)
{
MemberDefMutable *mdm = toMemberDefMutable(md);
if (mdm)
{
- mdm->setSectionList(this,ml);
+ mdm->setSectionList(this,&ml);
}
}
}
void NamespaceDefImpl::sortMemberLists()
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
+ if (ml.needsSorting()) { ml.sort(); ml.setNeedsSorting(FALSE); }
}
-
if (Config_getBool(SORT_BRIEF_DOCS))
{
auto classComp = [](const ClassLinkedRefMap::Ptr &c1,const ClassLinkedRefMap::Ptr &c2)
@@ -1411,13 +1379,11 @@ void NamespaceDefImpl::sortMemberLists()
MemberList *NamespaceDefImpl::getMemberList(MemberListType lt) const
{
- QListIterator<MemberList> mli(m_memberLists);
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (auto &ml : m_memberLists)
{
- if (ml->listType()==lt)
+ if (ml.listType()==lt)
{
- return ml;
+ return const_cast<MemberList*>(&ml);
}
}
return 0;
diff --git a/src/namespacedef.h b/src/namespacedef.h
index 6838157..e644a32 100644
--- a/src/namespacedef.h
+++ b/src/namespacedef.h
@@ -75,7 +75,7 @@ class NamespaceDef : public Definition
virtual const Definition *findInnerCompound(const char *name) const = 0;
virtual bool subGrouping() const = 0;
virtual MemberList *getMemberList(MemberListType lt) const = 0;
- virtual const QList<MemberList> &getMemberLists() const = 0;
+ virtual const MemberLists &getMemberLists() const = 0;
virtual const MemberDef *getMemberByName(const QCString &) const = 0;
/*! Returns the user defined member groups */
diff --git a/src/sqlite3gen.cpp b/src/sqlite3gen.cpp
index 38654bc..eb5da5e 100644
--- a/src/sqlite3gen.cpp
+++ b/src/sqlite3gen.cpp
@@ -2012,13 +2012,11 @@ static void generateSqlite3ForClass(const ClassDef *cd)
}
// this is just a list of *local* members
- QListIterator<MemberList> mli(cd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : cd->getMemberLists())
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- generateSqlite3Section(cd,ml,refid,"user-defined");
+ generateSqlite3Section(cd,&ml,refid,"user-defined");
}
}
@@ -2071,13 +2069,11 @@ static void generateSqlite3ForNamespace(const NamespaceDef *nd)
}
// + normal members
- QListIterator<MemberList> mli(nd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : nd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateSqlite3Section(nd,ml,refid,"user-defined");
+ generateSqlite3Section(nd,&ml,refid,"user-defined");
}
}
}
@@ -2228,13 +2224,11 @@ static void generateSqlite3ForFile(const FileDef *fd)
}
// + normal members
- QListIterator<MemberList> mli(fd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : fd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateSqlite3Section(fd,ml,refid,"user-defined");
+ generateSqlite3Section(fd,&ml,refid,"user-defined");
}
}
}
@@ -2297,13 +2291,11 @@ static void generateSqlite3ForGroup(const GroupDef *gd)
}
// + members
- QListIterator<MemberList> mli(gd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : gd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateSqlite3Section(gd,ml,refid,"user-defined");
+ generateSqlite3Section(gd,&ml,refid,"user-defined");
}
}
}
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index 350be48..1831a98 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -1054,7 +1054,7 @@ static bool memberVisible(const Definition *d,const MemberDef *md)
}
static void generateXMLSection(const Definition *d,FTextStream &ti,FTextStream &t,
- MemberList *ml,const char *kind,const char *header=0,
+ const MemberList *ml,const char *kind,const char *header=0,
const char *documentation=0)
{
if (ml==0) return;
@@ -1361,13 +1361,11 @@ static void generateXMLForClass(const ClassDef *cd,FTextStream &ti)
mg->documentation());
}
- QListIterator<MemberList> mli(cd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : cd->getMemberLists())
{
- if ((ml->listType()&MemberListType_detailedLists)==0)
+ if ((ml.listType()&MemberListType_detailedLists)==0)
{
- generateXMLSection(cd,ti,t,ml,g_xmlSectionMapper.find(ml->listType()));
+ generateXMLSection(cd,ti,t,&ml,g_xmlSectionMapper.find(ml.listType()));
}
}
@@ -1460,13 +1458,11 @@ static void generateXMLForNamespace(const NamespaceDef *nd,FTextStream &ti)
mg->documentation());
}
- QListIterator<MemberList> mli(nd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : nd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateXMLSection(nd,ti,t,ml,g_xmlSectionMapper.find(ml->listType()));
+ generateXMLSection(nd,ti,t,&ml,g_xmlSectionMapper.find(ml.listType()));
}
}
@@ -1586,13 +1582,11 @@ static void generateXMLForFile(FileDef *fd,FTextStream &ti)
mg->documentation());
}
- QListIterator<MemberList> mli(fd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : fd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateXMLSection(fd,ti,t,ml,g_xmlSectionMapper.find(ml->listType()));
+ generateXMLSection(fd,ti,t,&ml,g_xmlSectionMapper.find(ml.listType()));
}
}
@@ -1661,13 +1655,11 @@ static void generateXMLForGroup(const GroupDef *gd,FTextStream &ti)
mg->documentation());
}
- QListIterator<MemberList> mli(gd->getMemberLists());
- MemberList *ml;
- for (mli.toFirst();(ml=mli.current());++mli)
+ for (const auto &ml : gd->getMemberLists())
{
- if ((ml->listType()&MemberListType_declarationLists)!=0)
+ if ((ml.listType()&MemberListType_declarationLists)!=0)
{
- generateXMLSection(gd,ti,t,ml,g_xmlSectionMapper.find(ml->listType()));
+ generateXMLSection(gd,ti,t,&ml,g_xmlSectionMapper.find(ml.listType()));
}
}