summaryrefslogtreecommitdiffstats
path: root/src/classdef.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-11-05 18:49:17 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-11-05 18:49:17 (GMT)
commitb32afdbd35624376000aaf12d09930e311692c53 (patch)
treeb7d34cb2a860b2994ae597c33888042585d91008 /src/classdef.cpp
parentcc4675afcc5f6825b9302fd0915c0c4148f555ab (diff)
downloadDoxygen-b32afdbd35624376000aaf12d09930e311692c53.zip
Doxygen-b32afdbd35624376000aaf12d09930e311692c53.tar.gz
Doxygen-b32afdbd35624376000aaf12d09930e311692c53.tar.bz2
issue #7302: Determination of anonymous is too restrictive
Diffstat (limited to 'src/classdef.cpp')
-rw-r--r--src/classdef.cpp27
1 files changed, 6 insertions, 21 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 7ce6bf1..9c2ab53 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -133,7 +133,6 @@ class ClassDefImpl : public DefinitionImpl, public ClassDef
virtual MemberDef *isSmartPointer() const;
virtual bool isJavaEnum() const;
virtual bool isGeneric() const;
- virtual bool isAnonymous() const;
virtual const ClassSDict *innerClasses() const;
virtual QCString title() const;
virtual QCString generatedFromFiles() const;
@@ -423,8 +422,6 @@ class ClassDefAliasImpl : public DefinitionAliasImpl, public ClassDef
{ return getCdAlias()->isJavaEnum(); }
virtual bool isGeneric() const
{ return getCdAlias()->isGeneric(); }
- virtual bool isAnonymous() const
- { return getCdAlias()->isAnonymous(); }
virtual const ClassSDict *innerClasses() const
{ return getCdAlias()->innerClasses(); }
virtual QCString title() const
@@ -687,8 +684,6 @@ class ClassDefImpl::IMPL
bool isGeneric;
- bool isAnonymous;
-
uint64 spec;
QCString metaData;
@@ -751,7 +746,6 @@ void ClassDefImpl::IMPL::init(const char *defFileName, const char *name,
isLocal=FALSE;
}
isGeneric = (lang==SrcLangExt_CSharp || lang==SrcLangExt_Java) && QCString(name).find('<')!=-1;
- isAnonymous = QCString(name).find('@')!=-1;
}
ClassDefImpl::IMPL::IMPL() : vhdlSummaryTitles(17)
@@ -835,6 +829,10 @@ QCString ClassDefImpl::displayName(bool includeScope) const
n=className();
}
}
+ if (isAnonymous())
+ {
+ n = removeAnonymousScopes(n);
+ }
QCString sep=getLanguageSpecificSeparator(lang);
if (sep!="::")
{
@@ -849,14 +847,7 @@ QCString ClassDefImpl::displayName(bool includeScope) const
// n = n.left(n.length()-2);
//}
//printf("ClassDefImpl::displayName()=%s\n",n.data());
- if (n.find('@')!=-1)
- {
- return removeAnonymousScopes(n);
- }
- else
- {
- return n;
- }
+ return n;
}
// inserts a base/super class in the inheritance list
@@ -3077,7 +3068,7 @@ void ClassDefImpl::writeMemberList(OutputList &ol) const
//printf("%s: Member %s of class %s md->protection()=%d mi->prot=%d prot=%d inherited=%d\n",
// name().data(),md->name().data(),cd->name().data(),md->protection(),mi->prot,prot,mi->inherited);
- if (cd && !md->name().isEmpty() && md->name()[0]!='@')
+ if (cd && !md->name().isEmpty() && !md->isAnonymous())
{
bool memberWritten=FALSE;
if (cd->isLinkable() && md->isLinkable())
@@ -5299,7 +5290,6 @@ bool ClassDefImpl::isSliceLocal() const
void ClassDefImpl::setName(const char *name)
{
- m_impl->isAnonymous = QCString(name).find('@')!=-1;
DefinitionImpl::setName(name);
}
@@ -5308,11 +5298,6 @@ void ClassDefImpl::setMetaData(const char *md)
m_impl->metaData = md;
}
-bool ClassDefImpl::isAnonymous() const
-{
- return m_impl->isAnonymous;
-}
-
QCString ClassDefImpl::collaborationGraphFileName() const
{
return m_impl->collabFileName;