summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2021-01-04 16:08:58 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2021-01-04 16:08:58 (GMT)
commit5d980fa30b6524d3d53867e6fd8d6edb67a37eeb (patch)
treecf6e29619f2d74f6a344b8b4da45d2a504687265 /src
parent19713dcc51ceb3930770cb25ec85590b86316cf7 (diff)
downloadDoxygen-5d980fa30b6524d3d53867e6fd8d6edb67a37eeb.zip
Doxygen-5d980fa30b6524d3d53867e6fd8d6edb67a37eeb.tar.gz
Doxygen-5d980fa30b6524d3d53867e6fd8d6edb67a37eeb.tar.bz2
Refactoring: avoid copying MemberLists by not embedding them directly
Diffstat (limited to 'src')
-rw-r--r--src/classdef.cpp47
-rw-r--r--src/defgen.cpp4
-rw-r--r--src/filedef.cpp46
-rw-r--r--src/groupdef.cpp38
-rw-r--r--src/index.cpp4
-rw-r--r--src/memberlist.h10
-rw-r--r--src/namespacedef.cpp44
-rw-r--r--src/sqlite3gen.cpp16
-rw-r--r--src/xmlgen.cpp16
9 files changed, 113 insertions, 112 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 5a3c75d..9777f05 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -851,9 +851,9 @@ void ClassDefImpl::addMembersToMemberGroup()
{
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.get(),&m_impl->memberGroups,this);
}
}
@@ -1100,8 +1100,7 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
case MemberType_Function:
if (md->isConstructor() || md->isDestructor())
{
- MemberList &ml = m_impl->memberLists.get(MemberListType_constructors);
- ml.append(md);
+ m_impl->memberLists.get(MemberListType_constructors)->append(md);
}
else
{
@@ -1167,9 +1166,9 @@ void ClassDefImpl::computeAnchors()
{
for (auto &ml : m_impl->memberLists)
{
- if ((ml.listType()&MemberListType_detailedLists)==0)
+ if ((ml->listType()&MemberListType_detailedLists)==0)
{
- ml.setAnchors();
+ ml->setAnchors();
}
}
@@ -1197,9 +1196,9 @@ void ClassDefImpl::findSectionsInDocumentation()
}
for (auto &ml : m_impl->memberLists)
{
- if ((ml.listType()&MemberListType_detailedLists)==0)
+ if ((ml->listType()&MemberListType_detailedLists)==0)
{
- ml.findSectionsInDocumentation(this);
+ ml->findSectionsInDocumentation(this);
}
}
}
@@ -2762,9 +2761,9 @@ void ClassDefImpl::writeMemberPages(OutputList &ol) const
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);
}
}
@@ -4169,9 +4168,9 @@ void ClassDefImpl::addListReferences()
}
for (auto &ml : m_impl->memberLists)
{
- if (ml.listType()&MemberListType_detailedLists)
+ if (ml->listType()&MemberListType_detailedLists)
{
- ml.addListReferences(this);
+ ml->addListReferences(this);
}
}
}
@@ -4210,9 +4209,9 @@ MemberList *ClassDefImpl::getMemberList(MemberListType lt) const
{
for (auto &ml : m_impl->memberLists)
{
- if (ml.listType()==lt)
+ if (ml->listType()==lt)
{
- return &ml;
+ return ml.get();
}
}
return 0;
@@ -4222,17 +4221,17 @@ 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 = m_impl->memberLists.get(lt);
- ml.setNeedsSorting((isBrief && sortBriefDocs) || (!isBrief && sortMemberDocs));
- ml.append(md);
+ const auto &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.get());
}
}
}
@@ -4241,7 +4240,7 @@ void ClassDefImpl::sortMemberLists()
{
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(),
@@ -4321,8 +4320,8 @@ void ClassDefImpl::countMembers()
{
for (auto &ml : m_impl->memberLists)
{
- ml.countDecMembers();
- ml.countDocMembers();
+ ml->countDecMembers();
+ ml->countDocMembers();
}
for (const auto &mg : m_impl->memberGroups)
{
@@ -4837,7 +4836,7 @@ void ClassDefImpl::reclassifyMember(MemberDefMutable *md,MemberType t)
md->setMemberType(t);
for (auto &ml : m_impl->memberLists)
{
- ml.remove(md);
+ ml->remove(md);
}
insertMember(md);
}
@@ -4904,7 +4903,7 @@ void ClassDefImpl::removeMemberFromLists(MemberDef *md)
{
for (auto &ml : m_impl->memberLists)
{
- ml.remove(md);
+ ml->remove(md);
}
}
diff --git a/src/defgen.cpp b/src/defgen.cpp
index 4e2eb88..89f7568 100644
--- a/src/defgen.cpp
+++ b/src/defgen.cpp
@@ -394,9 +394,9 @@ void generateDEFForClass(ClassDef *cd,FTextStream &t)
int numMembers = 0;
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 917af49..2fb2af7 100644
--- a/src/filedef.cpp
+++ b/src/filedef.cpp
@@ -297,9 +297,9 @@ void FileDefImpl::findSectionsInDocumentation()
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ml.findSectionsInDocumentation(this);
+ ml->findSectionsInDocumentation(this);
}
}
}
@@ -1043,9 +1043,9 @@ void FileDefImpl::writeMemberPages(OutputList &ol)
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);
}
}
@@ -1240,9 +1240,9 @@ void FileDefImpl::addMembersToMemberGroup()
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(ml.get(),&m_memberGroups,this);
}
}
@@ -1271,8 +1271,8 @@ void FileDefImpl::insertMember(MemberDef *md)
if (allMemberList==0)
{
- m_memberLists.emplace_back(MemberListType_allMembersList);
- allMemberList = &m_memberLists.back();
+ m_memberLists.emplace_back(std::make_unique<MemberList>(MemberListType_allMembersList));
+ allMemberList = m_memberLists.back().get();
}
allMemberList->append(md);
//::addFileMemberNameToIndex(md);
@@ -1535,9 +1535,9 @@ void FileDefImpl::addListReferences()
}
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_documentationLists)
+ if (ml->listType()&MemberListType_documentationLists)
{
- ml.addListReferences(this);
+ ml->addListReferences(this);
}
}
}
@@ -1881,21 +1881,21 @@ 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 = m_memberLists.get(lt);
- ml.setNeedsSorting(
- ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml.append(md);
+ const auto &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.get());
}
}
}
@@ -1904,7 +1904,7 @@ void FileDefImpl::sortMemberLists()
{
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)
@@ -1940,9 +1940,9 @@ MemberList *FileDefImpl::getMemberList(MemberListType lt) const
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()==lt)
+ if (ml->listType()==lt)
{
- return const_cast<MemberList*>(&ml);
+ return ml.get();
}
}
return 0;
@@ -2029,8 +2029,8 @@ void FileDefImpl::countMembers()
{
for (auto &ml : m_memberLists)
{
- ml.countDecMembers();
- ml.countDocMembers();
+ ml->countDecMembers();
+ ml->countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
diff --git a/src/groupdef.cpp b/src/groupdef.cpp
index 53a24f2..cd3cc01 100644
--- a/src/groupdef.cpp
+++ b/src/groupdef.cpp
@@ -226,9 +226,9 @@ void GroupDefImpl::findSectionsInDocumentation()
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ml.findSectionsInDocumentation(this);
+ ml->findSectionsInDocumentation(this);
}
}
}
@@ -294,9 +294,9 @@ void GroupDefImpl::addMembersToMemberGroup()
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(ml.get(),&m_memberGroups,this);
}
}
@@ -569,8 +569,8 @@ void GroupDefImpl::countMembers()
{
for (auto &ml : m_memberLists)
{
- ml.countDecMembers();
- ml.countDocMembers();
+ ml->countDecMembers();
+ ml->countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
@@ -1259,9 +1259,9 @@ void GroupDefImpl::writeMemberPages(OutputList &ol)
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);
}
}
@@ -1534,9 +1534,9 @@ void GroupDefImpl::addListReferences()
}
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_documentationLists)
+ if (ml->listType()&MemberListType_documentationLists)
{
- ml.addListReferences(this);
+ ml->addListReferences(this);
}
}
}
@@ -1545,12 +1545,12 @@ 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 = m_memberLists.get(lt);
- ml.setInGroup(true);
- ml.setNeedsSorting(
- ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml.append(md);
+ const auto &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
@@ -1618,7 +1618,7 @@ void GroupDefImpl::sortMemberLists()
{
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))
{
@@ -1650,9 +1650,9 @@ MemberList *GroupDefImpl::getMemberList(MemberListType lt) const
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()==lt)
+ if (ml->listType()==lt)
{
- return const_cast<MemberList*>(&ml);
+ return ml.get();
}
}
return 0;
diff --git a/src/index.cpp b/src/index.cpp
index 7089a0c..e2e5ea1 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -3761,9 +3761,9 @@ static void writeGroupTreeNode(OutputList &ol, const GroupDef *gd, int level, FT
{
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/memberlist.h b/src/memberlist.h
index d2433f4..08e2873 100644
--- a/src/memberlist.h
+++ b/src/memberlist.h
@@ -95,6 +95,8 @@ class MemberList : private QList<MemberDef>
void setAnchors();
private:
+ MemberList(const MemberList &) = delete;
+ MemberList &operator=(const MemberList &) = delete;
int compareValues(const MemberDef *item1,const MemberDef *item2) const;
int countEnumValues(const MemberDef *md) const;
/*
@@ -132,17 +134,17 @@ class MemberLinkedRefMap : public LinkedRefMap<const MemberDef>
{
};
-class MemberLists : public std::vector<MemberList>
+class MemberLists : public std::vector< std::unique_ptr<MemberList> >
{
public:
MemberLists() = default;
- MemberList &get(MemberListType lt)
+ const std::unique_ptr<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; });
+ 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);
+ emplace_back(std::make_unique<MemberList>(lt));
return back();
}
diff --git a/src/namespacedef.cpp b/src/namespacedef.cpp
index f1ac814..d0a88f0 100644
--- a/src/namespacedef.cpp
+++ b/src/namespacedef.cpp
@@ -319,9 +319,9 @@ void NamespaceDefImpl::findSectionsInDocumentation()
}
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ml.findSectionsInDocumentation(this);
+ ml->findSectionsInDocumentation(this);
}
}
}
@@ -384,9 +384,9 @@ void NamespaceDefImpl::addMembersToMemberGroup()
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_declarationLists)
+ if (ml->listType()&MemberListType_declarationLists)
{
- ::addMembersToMemberGroup(&ml,&m_memberGroups,this);
+ ::addMembersToMemberGroup(ml.get(),&m_memberGroups,this);
}
}
@@ -444,8 +444,8 @@ void NamespaceDefImpl::insertMember(MemberDef *md)
MemberList *allMemberList = getMemberList(MemberListType_allMembersList);
if (allMemberList==0)
{
- m_memberLists.emplace_back(MemberListType_allMembersList);
- allMemberList = &m_memberLists.back();
+ m_memberLists.emplace_back(std::make_unique<MemberList>(MemberListType_allMembersList));
+ allMemberList = m_memberLists.back().get();
}
allMemberList->append(md);
//printf("%s::m_allMembersDict->append(%s)\n",name().data(),md->localName().data());
@@ -1050,9 +1050,9 @@ void NamespaceDefImpl::writeMemberPages(OutputList &ol)
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();
@@ -1105,8 +1105,8 @@ void NamespaceDefImpl::countMembers()
{
for (auto &ml : m_memberLists)
{
- ml.countDecMembers();
- ml.countDocMembers();
+ ml->countDecMembers();
+ ml->countDocMembers();
}
for (const auto &mg : m_memberGroups)
{
@@ -1176,9 +1176,9 @@ void NamespaceDefImpl::addListReferences()
}
for (auto &ml : m_memberLists)
{
- if (ml.listType()&MemberListType_documentationLists)
+ if (ml->listType()&MemberListType_documentationLists)
{
- ml.addListReferences(this);
+ ml->addListReferences(this);
}
}
}
@@ -1329,18 +1329,18 @@ 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 = m_memberLists.get(lt);
- ml.setNeedsSorting(
- ((ml.listType()&MemberListType_declarationLists) && sortBriefDocs) ||
- ((ml.listType()&MemberListType_documentationLists) && sortMemberDocs));
- ml.append(md);
+ const auto &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.get());
}
}
}
@@ -1349,7 +1349,7 @@ void NamespaceDefImpl::sortMemberLists()
{
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))
@@ -1381,9 +1381,9 @@ MemberList *NamespaceDefImpl::getMemberList(MemberListType lt) const
{
for (auto &ml : m_memberLists)
{
- if (ml.listType()==lt)
+ if (ml->listType()==lt)
{
- return const_cast<MemberList*>(&ml);
+ return ml.get();
}
}
return 0;
diff --git a/src/sqlite3gen.cpp b/src/sqlite3gen.cpp
index eb5da5e..67adebf 100644
--- a/src/sqlite3gen.cpp
+++ b/src/sqlite3gen.cpp
@@ -2014,9 +2014,9 @@ static void generateSqlite3ForClass(const ClassDef *cd)
// this is just a list of *local* members
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.get(),refid,"user-defined");
}
}
@@ -2071,9 +2071,9 @@ static void generateSqlite3ForNamespace(const NamespaceDef *nd)
// + normal members
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.get(),refid,"user-defined");
}
}
}
@@ -2226,9 +2226,9 @@ static void generateSqlite3ForFile(const FileDef *fd)
// + normal members
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.get(),refid,"user-defined");
}
}
}
@@ -2293,9 +2293,9 @@ static void generateSqlite3ForGroup(const GroupDef *gd)
// + members
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.get(),refid,"user-defined");
}
}
}
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index 1831a98..5a7eabd 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -1363,9 +1363,9 @@ static void generateXMLForClass(const ClassDef *cd,FTextStream &ti)
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.get(),g_xmlSectionMapper.find(ml->listType()));
}
}
@@ -1460,9 +1460,9 @@ static void generateXMLForNamespace(const NamespaceDef *nd,FTextStream &ti)
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.get(),g_xmlSectionMapper.find(ml->listType()));
}
}
@@ -1584,9 +1584,9 @@ static void generateXMLForFile(FileDef *fd,FTextStream &ti)
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.get(),g_xmlSectionMapper.find(ml->listType()));
}
}
@@ -1657,9 +1657,9 @@ static void generateXMLForGroup(const GroupDef *gd,FTextStream &ti)
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.get(),g_xmlSectionMapper.find(ml->listType()));
}
}