summaryrefslogtreecommitdiffstats
path: root/src/memberdef.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2013-10-27 08:23:08 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2013-11-11 19:20:39 (GMT)
commit31198c214de4f4a8f8935426574e9fa0eb0cf27e (patch)
tree67e39ea38a050f0a14b6d135874cf5813c3da51b /src/memberdef.cpp
parent7cda115a6830bf816a094e37c498e5a50ce1b29c (diff)
downloadDoxygen-31198c214de4f4a8f8935426574e9fa0eb0cf27e.zip
Doxygen-31198c214de4f4a8f8935426574e9fa0eb0cf27e.tar.gz
Doxygen-31198c214de4f4a8f8935426574e9fa0eb0cf27e.tar.bz2
More template and context updates
Diffstat (limited to 'src/memberdef.cpp')
-rw-r--r--src/memberdef.cpp1105
1 files changed, 566 insertions, 539 deletions
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index 9125b0d..10c5b29 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -3,8 +3,8 @@
* Copyright (C) 1997-2013 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.
*
@@ -71,9 +71,9 @@ static QCString addTemplateNames(const QCString &s,const QCString &n,const QCStr
if (s.length()==j || (s.at(j)!='<' && !isId(s.at(j))))
{ // add template names
//printf("Adding %s+%s\n",clRealName.data(),t.data());
- result+=clRealName+t;
+ result+=clRealName+t;
}
- else
+ else
{ // template names already present
//printf("Adding %s\n",clRealName.data());
result+=clRealName;
@@ -116,15 +116,15 @@ static QCString addTemplateNames(const QCString &s,const QCString &n,const QCStr
// --- leave writeDefArgumentList with return value FALSE
// ol.endMemberDocName
// ol.endMemberDoc(hasArgs=FALSE);
-//
+//
static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
const QCString & /*scopeName*/,MemberDef *md)
{
- ArgumentList *defArgList=(md->isDocsForDefinition()) ?
+ ArgumentList *defArgList=(md->isDocsForDefinition()) ?
md->argumentList() : md->declArgumentList();
//printf("writeDefArgumentList `%s' isDocsForDefinition()=%d\n",md->name().data(),md->isDocsForDefinition());
- if (defArgList==0 || md->isProperty())
+ if (defArgList==0 || md->isProperty())
{
return FALSE; // member has no function like argument list
}
@@ -140,7 +140,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
ol.startParameterType(TRUE,0);
ol.endParameterType();
ol.startParameterName(FALSE);
- while (a)
+ while (a)
{
if (a->defval.isEmpty())
{
@@ -167,7 +167,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
if (latexOn) ol.enable(OutputGenerator::Latex);
ol.endMemberDocName();
- ol.startParameterList(!md->isObjCMethod());
+ ol.startParameterList(!md->isObjCMethod());
}
ol.enableAll();
ol.disable(OutputGenerator::Html);
@@ -194,7 +194,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
}
else if (cd->templateArguments())
{
- cName=tempArgListToString(cd->templateArguments());
+ cName=tempArgListToString(cd->templateArguments());
//printf("2. cName=%s\n",cName.data());
}
else // no template specifier
@@ -209,7 +209,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
bool isDefine = md->isDefine();
while (a)
{
- if (isDefine || first)
+ if (isDefine || first)
{
ol.startParameterType(first,0);
paramTypeStarted=TRUE;
@@ -224,7 +224,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
int wp=a->type.find(res);
// use the following to put the function pointer type before the name
- bool hasFuncPtrType=FALSE;
+ bool hasFuncPtrType=FALSE;
if (!a->attrib.isEmpty() && !md->isObjCMethod()) // argument has an IDL attribute
{
@@ -251,7 +251,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
}
if (!isDefine)
{
- if (paramTypeStarted)
+ if (paramTypeStarted)
{
ol.endParameterType();
paramTypeStarted=FALSE;
@@ -260,10 +260,10 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
}
if (hasFuncPtrType)
{
- ol.docify(a->type.mid(wp,vp-wp));
+ ol.docify(a->type.mid(wp,vp-wp));
}
if (!a->name.isEmpty() || (a->name.isEmpty() && a->type=="...")) // argument has a name
- {
+ {
//if (!hasFuncPtrType)
//{
// ol.docify(" ");
@@ -284,7 +284,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
{
ol.docify(a->array);
}
- if (hasFuncPtrType) // write the part of the argument type
+ if (hasFuncPtrType) // write the part of the argument type
// that comes after the name
{
linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),
@@ -297,15 +297,15 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
ol.docify(" = ");
ol.startTypewriter();
- linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,n,FALSE,TRUE,TRUE);
+ linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,n,FALSE,TRUE,TRUE);
ol.endTypewriter();
}
a=defArgList->next();
- if (a)
+ if (a)
{
if (!md->isObjCMethod()) ol.docify(", "); // there are more arguments
- if (!isDefine)
+ if (!isDefine)
{
QCString key;
if (md->isObjCMethod() && a->attrib.length()>=2)
@@ -316,7 +316,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
if (key!=",") key+=":"; // for normal keywords add colon
}
ol.endParameterName(FALSE,FALSE,!md->isObjCMethod());
- if (paramTypeStarted)
+ if (paramTypeStarted)
{
ol.endParameterType();
}
@@ -360,7 +360,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd,
md, // self
defArgList->trailingReturnType, // text
FALSE // autoBreak
- );
+ );
}
return TRUE;
@@ -441,7 +441,7 @@ static void writeTemplatePrefix(OutputList &ol,ArgumentList *al)
{
ol.docify(" = ");
ol.docify(a->defval);
- }
+ }
a=al->next();
if (a) ol.docify(", ");
}
@@ -484,16 +484,16 @@ class MemberDefImpl
const ArgumentList *al
);
- ClassDef *classDef; // member of or related to
- FileDef *fileDef; // member of file definition
+ ClassDef *classDef; // member of or related to
+ FileDef *fileDef; // member of file definition
NamespaceDef *nspace; // the namespace this member is in.
MemberDef *enumScope; // the enclosing scope, if this is an enum field
- bool livesInsideEnum;
+ bool livesInsideEnum;
MemberDef *annEnumType; // the anonymous enum that is the type of this member
MemberList *enumFields; // enumeration fields
- MemberDef *redefines; // the members that this member redefines
+ MemberDef *redefines; // the members that this member redefines
MemberList *redefinedBy; // the list of members that redefine this one
MemberDef *memDef; // member definition for this declaration
@@ -523,7 +523,7 @@ class MemberDefImpl
uint64 memSpec; // The specifiers present for this member
MemberType mtype; // returns the kind of member
- int maxInitLines; // when the initializer will be displayed
+ int maxInitLines; // when the initializer will be displayed
int userInitLines; // result of explicit \hideinitializer or \showinitializer
MemberDef *annMemb;
@@ -533,13 +533,13 @@ class MemberDefImpl
ArgumentList *tArgList; // template argument list of function template
ArgumentList *typeConstraints; // type constraints for template parameters
MemberDef *templateMaster;
- QList<ArgumentList> *defTmpArgLists; // lists of template argument lists
+ QList<ArgumentList> *defTmpArgLists; // lists of template argument lists
// (for template functions in nested template classes)
ClassDef *cachedAnonymousType; // if the member has an anonymous compound
// as its type then this is computed by
- // getClassDefOfAnonymousType() and
- // cached here.
+ // getClassDefOfAnonymousType() and
+ // cached here.
SDict<MemberList> *classSectionSDict; // not accessible
MemberDef *groupAlias; // Member containing the definition
@@ -555,7 +555,7 @@ class MemberDefImpl
ClassDef *cachedTypedefValue;
QCString cachedTypedefTemplSpec;
QCString cachedResolvedType;
-
+
// inbody documentation
//int inbodyLine;
//QCString inbodyFile;
@@ -568,7 +568,7 @@ class MemberDefImpl
QCString explicitOutputFileBase;
// objective-c
- bool implOnly; // function found in implementation but not
+ bool implOnly; // function found in implementation but not
// in the interface
bool hasDocumentedParams;
bool hasDocumentedReturnType;
@@ -578,7 +578,7 @@ class MemberDefImpl
bool proto; // is it a prototype;
bool docEnumValues; // is an enum with documented enum values.
bool annScope; // member is part of an annoymous scope
- bool annUsed;
+ bool annUsed;
bool hasCallGraph;
bool hasCallerGraph;
bool explExt; // member was explicitly declared external
@@ -743,10 +743,10 @@ void MemberDefImpl::init(Definition *def,
* \c Normal, \c Virtual, \c Pure.
* \param s A boolean that is true iff the member is static.
* \param r The relationship between the class and the member.
- * \param mt The kind of member. See #MemberType for a list of
+ * \param mt The kind of member. See #MemberType for a list of
* all types.
* \param tal The template arguments of this member.
- * \param al The arguments of this member. This is a structured form of
+ * \param al The arguments of this member. This is a structured form of
* the string past as argument \a a.
*/
@@ -788,7 +788,7 @@ MemberDef *MemberDef::deepCopy() const
result->m_impl->defTmpArgLists=0;
result->m_impl->classSectionSDict=0;
result->m_impl->declArgList=0;
- // replace pointers owned by the object by deep copies
+ // replace pointers owned by the object by deep copies
if (m_impl->redefinedBy)
{
MemberListIterator mli(*m_impl->redefinedBy);
@@ -861,8 +861,8 @@ void MemberDef::moveTo(Definition *scope)
{
m_impl->nspace = (NamespaceDef*)scope;
}
- m_isLinkableCached = 0;
- m_isConstructorCached = 0;
+ m_isLinkableCached = 0;
+ m_isConstructorCached = 0;
}
@@ -874,8 +874,8 @@ MemberDef::~MemberDef()
m_impl=0;
}
-void MemberDef::setReimplements(MemberDef *md)
-{
+void MemberDef::setReimplements(MemberDef *md)
+{
m_impl->redefines = md;
}
@@ -886,20 +886,20 @@ void MemberDef::insertReimplementedBy(MemberDef *md)
m_impl->templateMaster->insertReimplementedBy(md);
}
if (m_impl->redefinedBy==0) m_impl->redefinedBy = new MemberList(MemberListType_redefinedBy);
- if (m_impl->redefinedBy->findRef(md)==-1)
+ if (m_impl->redefinedBy->findRef(md)==-1)
{
m_impl->redefinedBy->inSort(md);
}
}
-MemberDef *MemberDef::reimplements() const
-{
- return m_impl->redefines;
+MemberDef *MemberDef::reimplements() const
+{
+ return m_impl->redefines;
}
-MemberList *MemberDef::reimplementedBy() const
-{
- return m_impl->redefinedBy;
+MemberList *MemberDef::reimplementedBy() const
+{
+ return m_impl->redefinedBy;
}
bool MemberDef::isReimplementedBy(ClassDef *cd) const
@@ -934,7 +934,7 @@ bool MemberDef::addExample(const char *anchor,const char *nameStr,
{
//printf("%s::addExample(%s,%s,%s)\n",name().data(),anchor,nameStr,file);
if (m_impl->exampleSDict==0) m_impl->exampleSDict = new ExampleSDict;
- if (m_impl->exampleSDict->find(nameStr)==0)
+ if (m_impl->exampleSDict->find(nameStr)==0)
{
//printf("Add reference to example %s to member %s\n",nameStr,name.data());
Example *e=new Example;
@@ -944,12 +944,12 @@ bool MemberDef::addExample(const char *anchor,const char *nameStr,
m_impl->exampleSDict->inSort(nameStr,e);
return TRUE;
}
- return FALSE;
+ return FALSE;
}
bool MemberDef::hasExamples()
{
- if (m_impl->exampleSDict==0)
+ if (m_impl->exampleSDict==0)
return FALSE;
else
return m_impl->exampleSDict->count()>0;
@@ -986,7 +986,7 @@ QCString MemberDef::getOutputFileBase() const
{
baseName=m_impl->fileDef->getOutputFileBase();
}
-
+
if (baseName.isEmpty())
{
warn(getDefFileName(),getDefLine(),
@@ -1048,7 +1048,7 @@ QCString MemberDef::anchor() const
{
result.prepend(m_impl->enumScope->anchor());
}
- if (m_impl->group)
+ if (m_impl->group)
{
if (m_impl->groupMember)
{
@@ -1067,7 +1067,7 @@ void MemberDef::_computeLinkableInProject()
static bool extractStatic = Config_getBool("EXTRACT_STATIC");
m_isLinkableCached = 2; // linkable
//printf("MemberDef::isLinkableInProject(name=%s)\n",name().data());
- if (isHidden())
+ if (isHidden())
{
//printf("is hidden\n");
m_isLinkableCached = 1;
@@ -1079,51 +1079,51 @@ void MemberDef::_computeLinkableInProject()
m_isLinkableCached = m_impl->templateMaster->isLinkableInProject() ? 2 : 1;
return;
}
- if (name().isEmpty() || name().at(0)=='@')
+ if (name().isEmpty() || name().at(0)=='@')
{
//printf("name invalid\n");
m_isLinkableCached = 1; // not a valid or a dummy name
return;
}
- if (!hasDocumentation() && !isReference())
+ if (!hasDocumentation() && !isReference())
{
//printf("no docs or reference\n");
m_isLinkableCached = 1; // no documentation
return;
}
- if (m_impl->group && !m_impl->group->isLinkableInProject())
+ if (m_impl->group && !m_impl->group->isLinkableInProject())
{
//printf("group but group not linkable!\n");
m_isLinkableCached = 1; // group but group not linkable
return;
}
- if (!m_impl->group && m_impl->classDef && !m_impl->classDef->isLinkableInProject())
+ if (!m_impl->group && m_impl->classDef && !m_impl->classDef->isLinkableInProject())
{
//printf("in a class but class not linkable!\n");
m_isLinkableCached = 1; // in class but class not linkable
return;
}
- if (!m_impl->group && m_impl->nspace && !m_impl->related && !m_impl->nspace->isLinkableInProject())
+ if (!m_impl->group && m_impl->nspace && !m_impl->related && !m_impl->nspace->isLinkableInProject())
{
//printf("in a namespace but namespace not linkable!\n");
m_isLinkableCached = 1; // in namespace but namespace not linkable
return;
}
- if (!m_impl->group && !m_impl->nspace &&
- !m_impl->related && !m_impl->classDef &&
- m_impl->fileDef && !m_impl->fileDef->isLinkableInProject())
+ if (!m_impl->group && !m_impl->nspace &&
+ !m_impl->related && !m_impl->classDef &&
+ m_impl->fileDef && !m_impl->fileDef->isLinkableInProject())
{
//printf("in a file but file not linkable!\n");
m_isLinkableCached = 1; // in file (and not in namespace) but file not linkable
return;
}
- if (!protectionLevelVisible(m_impl->prot) && m_impl->mtype!=MemberType_Friend)
+ if (!protectionLevelVisible(m_impl->prot) && m_impl->mtype!=MemberType_Friend)
{
//printf("private and invisible!\n");
m_isLinkableCached = 1; // hidden due to protection
return;
}
- if (m_impl->stat && m_impl->classDef==0 && !extractStatic)
+ if (m_impl->stat && m_impl->classDef==0 && !extractStatic)
{
//printf("static and invisible!\n");
m_isLinkableCached = 1; // hidden due to staticness
@@ -1203,11 +1203,11 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *,NamespaceDef *,
{
n.prepend(m_impl->enumScope->displayName()+sep);
}
- if (m_impl->classDef && gd && !isRelated())
+ if (m_impl->classDef && gd && !isRelated())
{
n.prepend(m_impl->classDef->displayName()+sep);
}
- else if (m_impl->nspace && (gd || fd))
+ else if (m_impl->nspace && (gd || fd))
{
n.prepend(m_impl->nspace->displayName()+sep);
}
@@ -1243,12 +1243,12 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *,NamespaceDef *,
/*! If this member has an anonymous class/struct/union as its type, then
* this method will return the ClassDef that describes this return type.
*/
-ClassDef *MemberDef::getClassDefOfAnonymousType()
+ClassDef *MemberDef::getClassDefOfAnonymousType()
{
if (m_impl->cachedAnonymousType) return m_impl->cachedAnonymousType;
QCString cname;
- if (getClassDef()!=0)
+ if (getClassDef()!=0)
{
cname=getClassDef()->name().copy();
}
@@ -1277,7 +1277,7 @@ ClassDef *MemberDef::getClassDefOfAnonymousType()
QCString annName = ltype.mid(il,ir-il);
// if inside a class or namespace try to prepend the scope name
- if (!cname.isEmpty() && annName.left(cname.length()+2)!=cname+"::")
+ if (!cname.isEmpty() && annName.left(cname.length()+2)!=cname+"::")
{
QCString ts=stripAnonymousNamespaceScope(cname+"::"+annName);
annoClassDef=getClass(ts);
@@ -1292,7 +1292,7 @@ ClassDef *MemberDef::getClassDefOfAnonymousType()
m_impl->cachedAnonymousType = annoClassDef;
return annoClassDef;
}
-
+
/*! This methods returns TRUE iff the brief section (also known as
* declaration section) is visible in the documentation.
*/
@@ -1313,51 +1313,51 @@ bool MemberDef::isBriefSectionVisible() const
MemberGroupInfo *info = Doxygen::memGrpInfoDict[m_impl->grpId];
//printf("name=%s m_impl->grpId=%d info=%p\n",name().data(),m_impl->grpId,info);
//QCString *pMemGrp = Doxygen::memberDocDict[grpId];
- bool hasDocs = hasDocumentation() ||
+ bool hasDocs = hasDocumentation() ||
// part of a documented member group
(m_impl->grpId!=-1 && info && !(info->doc.isEmpty() && info->header.isEmpty()));
- // only include static members with file/namespace scope if
+ // only include static members with file/namespace scope if
// explicitly enabled in the config file
- bool visibleIfStatic = !(getClassDef()==0 &&
- isStatic() &&
+ bool visibleIfStatic = !(getClassDef()==0 &&
+ isStatic() &&
!extractStatic
);
- // only include members is the are documented or
+ // only include members is the are documented or
// HIDE_UNDOC_MEMBERS is NO in the config file
- bool visibleIfDocumented = (!hideUndocMembers ||
- hasDocs ||
+ bool visibleIfDocumented = (!hideUndocMembers ||
+ hasDocs ||
isDocumentedFriendClass()
);
- // hide members with no detailed description and brief descriptions
+ // hide members with no detailed description and brief descriptions
// explicitly disabled.
- bool visibleIfEnabled = !(hideUndocMembers &&
+ bool visibleIfEnabled = !(hideUndocMembers &&
documentation().isEmpty() &&
- !briefMemberDesc &&
+ !briefMemberDesc &&
!repeatBrief
);
// Hide friend (class|struct|union) declarations if HIDE_FRIEND_COMPOUNDS is true
bool visibleIfFriendCompound = !(hideFriendCompounds &&
isFriend() &&
- (m_impl->type=="friend class" ||
+ (m_impl->type=="friend class" ||
m_impl->type=="friend struct" ||
m_impl->type=="friend union"
)
);
-
+
// only include members that are non-private unless EXTRACT_PRIVATE is
// set to YES or the member is part of a group
- bool visibleIfPrivate = (protectionLevelVisible(protection()) ||
+ bool visibleIfPrivate = (protectionLevelVisible(protection()) ||
m_impl->mtype==MemberType_Friend
);
-
+
// hide member if it overrides a member in a superclass and has no
// documentation of its own
- //bool visibleIfDocVirtual = !reimplements() ||
- // !Config_getBool("INHERIT_DOCS") ||
+ //bool visibleIfDocVirtual = !reimplements() ||
+ // !Config_getBool("INHERIT_DOCS") ||
// hasDocs;
// true if this member is a constructor or destructor
@@ -1380,20 +1380,47 @@ bool MemberDef::isBriefSectionVisible() const
// visibleIfStatic,visibleIfDocumented,
// visibleIfEnabled,visibleIfPrivate,visibleIfNotDefaultCDTor,
// visibleIfFriendCompound,!m_impl->annScope);
-
- bool visible = visibleIfStatic && visibleIfDocumented &&
+
+ bool visible = visibleIfStatic && visibleIfDocumented &&
visibleIfEnabled && visibleIfPrivate &&
- /*visibleIfDocVirtual &&*/ visibleIfNotDefaultCDTor &&
- visibleIfFriendCompound &&
+ /*visibleIfDocVirtual &&*/ visibleIfNotDefaultCDTor &&
+ visibleIfFriendCompound &&
!m_impl->annScope && !isHidden();
//printf("MemberDef::isBriefSectionVisible() %d\n",visible);
return visible;
}
+QCString MemberDef::getDeclType() const
+{
+ QCString ltype(m_impl->type);
+ if (m_impl->mtype==MemberType_Typedef)
+ {
+ ltype.prepend("typedef ");
+ }
+ if (isAlias())
+ {
+ ltype="using";
+ }
+ // strip `friend' keyword from ltype
+ ltype.stripPrefix("friend ");
+ if (ltype=="@") // rename type from enum values
+ {
+ ltype="";
+ }
+ else
+ {
+ if (isObjCMethod())
+ {
+ ltype.prepend("(");
+ ltype.append(")");
+ }
+ }
+ return ltype;
+}
void MemberDef::writeDeclaration(OutputList &ol,
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
- bool inGroup, const DefType compoundType,
+ bool inGroup, const DefType compoundType,
ClassDef *inheritedFrom,const char *inheritId)
{
//printf("%s MemberDef::writeDeclaration() inGroup=%d\n",qualifiedName().data(),inGroup);
@@ -1431,7 +1458,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
// start a new member declaration
bool isAnonymous = annoClassDef || m_impl->annMemb || m_impl->annEnumType;
///printf("startMemberItem for %s\n",name().data());
- ol.startMemberItem(anchor(),
+ ol.startMemberItem(anchor(),
isAnonymous ? 1 : m_impl->tArgList ? 3 : 0,
inheritId
);
@@ -1441,7 +1468,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
if (!detailsVisible && !m_impl->annMemb)
{
QCString doxyName=name().copy();
- if (!cname.isEmpty())
+ if (!cname.isEmpty())
{
doxyName.prepend(cdname+getLanguageSpecificSeparator(getLanguage()));
}
@@ -1458,7 +1485,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
if (annoClassDef || m_impl->annMemb)
{
int j;
- for (j=0;j<s_indentLevel;j++)
+ for (j=0;j<s_indentLevel;j++)
{
ol.writeNonBreakableSpace(3);
}
@@ -1499,16 +1526,16 @@ void MemberDef::writeDeclaration(OutputList &ol,
//printf(">>>>>>>>>>>>>> startMemberItem(2)\n");
ol.startMemberItem(anchor(),2,inheritId);
int j;
- for (j=0;j< s_indentLevel-1;j++)
+ for (j=0;j< s_indentLevel-1;j++)
{
ol.writeNonBreakableSpace(3);
}
QCString varName=ltype.right(ltype.length()-ir).stripWhiteSpace();
//printf(">>>>>> indDepth=%d ltype=`%s' varName=`%s'\n",indDepth,ltype.data(),varName.data());
ol.docify("}");
- if (varName.isEmpty() && (name().isEmpty() || name().at(0)=='@'))
+ if (varName.isEmpty() && (name().isEmpty() || name().at(0)=='@'))
{
- ol.docify(";");
+ ol.docify(";");
}
endAnonScopeNeeded=TRUE;
}
@@ -1522,10 +1549,10 @@ void MemberDef::writeDeclaration(OutputList &ol,
this, // self
ltype.left(i), // text
TRUE // autoBreak
- );
+ );
getAnonymousEnumType()->writeEnumDeclaration(ol,cd,nd,fd,gd,compoundType);
//ol+=*getAnonymousEnumType()->enumDecl();
- linkifyText(TextGeneratorOLImpl(ol),d,m_impl->fileDef,this,ltype.right(ltype.length()-i-l),TRUE);
+ linkifyText(TextGeneratorOLImpl(ol),d,m_impl->fileDef,this,ltype.right(ltype.length()-i-l),TRUE);
}
else
{
@@ -1536,7 +1563,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
this, // self
ltype, // text
TRUE // autoBreak
- );
+ );
}
}
}
@@ -1565,12 +1592,12 @@ void MemberDef::writeDeclaration(OutputList &ol,
ol.disable(OutputGenerator::Html);
}
if (!ltype.isEmpty()) ol.docify(" ");
- if (htmlOn)
+ if (htmlOn)
{
ol.enable(OutputGenerator::Html);
}
- if (m_impl->annMemb)
+ if (m_impl->annMemb)
{
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
@@ -1583,7 +1610,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
}
// *** write name
- if (!name().isEmpty() && name().at(0)!='@') // hide anonymous stuff
+ if (!name().isEmpty() && name().at(0)!='@') // hide anonymous stuff
{
//printf("Member name=`%s gd=%p md->groupDef=%p inGroup=%d isLinkable()=%d\n",name().data(),gd,getGroupDef(),inGroup,isLinkable());
if (!(name().isEmpty() || name().at(0)=='@') && // name valid
@@ -1608,27 +1635,27 @@ void MemberDef::writeDeclaration(OutputList &ol,
{
//printf("writeLink %s->%d\n",name.data(),hasDocumentation());
ClassDef *rcd = cd;
- if (isReference() && m_impl->classDef) rcd = m_impl->classDef;
+ if (isReference() && m_impl->classDef) rcd = m_impl->classDef;
writeLink(ol,rcd,nd,fd,gd);
}
}
else if (isDocumentedFriendClass())
- // if the member is an undocumented friend declaration for some class,
+ // if the member is an undocumented friend declaration for some class,
// then maybe we can link to the class
{
writeLink(ol,getClass(name()),0,0,0);
}
else
- // there is a brief member description and brief member
+ // there is a brief member description and brief member
// descriptions are enabled or there is no detailed description.
{
- if (m_impl->annMemb)
+ if (m_impl->annMemb)
{
m_impl->annMemb->setAnonymousUsed();
setAnonymousUsed();
}
ClassDef *rcd = cd;
- if (isReference() && m_impl->classDef) rcd = m_impl->classDef;
+ if (isReference() && m_impl->classDef) rcd = m_impl->classDef;
writeLink(ol,rcd,nd,fd,gd,TRUE);
}
}
@@ -1654,7 +1681,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
}
// *** write arguments
- if (argsString() && !isObjCMethod())
+ if (argsString() && !isObjCMethod())
{
if (!isDefine()) ol.writeString(" ");
linkifyText(TextGeneratorOLImpl(ol), // out
@@ -1678,20 +1705,20 @@ void MemberDef::writeDeclaration(OutputList &ol,
// *** write bitfields
if (!m_impl->bitfields.isEmpty()) // add bitfields
{
- linkifyText(TextGeneratorOLImpl(ol),d,getBodyDef(),this,m_impl->bitfields.simplifyWhiteSpace());
+ linkifyText(TextGeneratorOLImpl(ol),d,getBodyDef(),this,m_impl->bitfields);
}
else if (hasOneLineInitializer()
//!init.isEmpty() && initLines==0 && // one line initializer
//((maxInitLines>0 && userInitLines==-1) || userInitLines>0) // enabled by default or explicitly
) // add initializer
{
- if (!isDefine())
+ if (!isDefine())
{
- //ol.writeString(" = ");
- ol.writeString(" ");
+ //ol.writeString(" = ");
+ ol.writeString(" ");
linkifyText(TextGeneratorOLImpl(ol),d,getBodyDef(),this,m_impl->initializer.simplifyWhiteSpace());
}
- else
+ else
{
ol.writeNonBreakableSpace(3);
linkifyText(TextGeneratorOLImpl(ol),d,getBodyDef(),this,m_impl->initializer);
@@ -1699,7 +1726,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
}
else if (isAlias()) // using template alias
{
- ol.writeString(" = ");
+ ol.writeString(" = ");
linkifyText(TextGeneratorOLImpl(ol),d,getBodyDef(),this,m_impl->type);
}
@@ -1758,14 +1785,14 @@ void MemberDef::writeDeclaration(OutputList &ol,
//printf("endMember %s annoClassDef=%p annEnumType=%p\n",
// name().data(),annoClassDef,annEnumType);
ol.endMemberItem();
- if (endAnonScopeNeeded)
+ if (endAnonScopeNeeded)
{
ol.endAnonTypeScope(--s_indentLevel);
}
// write brief description
- if (!briefDescription().isEmpty() &&
- Config_getBool("BRIEF_MEMBER_DESC")
+ if (!briefDescription().isEmpty() &&
+ Config_getBool("BRIEF_MEMBER_DESC")
/* && !annMemb */
)
{
@@ -1777,7 +1804,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
{
ol.startMemberDescription(anchor(),inheritId);
ol.writeDoc(rootNode,getOuterScope()?getOuterScope():d,this);
- if (detailsVisible)
+ if (detailsVisible)
{
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
@@ -1812,8 +1839,8 @@ void MemberDef::writeDeclaration(OutputList &ol,
warnIfUndocumented();
}
-bool MemberDef::isDetailedSectionLinkable() const
-{
+bool MemberDef::isDetailedSectionLinkable() const
+{
static bool extractAll = Config_getBool("EXTRACT_ALL");
static bool alwaysDetailedSec = Config_getBool("ALWAYS_DETAILED_SEC");
static bool repeatBrief = Config_getBool("REPEAT_BRIEF");
@@ -1822,27 +1849,27 @@ bool MemberDef::isDetailedSectionLinkable() const
static bool extractStatic = Config_getBool("EXTRACT_STATIC");
// the member has details documentation for any of the following reasons
- bool docFilter =
+ bool docFilter =
// treat everything as documented
- extractAll ||
+ extractAll ||
// has detailed docs
- !documentation().isEmpty() ||
+ !documentation().isEmpty() ||
// has inbody docs
!inbodyDocumentation().isEmpty() ||
// is an enum with values that are documented
- (m_impl->mtype==MemberType_Enumeration && m_impl->docEnumValues) ||
+ (m_impl->mtype==MemberType_Enumeration && m_impl->docEnumValues) ||
// is documented enum value
- (m_impl->mtype==MemberType_EnumValue && !briefDescription().isEmpty()) ||
+ (m_impl->mtype==MemberType_EnumValue && !briefDescription().isEmpty()) ||
// has brief description that is part of the detailed description
(!briefDescription().isEmpty() && // has brief docs
(alwaysDetailedSec && // they are visible in
(repeatBrief || // detailed section or
!briefMemberDesc // they are explicitly not
) // shown in brief section
- )
+ )
) ||
// has a multi-line initialization block
- //(initLines>0 && initLines<maxInitLines) ||
+ //(initLines>0 && initLines<maxInitLines) ||
(hasMultiLineInitializer() && !hideUndocMembers) ||
// has one or more documented arguments
(m_impl->defArgList!=0 && m_impl->defArgList->hasDocumentation()) ||
@@ -1850,11 +1877,11 @@ bool MemberDef::isDetailedSectionLinkable() const
(m_impl->memSpec & (Entry::Attribute|Entry::Property)) ||
// has user comments
Doxygen::userComments
- ;
-
+ ;
+
// this is not a global static or global statics should be extracted
- bool staticFilter = getClassDef()!=0 || !isStatic() || extractStatic;
-
+ bool staticFilter = getClassDef()!=0 || !isStatic() || extractStatic;
+
// only include members that are non-private unless EXTRACT_PRIVATE is
// set to YES or the member is part of a group
bool privateFilter = protectionLevelVisible(protection()) || m_impl->mtype==MemberType_Friend;
@@ -1868,29 +1895,29 @@ bool MemberDef::isDetailedSectionLinkable() const
// is true
bool friendCompoundFilter = !(Config_getBool("HIDE_FRIEND_COMPOUNDS") &&
isFriend() &&
- (m_impl->type=="friend class" ||
+ (m_impl->type=="friend class" ||
m_impl->type=="friend struct" ||
m_impl->type=="friend union"
)
);
-
-
+
+
bool result = ((docFilter && staticFilter && privateFilter && friendCompoundFilter && !isHidden()));
//printf("%s::isDetailedSectionLinkable: %d\n",name().data(),result);
return result;
}
-bool MemberDef::isDetailedSectionVisible(bool inGroup,bool inFile) const
-{
+bool MemberDef::isDetailedSectionVisible(bool inGroup,bool inFile) const
+{
static bool separateMemPages = Config_getBool("SEPARATE_MEMBER_PAGES");
static bool inlineSimpleStructs = Config_getBool("INLINE_SIMPLE_STRUCTS");
static bool hideUndocMembers = Config_getBool("HIDE_UNDOC_MEMBERS");
- bool groupFilter = getGroupDef()==0 || inGroup || separateMemPages;
+ bool groupFilter = getGroupDef()==0 || inGroup || separateMemPages;
bool fileFilter = getNamespaceDef()==0 || !inFile;
- bool simpleFilter = !hideUndocMembers && inlineSimpleStructs &&
+ bool simpleFilter = !hideUndocMembers && inlineSimpleStructs &&
getClassDef()!=0 && getClassDef()->isSimple();
- bool visible = isDetailedSectionLinkable() && groupFilter && fileFilter &&
+ bool visible = isDetailedSectionLinkable() && groupFilter && fileFilter &&
!isReference();
bool result = visible || simpleFilter;
//printf("%s::isDetailedSectionVisble: %d groupFilter=%d fileFilter=%d\n",
@@ -1905,12 +1932,12 @@ void MemberDef::_getLabels(QStrList &sl,Definition *container) const
Specifier lvirt=virtualness();
if ((!isObjCMethod() || isOptional() || isRequired()) &&
(protection()!=Public || lvirt!=Normal ||
- isFriend() || isRelated() ||
+ isFriend() || isRelated() ||
(isInline() && inlineInfo) ||
isSignal() || isSlot() ||
- isStatic() ||
+ isStatic() ||
(m_impl->classDef && m_impl->classDef!=container && container->definitionType()==TypeClass) ||
- (m_impl->memSpec & ~Entry::Inline)!=0
+ (m_impl->memSpec & ~Entry::Inline)!=0
)
)
{
@@ -1991,11 +2018,11 @@ void MemberDef::_getLabels(QStrList &sl,Definition *container) const
sl.append("implementation");
}
}
- if (m_impl->classDef &&
- container->definitionType()==TypeClass &&
+ if (m_impl->classDef &&
+ container->definitionType()==TypeClass &&
m_impl->classDef!=container &&
!isRelated()
- )
+ )
{
sl.append("inherited");
}
@@ -2010,7 +2037,7 @@ void MemberDef::_getLabels(QStrList &sl,Definition *container) const
void MemberDef::_writeCallGraph(OutputList &ol)
{
// write call graph
- if ((m_impl->hasCallGraph || Config_getBool("CALL_GRAPH"))
+ if ((m_impl->hasCallGraph || Config_getBool("CALL_GRAPH"))
&& (isFunction() || isSlot() || isSignal()) && Config_getBool("HAVE_DOT")
)
{
@@ -2027,7 +2054,7 @@ void MemberDef::_writeCallGraph(OutputList &ol)
ol.startCallGraph();
ol.parseText(theTranslator->trCallGraph());
ol.endCallGraph(callGraph);
- ol.endParagraph();
+ ol.endParagraph();
ol.enableAll();
}
}
@@ -2035,7 +2062,7 @@ void MemberDef::_writeCallGraph(OutputList &ol)
void MemberDef::_writeCallerGraph(OutputList &ol)
{
- if ((m_impl->hasCallerGraph || Config_getBool("CALLER_GRAPH"))
+ if ((m_impl->hasCallerGraph || Config_getBool("CALLER_GRAPH"))
&& (isFunction() || isSlot() || isSignal()) && Config_getBool("HAVE_DOT")
)
{
@@ -2068,7 +2095,7 @@ void MemberDef::_writeReimplements(OutputList &ol)
if (bcd->isLinkable())
{
ol.startParagraph();
- QCString reimplFromLine;
+ QCString reimplFromLine;
if (bmd->virtualness()!=Pure && bcd->compoundType()!=ClassDef::Interface)
{
reimplFromLine = theTranslator->trReimplementedFromList(1);
@@ -2090,7 +2117,7 @@ void MemberDef::_writeReimplements(OutputList &ol)
//ol.writeObjectLink(bcd->getReference(),bcd->getOutputFileBase(),
// bmd->anchor(),bcd->name());
- if ( bmd->isLinkableInProject() )
+ if ( bmd->isLinkableInProject() )
{
writePageRef(ol,bmd->getOutputFileBase(),bmd->anchor());
}
@@ -2130,7 +2157,7 @@ void MemberDef::_writeReimplementedBy(OutputList &ol)
{
// count the members that directly inherit from md and for
// which the member and class are visible in the docs.
- if ( bmd->isLinkable() && bcd->isLinkable() )
+ if ( bmd->isLinkable() && bcd->isLinkable() )
{
count++;
}
@@ -2164,7 +2191,7 @@ void MemberDef::_writeReimplementedBy(OutputList &ol)
// find the entryIndex-th documented entry in the inheritance list.
for (mli.toLast();(bmd=mli.current()) && (bcd=bmd->getClassDef());--mli)
{
- if ( bmd->isLinkable() && bcd->isLinkable())
+ if ( bmd->isLinkable() && bcd->isLinkable())
{
if (count==entryIndex) break;
count++;
@@ -2178,14 +2205,14 @@ void MemberDef::_writeReimplementedBy(OutputList &ol)
ol.writeObjectLink(bmd->getReference(),bmd->getOutputFileBase(),
bmd->anchor(),bcd->displayName());
- if (bmd->isLinkableInProject() )
+ if (bmd->isLinkableInProject() )
{
writePageRef(ol,bmd->getOutputFileBase(),bmd->anchor());
}
}
++mli;
index=newIndex+matchLen;
- }
+ }
ol.parseText(reimplInLine.right(reimplInLine.length()-index));
ol.endParagraph();
}
@@ -2213,7 +2240,7 @@ void MemberDef::_writeCategoryRelation(OutputList &ol)
{
if (m_impl->category)
{
- // this member is in a normal class and implements method categoryRelation from category
+ // this member is in a normal class and implements method categoryRelation from category
// so link to method 'categoryRelation' with 'provided by category 'category' text.
text = theTranslator->trProvidedByCategory();
name = m_impl->category->displayName();
@@ -2322,19 +2349,19 @@ void MemberDef::_writeEnumValues(OutputList &ol,Definition *container,
bool hasDetails = !fmd->documentation().isEmpty();
if (hasBrief)
- {
+ {
ol.generateDoc(fmd->briefFile(),fmd->briefLine(),
getOuterScope()?getOuterScope():container,
fmd,fmd->briefDescription(),TRUE,FALSE);
}
// FIXME:PARA
- //if (!fmd->briefDescription().isEmpty() &&
+ //if (!fmd->briefDescription().isEmpty() &&
// !fmd->documentation().isEmpty())
//{
// ol.newParagraph();
//}
if (hasDetails)
- {
+ {
ol.generateDoc(fmd->docFile(),fmd->docLine(),
getOuterScope()?getOuterScope():container,
fmd,fmd->documentation()+"\n",TRUE,FALSE);
@@ -2344,13 +2371,13 @@ void MemberDef::_writeEnumValues(OutputList &ol,Definition *container,
fmd=fmdl->next();
}
}
- if (!first)
- {
- //ol.endItemList();
+ if (!first)
+ {
+ //ol.endItemList();
ol.endDescTable();
//ol.endDescForItem();
//ol.endSimpleSect();
- //ol.writeChar('\n');
+ //ol.writeChar('\n');
}
}
}
@@ -2415,7 +2442,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
QCString ldef = definition();
QCString title = name();
//printf("member `%s' def=`%s'\n",name().data(),ldef.data());
- if (isEnumerate())
+ if (isEnumerate())
{
if (title.at(0)=='@')
{
@@ -2463,7 +2490,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
linkifyText(TextGeneratorOLImpl(ol),container,getBodyDef(),this,ldef.left(i));
vmd->writeEnumDeclaration(ol,getClassDef(),getNamespaceDef(),getFileDef(),getGroupDef(),definitionType());
linkifyText(TextGeneratorOLImpl(ol),container,getBodyDef(),this,ldef.right(ldef.length()-i-l));
-
+
found=TRUE;
}
}
@@ -2475,7 +2502,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
// search for the last anonymous compound name in the definition
int si=ldef.find(' '),pi,ei=i+l;
if (si==-1) si=0;
- while ((pi=r.match(ldef,i+l,&l))!=-1)
+ while ((pi=r.match(ldef,i+l,&l))!=-1)
{
i=pi;
ei=i+l;
@@ -2500,7 +2527,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
{
bool first=TRUE;
SrcLangExt lang = getLanguage();
- if (m_impl->defTmpArgLists && lang==SrcLangExt_Cpp)
+ if (m_impl->defTmpArgLists && lang==SrcLangExt_Cpp)
// definition has explicit template parameter declarations
{
QListIterator<ArgumentList> ali(*m_impl->defTmpArgLists);
@@ -2563,7 +2590,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
{
// strip scope name
int ep = ldef.find("::");
- if (ep!=-1)
+ if (ep!=-1)
{
int sp=ldef.findRev(' ',ep);
if (sp!=-1)
@@ -2609,14 +2636,14 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
if (hasOneLineInitializer()) // add initializer
{
- if (!isDefine())
+ if (!isDefine())
{
- //ol.docify(" = ");
- ol.docify(" ");
+ //ol.docify(" = ");
+ ol.docify(" ");
QCString init = m_impl->initializer.simplifyWhiteSpace();
linkifyText(TextGeneratorOLImpl(ol),container,getBodyDef(),this,init);
}
- else
+ else
{
ol.writeNonBreakableSpace(3);
linkifyText(TextGeneratorOLImpl(ol),container,getBodyDef(),this,m_impl->initializer);
@@ -2645,7 +2672,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
}
ol.popGeneratorState();
- if (hasParameterList)
+ if (hasParameterList)
{
ol.endParameterList();
ol.endMemberDoc(TRUE);
@@ -2717,12 +2744,12 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
}
/* write brief description */
- if (!brief.isEmpty() &&
- (Config_getBool("REPEAT_BRIEF") ||
+ if (!brief.isEmpty() &&
+ (Config_getBool("REPEAT_BRIEF") ||
!Config_getBool("BRIEF_MEMBER_DESC")
- )
- )
- {
+ )
+ )
+ {
ol.startParagraph();
ol.generateDoc(briefFile(),briefLine(),
getOuterScope()?getOuterScope():container,this,
@@ -2731,11 +2758,11 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
}
/* write detailed description */
- if (!detailed.isEmpty() ||
+ if (!detailed.isEmpty() ||
!inbodyDocumentation().isEmpty())
- {
+ {
// write vhdl inline code with or without option INLINE_SOURCE
- if (optVhdl && VhdlDocGen::isMisc(this))
+ if (optVhdl && VhdlDocGen::isMisc(this))
{
VhdlDocGen::writeSource(this,ol,cname);
return;
@@ -2744,7 +2771,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
{
ol.generateDoc(docFile(),docLine(),getOuterScope()?getOuterScope():container,this,detailed+"\n",TRUE,FALSE);
}
-
+
if (!inbodyDocumentation().isEmpty())
{
ol.generateDoc(inbodyFile(),inbodyLine(),
@@ -2763,7 +2790,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
//printf("***** defArgList=%p name=%s docs=%s hasDocs=%d\n",
- // defArgList,
+ // defArgList,
// defArgList?defArgList->hasDocumentation():-1);
if (docArgList!=0 && docArgList->hasDocumentation())
{
@@ -2818,7 +2845,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
ol.endIndent();
// enable LaTeX again
- //if (Config_getBool("EXTRACT_ALL") && !hasDocs) ol.enable(OutputGenerator::Latex);
+ //if (Config_getBool("EXTRACT_ALL") && !hasDocs) ol.enable(OutputGenerator::Latex);
ol.popGeneratorState();
//------------------------------------------------
@@ -2864,7 +2891,7 @@ static QCString simplifyTypeForTable(const QCString &s)
}
#if 0
-/** Returns the type definition corresponding to a member's return type.
+/** Returns the type definition corresponding to a member's return type.
* @param[in] scope The scope in which to search for the class definition.
* @param[in] type The string representing the member's return type.
* @param[in] lang The programming language in which the class is defined.
@@ -2887,7 +2914,7 @@ static Definition *getClassFromType(Definition *scope,const QCString &type,SrcLa
cd = getResolvedClass(scope,0,name+templSpec,&md);
}
cd = getResolvedClass(scope,0,name);
- if (cd)
+ if (cd)
{
start=i;
length=l;
@@ -2965,20 +2992,20 @@ void MemberDef::writeMemberDocSimple(OutputList &ol, Definition *container)
this, // self
ts, // text
TRUE // autoBreak
- );
+ );
}
ol.endDoxyAnchor(cfname,memAnchor);
ol.endInlineMemberType();
ol.startInlineMemberName();
ol.docify(doxyName);
- if (isVariable() && argsString() && !isObjCMethod())
+ if (isVariable() && argsString() && !isObjCMethod())
{
linkifyText(TextGeneratorOLImpl(ol),getOuterScope(),getBodyDef(),this,argsString());
}
if (!m_impl->bitfields.isEmpty()) // add bitfields
{
- linkifyText(TextGeneratorOLImpl(ol),getOuterScope(),getBodyDef(),this,m_impl->bitfields.simplifyWhiteSpace());
+ linkifyText(TextGeneratorOLImpl(ol),getOuterScope(),getBodyDef(),this,m_impl->bitfields);
}
ol.endInlineMemberName();
@@ -2988,8 +3015,8 @@ void MemberDef::writeMemberDocSimple(OutputList &ol, Definition *container)
QCString detailed = documentation();
/* write brief description */
- if (!brief.isEmpty())
- {
+ if (!brief.isEmpty())
+ {
ol.generateDoc(briefFile(),briefLine(),
getOuterScope()?getOuterScope():container,this,
brief,FALSE,FALSE,0,TRUE,FALSE);
@@ -2997,11 +3024,11 @@ void MemberDef::writeMemberDocSimple(OutputList &ol, Definition *container)
/* write detailed description */
if (!detailed.isEmpty())
- {
+ {
ol.generateDoc(docFile(),docLine(),
getOuterScope()?getOuterScope():container,this,
detailed+"\n",FALSE,FALSE,0,FALSE,FALSE);
-
+
}
ol.endInlineMemberDoc();
@@ -3015,7 +3042,7 @@ QCString MemberDef::memberTypeName() const
case MemberType_Function: return "function";
case MemberType_Variable: return "variable";
case MemberType_Typedef: return "typedef";
- case MemberType_Enumeration: return "enumeration";
+ case MemberType_Enumeration: return "enumeration";
case MemberType_EnumValue: return "enumvalue";
case MemberType_Signal: return "signal";
case MemberType_Slot: return "slot";
@@ -3038,10 +3065,10 @@ void MemberDef::warnIfUndocumented()
GroupDef *gd = getGroupDef();
Definition *d=0;
const char *t=0;
- if (cd)
- t="class", d=cd;
- else if (nd)
- t="namespace", d=nd;
+ if (cd)
+ t="class", d=cd;
+ else if (nd)
+ t="namespace", d=nd;
else if (gd)
t="group", d=gd;
else
@@ -3053,7 +3080,7 @@ void MemberDef::warnIfUndocumented()
// d->isLinkable(),isLinkable(),isDocumentedFriendClass(),
// name().data(),prot);
if ((!hasUserDocumentation() && !extractAll) &&
- !isFriendClass() &&
+ !isFriendClass() &&
name().find('@')==-1 && d && d->name().find('@')==-1 &&
protectionLevelVisible(m_impl->prot) &&
!isReference()
@@ -3068,8 +3095,8 @@ void MemberDef::warnIfUndocumented()
bool MemberDef::isFriendClass() const
{
- return (isFriend() &&
- (m_impl->type=="friend class" || m_impl->type=="friend struct" ||
+ return (isFriend() &&
+ (m_impl->type=="friend class" || m_impl->type=="friend struct" ||
m_impl->type=="friend union"));
}
@@ -3080,12 +3107,12 @@ bool MemberDef::isDocumentedFriendClass() const
int i=baseName.find('<');
if (i!=-1) baseName=baseName.left(i);
return (isFriendClass() &&
- (fcd=getClass(baseName)) && fcd->isLinkable());
+ (fcd=getClass(baseName)) && fcd->isLinkable());
}
bool MemberDef::hasDocumentation() const
-{
- return Definition::hasDocumentation() ||
+{
+ return Definition::hasDocumentation() ||
(m_impl->mtype==MemberType_Enumeration && m_impl->docEnumValues) || // has enum values
(m_impl->defArgList!=0 && m_impl->defArgList->hasDocumentation()); // has doc arguments
}
@@ -3104,10 +3131,10 @@ void MemberDef::setMemberGroup(MemberGroup *grp)
m_impl->memberGroup = grp;
}
-bool MemberDef::visibleMemberGroup(bool hideNoHeader)
-{
- return m_impl->memberGroup!=0 &&
- (!hideNoHeader || m_impl->memberGroup->header()!="[NOHEADER]");
+bool MemberDef::visibleMemberGroup(bool hideNoHeader)
+{
+ return m_impl->memberGroup!=0 &&
+ (!hideNoHeader || m_impl->memberGroup->header()!="[NOHEADER]");
}
QCString MemberDef::getScopeString() const
@@ -3152,17 +3179,17 @@ void MemberDef::setAnchor()
// twice, which is silly, but we keep it this way for backward
// compatibility.
- // include number of template arguments as well,
+ // include number of template arguments as well,
// to distinguish between two template
// specializations that only differ in the template parameters.
- if (m_impl->tArgList)
+ if (m_impl->tArgList)
{
char buf[20];
qsnprintf(buf,20,"%d:",m_impl->tArgList->count());
buf[19]='\0';
memAnchor.prepend(buf);
}
-
+
// convert to md5 hash
uchar md5_sig[16];
QCString sigStr(33);
@@ -3183,12 +3210,12 @@ void MemberDef::setGroupDef(GroupDef *gd,Grouping::GroupPri_t pri,
m_impl->groupStartLine=startLine;
m_impl->groupHasDocs=hasDocs;
m_impl->groupMember=member;
- m_isLinkableCached = 0;
+ m_isLinkableCached = 0;
}
-void MemberDef::setEnumScope(MemberDef *md,bool livesInsideEnum)
-{
- m_impl->enumScope=md;
+void MemberDef::setEnumScope(MemberDef *md,bool livesInsideEnum)
+{
+ m_impl->enumScope=md;
m_impl->livesInsideEnum=livesInsideEnum;
if (md->getGroupDef())
{
@@ -3197,22 +3224,22 @@ void MemberDef::setEnumScope(MemberDef *md,bool livesInsideEnum)
m_impl->groupFileName=md->getGroupFileName();
m_impl->groupStartLine=md->getGroupStartLine();
m_impl->groupHasDocs=md->getGroupHasDocs();
- m_isLinkableCached = 0;
+ m_isLinkableCached = 0;
}
}
-void MemberDef::setMemberClass(ClassDef *cd)
-{
- m_impl->classDef=cd;
- m_isLinkableCached = 0;
- m_isConstructorCached = 0;
- setOuterScope(cd);
+void MemberDef::setMemberClass(ClassDef *cd)
+{
+ m_impl->classDef=cd;
+ m_isLinkableCached = 0;
+ m_isConstructorCached = 0;
+ setOuterScope(cd);
}
-void MemberDef::setNamespace(NamespaceDef *nd)
-{
- m_impl->nspace=nd;
- setOuterScope(nd);
+void MemberDef::setNamespace(NamespaceDef *nd)
+{
+ m_impl->nspace=nd;
+ setOuterScope(nd);
}
MemberDef *MemberDef::createTemplateInstanceMember(
@@ -3231,7 +3258,7 @@ MemberDef *MemberDef::createTemplateInstanceMember(
{
arg->type = substituteTemplateArgumentsInString(arg->type,formalArgs,actualArgs);
}
- actualArgList->trailingReturnType =
+ actualArgList->trailingReturnType =
substituteTemplateArgumentsInString(actualArgList->trailingReturnType,formalArgs,actualArgs);
}
@@ -3243,9 +3270,9 @@ MemberDef *MemberDef::createTemplateInstanceMember(
MemberDef *imd = new MemberDef(
getDefFileName(),getDefLine(),getDefColumn(),
- substituteTemplateArgumentsInString(m_impl->type,formalArgs,actualArgs),
- methodName,
- substituteTemplateArgumentsInString(m_impl->args,formalArgs,actualArgs),
+ substituteTemplateArgumentsInString(m_impl->type,formalArgs,actualArgs),
+ methodName,
+ substituteTemplateArgumentsInString(m_impl->args,formalArgs,actualArgs),
m_impl->exception, m_impl->prot,
m_impl->virt, m_impl->stat, m_impl->related, m_impl->mtype, 0, 0
);
@@ -3257,7 +3284,7 @@ MemberDef *MemberDef::createTemplateInstanceMember(
// TODO: init other member variables (if needed).
// TODO: reimplemented info
- return imd;
+ return imd;
}
bool MemberDef::hasOneLineInitializer() const
@@ -3273,15 +3300,15 @@ bool MemberDef::hasMultiLineInitializer() const
{
//printf("initLines=%d userInitLines=%d maxInitLines=%d\n",
// initLines,userInitLines,maxInitLines);
- return m_impl->initLines>0 &&
+ return m_impl->initLines>0 &&
((m_impl->initLines<m_impl->maxInitLines && m_impl->userInitLines==-1) // implicitly enabled
|| m_impl->initLines<m_impl->userInitLines // explicitly enabled
);
}
-void MemberDef::setInitializer(const char *initializer)
-{
- m_impl->initializer=initializer;
+void MemberDef::setInitializer(const char *initializer)
+{
+ m_impl->initializer=initializer;
int l=m_impl->initializer.length();
int p=l-1;
while (p>=0 && isspace((uchar)m_impl->initializer.at(p))) p--;
@@ -3295,12 +3322,12 @@ void MemberDef::addListReference(Definition *)
static bool optimizeOutputForC = Config_getBool("OPTIMIZE_OUTPUT_FOR_C");
//static bool hideScopeNames = Config_getBool("HIDE_SCOPE_NAMES");
//static bool optimizeOutputJava = Config_getBool("OPTIMIZE_OUTPUT_JAVA");
- //static bool fortranOpt = Config_getBool("OPTIMIZE_FOR_FORTRAN");
+ //static bool fortranOpt = Config_getBool("OPTIMIZE_FOR_FORTRAN");
SrcLangExt lang = getLanguage();
visited=TRUE;
if (!isLinkableInProject()) return;
QCString memLabel;
- if (optimizeOutputForC)
+ if (optimizeOutputForC)
{
memLabel=theTranslator->trGlobal(TRUE,TRUE);
}
@@ -3314,11 +3341,11 @@ void MemberDef::addListReference(Definition *)
}
QCString memName = name();
Definition *pd=getOuterScope();
- QCString pdName = pd->definitionType()==Definition::TypeClass ?
+ QCString pdName = pd->definitionType()==Definition::TypeClass ?
((ClassDef*)pd)->displayName() : pd->name();
QCString sep = getLanguageSpecificSeparator(lang,TRUE);
QCString memArgs;
- if (!isRelated()
+ if (!isRelated()
/* && commented out as a result of bug 597016
(
(!hideScopeNames && // there is a scope
@@ -3334,7 +3361,7 @@ void MemberDef::addListReference(Definition *)
{
memName = "[" + pd->name() + " " + name() + "]";
}
- else
+ else
{
if (pd!=Doxygen::globalScope) memName.prepend(pdName+sep);
memArgs = argsString();
@@ -3350,19 +3377,19 @@ void MemberDef::addListReference(Definition *)
}
}
-MemberList *MemberDef::getSectionList(Definition *d) const
-{
+MemberList *MemberDef::getSectionList(Definition *d) const
+{
char key[20];
sprintf(key,"%p",d);
return (d!=0 && m_impl->classSectionSDict) ? m_impl->classSectionSDict->find(key) : 0;
}
-void MemberDef::setSectionList(Definition *d, MemberList *sl)
-{
+void MemberDef::setSectionList(Definition *d, MemberList *sl)
+{
//printf("MemberDef::setSectionList(%p,%p) name=%s\n",d,sl,name().data());
char key[20];
sprintf(key,"%p",d);
- if (m_impl->classSectionSDict==0)
+ if (m_impl->classSectionSDict==0)
{
m_impl->classSectionSDict = new SDict<MemberList>(7);
}
@@ -3371,7 +3398,7 @@ void MemberDef::setSectionList(Definition *d, MemberList *sl)
Specifier MemberDef::virtualness(int count) const
{
- if (count>25)
+ if (count>25)
{
warn(getDefFileName(),getDefLine(),
"Internal inconsistency: recursion detected in overload relation for member %s!"
@@ -3390,7 +3417,7 @@ Specifier MemberDef::virtualness(int count) const
}
void MemberDef::_writeTagData(const DefType compoundType)
-{
+{
unsigned typeMask = 1 << compoundType;
if ((m_impl->tagDataWritten) & typeMask) return; // member already written for this type
if (m_impl->mtype==MemberType_EnumValue && m_impl->enumScope &&
@@ -3422,13 +3449,13 @@ void MemberDef::_writeTagData(const DefType compoundType)
Doxygen::tagFile << "\" protection=\"";
if (m_impl->prot==Protected) Doxygen::tagFile << "protected";
else if (m_impl->prot==Package) Doxygen::tagFile << "package";
- else /* Private */ Doxygen::tagFile << "private";
+ else /* Private */ Doxygen::tagFile << "private";
}
if (m_impl->virt!=Normal)
{
Doxygen::tagFile << "\" virtualness=\"";
if (m_impl->virt==Virtual) Doxygen::tagFile << "virtual";
- else /* Pure */ Doxygen::tagFile << "pure";
+ else /* Pure */ Doxygen::tagFile << "pure";
}
if (isStatic())
{
@@ -3459,11 +3486,11 @@ void MemberDef::_writeTagData(const DefType compoundType)
Doxygen::tagFile << " <enumvalue file=\"" << convertToXML(getOutputFileBase()+Doxygen::htmlFileExtension);
Doxygen::tagFile << "\" anchor=\"" << convertToXML(fmd->anchor());
QCString idStr = fmd->id();
- if (!idStr.isEmpty())
+ if (!idStr.isEmpty())
{
Doxygen::tagFile << "\" clangid=\"" << convertToXML(idStr);
}
- Doxygen::tagFile << "\">" << convertToXML(fmd->name()) << "</enumvalue>" << endl;
+ Doxygen::tagFile << "\">" << convertToXML(fmd->name()) << "</enumvalue>" << endl;
}
}
}
@@ -3478,7 +3505,7 @@ void MemberDef::_writeTagData(const DefType compoundType)
void MemberDef::_computeIsConstructor()
{
m_isConstructorCached=1; // FALSE
- if (m_impl->classDef)
+ if (m_impl->classDef)
{
if (m_impl->isDMember) // for D
{
@@ -3486,11 +3513,11 @@ void MemberDef::_computeIsConstructor()
return;
}
else if (getLanguage()==SrcLangExt_PHP) // for PHP
- {
+ {
m_isConstructorCached = name()=="__construct" ? 2 : 1;
return;
}
- else if (name()=="__init__" &&
+ else if (name()=="__init__" &&
getLanguage()==SrcLangExt_Python) // for Python
{
m_isConstructorCached = 2; // TRUE
@@ -3518,8 +3545,8 @@ void MemberDef::_computeIsConstructor()
}
}
-bool MemberDef::isConstructor() const
-{
+bool MemberDef::isConstructor() const
+{
if (m_isConstructorCached==0)
{
MemberDef *that = (MemberDef*)this;
@@ -3538,14 +3565,14 @@ void MemberDef::_computeIsDestructor()
isDestructor = name()=="~this";
}
else if (getLanguage()==SrcLangExt_PHP) // for PHP
- {
+ {
isDestructor = name()=="__destruct";
}
else if (getLanguage()==SrcLangExt_Tcl) // for Tcl
- {
+ {
isDestructor = name()=="destructor";
}
- else if (name()=="__del__" &&
+ else if (name()=="__del__" &&
getLanguage()==SrcLangExt_Python) // for Python
{
isDestructor=TRUE;
@@ -3554,13 +3581,13 @@ void MemberDef::_computeIsDestructor()
{
isDestructor =
(name().find('~')!=-1 || name().find('!')!=-1) // The ! is for C++/CLI
- && name().find("operator")==-1;
+ && name().find("operator")==-1;
}
m_isDestructorCached = isDestructor ? 2 : 1;
}
bool MemberDef::isDestructor() const
-{
+{
if (m_isDestructorCached==0)
{
MemberDef *that=(MemberDef*)this;
@@ -3571,7 +3598,7 @@ bool MemberDef::isDestructor() const
}
void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
- ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
+ ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
const DefType compoundType)
{
int enumMemCount=0;
@@ -3587,7 +3614,7 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
fmd=fmdl->next();
}
}
- if (numVisibleEnumValues==0 && !isBriefSectionVisible())
+ if (numVisibleEnumValues==0 && !isBriefSectionVisible())
{
return;
}
@@ -3638,7 +3665,7 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
typeDecl.pushGeneratorState();
typeDecl.disableAllBut(OutputGenerator::Html);
typeDecl.enable(OutputGenerator::Latex);
- typeDecl.lineBreak();
+ typeDecl.lineBreak();
typeDecl.disable(OutputGenerator::Latex);
typeDecl.writeString("&#160;&#160;");
typeDecl.popGeneratorState();
@@ -3665,7 +3692,7 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
bool prevVisible = fmdVisible;
fmd=fmdl->next();
- if (fmd && (fmdVisible=fmd->isBriefSectionVisible()))
+ if (fmd && (fmdVisible=fmd->isBriefSectionVisible()))
{
typeDecl.writeString(", ");
}
@@ -3681,7 +3708,7 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
{
typeDecl.pushGeneratorState();
typeDecl.disableAllBut(OutputGenerator::Html);
- typeDecl.lineBreak();
+ typeDecl.lineBreak();
typeDecl.popGeneratorState();
}
}
@@ -3689,8 +3716,8 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
}
}
-void MemberDef::setArgumentList(ArgumentList *al)
-{
+void MemberDef::setArgumentList(ArgumentList *al)
+{
if (m_impl->defArgList) delete m_impl->defArgList;
m_impl->defArgList = al;
}
@@ -3728,25 +3755,25 @@ void MemberDef::setAccessorType(ClassDef *cd,const char *t)
void MemberDef::findSectionsInDocumentation()
{
- docFindSections(documentation(),this,0,docFile());
+ docFindSections(documentation(),this,0,docFile());
}
-void MemberDef::enableCallGraph(bool e)
-{
- m_impl->hasCallGraph=e;
+void MemberDef::enableCallGraph(bool e)
+{
+ m_impl->hasCallGraph=e;
if (e) Doxygen::parseSourcesNeeded = TRUE;
}
-void MemberDef::enableCallerGraph(bool e)
-{
- m_impl->hasCallerGraph=e;
+void MemberDef::enableCallerGraph(bool e)
+{
+ m_impl->hasCallerGraph=e;
if (e) Doxygen::parseSourcesNeeded = TRUE;
}
#if 0
bool MemberDef::protectionVisible() const
{
- return m_impl->prot==Public ||
+ return m_impl->prot==Public ||
(m_impl->prot==Private && Config_getBool("EXTRACT_PRIVATE")) ||
(m_impl->prot==Protected && Config_getBool("EXTRACT_PROTECTED")) ||
(m_impl->prot==Package && Config_getBool("EXTRACT_PACKAGE"));
@@ -3767,13 +3794,13 @@ void MemberDef::setInbodyDocumentation(const char *docs,
bool MemberDef::isObjCMethod() const
{
if (m_impl->classDef && m_impl->classDef->isObjectiveC() && isFunction()) return TRUE;
- return FALSE;
+ return FALSE;
}
bool MemberDef::isObjCProperty() const
{
if (m_impl->classDef && m_impl->classDef->isObjectiveC() && isProperty()) return TRUE;
- return FALSE;
+ return FALSE;
}
QCString MemberDef::qualifiedName() const
@@ -3797,7 +3824,7 @@ QCString MemberDef::qualifiedName() const
else
{
return Definition::qualifiedName();
- }
+ }
}
void MemberDef::setTagInfo(TagInfo *ti)
@@ -3829,12 +3856,12 @@ QCString MemberDef::objCMethodName(bool localLink,bool showStatic) const
}
const char *MemberDef::declaration() const
-{
- return m_impl->decl;
+{
+ return m_impl->decl;
}
const char *MemberDef::definition() const
-{
+{
return m_impl->def;
}
@@ -3844,133 +3871,133 @@ const char *MemberDef::extraTypeChars() const
}
const char *MemberDef::typeString() const
-{
- return m_impl->type;
+{
+ return m_impl->type;
}
const char *MemberDef::argsString() const
-{
- return m_impl->args;
+{
+ return m_impl->args;
}
const char *MemberDef::excpString() const
-{
- return m_impl->exception;
+{
+ return m_impl->exception;
}
const char *MemberDef::bitfieldString() const
-{
- return m_impl->bitfields;
+{
+ return m_impl->bitfields;
}
const QCString &MemberDef::initializer() const
-{
- return m_impl->initializer;
+{
+ return m_impl->initializer;
}
int MemberDef::initializerLines() const
-{
- return m_impl->initLines;
+{
+ return m_impl->initLines;
}
uint64 MemberDef::getMemberSpecifiers() const
-{
- return m_impl->memSpec;
+{
+ return m_impl->memSpec;
}
ClassDef *MemberDef::getClassDef() const
-{
- return m_impl->classDef;
+{
+ return m_impl->classDef;
}
FileDef *MemberDef::getFileDef() const
-{
- return m_impl->fileDef;
+{
+ return m_impl->fileDef;
}
NamespaceDef* MemberDef::getNamespaceDef() const
-{
- return m_impl->nspace;
+{
+ return m_impl->nspace;
}
const char *MemberDef::getReadAccessor() const
-{
- return m_impl->read;
+{
+ return m_impl->read;
}
const char *MemberDef::getWriteAccessor() const
-{
- return m_impl->write;
+{
+ return m_impl->write;
}
GroupDef *MemberDef::getGroupDef() const
-{
- return m_impl->group;
+{
+ return m_impl->group;
}
Grouping::GroupPri_t MemberDef::getGroupPri() const
-{
- return m_impl->grouppri;
+{
+ return m_impl->grouppri;
}
const char *MemberDef::getGroupFileName() const
-{
- return m_impl->groupFileName;
+{
+ return m_impl->groupFileName;
}
int MemberDef::getGroupStartLine() const
-{
- return m_impl->groupStartLine;
+{
+ return m_impl->groupStartLine;
}
bool MemberDef::getGroupHasDocs() const
-{
- return m_impl->groupHasDocs;
+{
+ return m_impl->groupHasDocs;
}
Protection MemberDef::protection() const
-{
- return m_impl->prot;
+{
+ return m_impl->prot;
}
MemberType MemberDef::memberType() const
-{
- return m_impl->mtype;
+{
+ return m_impl->mtype;
}
bool MemberDef::isSignal() const
-{
- return m_impl->mtype==MemberType_Signal;
+{
+ return m_impl->mtype==MemberType_Signal;
}
bool MemberDef::isSlot() const
-{
- return m_impl->mtype==MemberType_Slot;
+{
+ return m_impl->mtype==MemberType_Slot;
}
bool MemberDef::isVariable() const
-{
- return m_impl->mtype==MemberType_Variable;
+{
+ return m_impl->mtype==MemberType_Variable;
}
bool MemberDef::isEnumerate() const
-{
- return m_impl->mtype==MemberType_Enumeration;
+{
+ return m_impl->mtype==MemberType_Enumeration;
}
bool MemberDef::isEnumValue() const
-{
- return m_impl->mtype==MemberType_EnumValue;
+{
+ return m_impl->mtype==MemberType_EnumValue;
}
bool MemberDef::isTypedef() const
-{
- return m_impl->mtype==MemberType_Typedef;
+{
+ return m_impl->mtype==MemberType_Typedef;
}
bool MemberDef::isFunction() const
-{
- return m_impl->mtype==MemberType_Function;
+{
+ return m_impl->mtype==MemberType_Function;
}
bool MemberDef::isFunctionPtr() const
@@ -3979,175 +4006,175 @@ bool MemberDef::isFunctionPtr() const
}
bool MemberDef::isDefine() const
-{
- return m_impl->mtype==MemberType_Define;
+{
+ return m_impl->mtype==MemberType_Define;
}
bool MemberDef::isFriend() const
-{
- return m_impl->mtype==MemberType_Friend;
+{
+ return m_impl->mtype==MemberType_Friend;
}
bool MemberDef::isDCOP() const
-{
- return m_impl->mtype==MemberType_DCOP;
+{
+ return m_impl->mtype==MemberType_DCOP;
}
bool MemberDef::isProperty() const
-{
- return m_impl->mtype==MemberType_Property;
+{
+ return m_impl->mtype==MemberType_Property;
}
bool MemberDef::isEvent() const
-{
- return m_impl->mtype==MemberType_Event;
+{
+ return m_impl->mtype==MemberType_Event;
}
bool MemberDef::isRelated() const
-{
+{
return m_impl->related == Related;
}
bool MemberDef::isForeign() const
-{
- return m_impl->related == Foreign;
+{
+ return m_impl->related == Foreign;
}
bool MemberDef::isStatic() const
-{
- return m_impl->stat;
+{
+ return m_impl->stat;
}
bool MemberDef::isInline() const
-{
- return (m_impl->memSpec&Entry::Inline)!=0;
+{
+ return (m_impl->memSpec&Entry::Inline)!=0;
}
bool MemberDef::isExplicit() const
-{
- return (m_impl->memSpec&Entry::Explicit)!=0;
+{
+ return (m_impl->memSpec&Entry::Explicit)!=0;
}
bool MemberDef::isMutable() const
-{
- return (m_impl->memSpec&Entry::Mutable)!=0;
+{
+ return (m_impl->memSpec&Entry::Mutable)!=0;
}
bool MemberDef::isGettable() const
-{
- return (m_impl->memSpec&Entry::Gettable)!=0;
+{
+ return (m_impl->memSpec&Entry::Gettable)!=0;
}
bool MemberDef::isSettable() const
-{
- return (m_impl->memSpec&Entry::Settable)!=0;
+{
+ return (m_impl->memSpec&Entry::Settable)!=0;
}
bool MemberDef::isAddable() const
-{
- return (m_impl->memSpec&Entry::Addable)!=0;
+{
+ return (m_impl->memSpec&Entry::Addable)!=0;
}
bool MemberDef::isRemovable() const
-{
- return (m_impl->memSpec&Entry::Removable)!=0;
+{
+ return (m_impl->memSpec&Entry::Removable)!=0;
}
bool MemberDef::isRaisable() const
-{
- return (m_impl->memSpec&Entry::Raisable)!=0;
+{
+ return (m_impl->memSpec&Entry::Raisable)!=0;
}
bool MemberDef::isReadable() const
-{
- return (m_impl->memSpec&Entry::Readable)!=0;
+{
+ return (m_impl->memSpec&Entry::Readable)!=0;
}
bool MemberDef::isWritable() const
-{
- return (m_impl->memSpec&Entry::Writable)!=0;
+{
+ return (m_impl->memSpec&Entry::Writable)!=0;
}
bool MemberDef::isFinal() const
-{
- return (m_impl->memSpec&Entry::Final)!=0;
+{
+ return (m_impl->memSpec&Entry::Final)!=0;
}
bool MemberDef::isNew() const
-{
- return (m_impl->memSpec&Entry::New)!=0;
+{
+ return (m_impl->memSpec&Entry::New)!=0;
}
bool MemberDef::isSealed() const
-{
- return (m_impl->memSpec&Entry::Sealed)!=0;
+{
+ return (m_impl->memSpec&Entry::Sealed)!=0;
}
bool MemberDef::isOverride() const
-{
- return (m_impl->memSpec&Entry::Override)!=0;
+{
+ return (m_impl->memSpec&Entry::Override)!=0;
}
bool MemberDef::isInitonly() const
-{
- return (m_impl->memSpec&Entry::Initonly)!=0;
+{
+ return (m_impl->memSpec&Entry::Initonly)!=0;
}
bool MemberDef::isAbstract() const
-{
- return (m_impl->memSpec&Entry::Abstract)!=0;
+{
+ return (m_impl->memSpec&Entry::Abstract)!=0;
}
bool MemberDef::isOptional() const
-{
- return (m_impl->memSpec&Entry::Optional)!=0;
+{
+ return (m_impl->memSpec&Entry::Optional)!=0;
}
bool MemberDef::isRequired() const
-{
- return (m_impl->memSpec&Entry::Required)!=0;
+{
+ return (m_impl->memSpec&Entry::Required)!=0;
}
bool MemberDef::isNonAtomic() const
-{
- return (m_impl->memSpec&Entry::NonAtomic)!=0;
+{
+ return (m_impl->memSpec&Entry::NonAtomic)!=0;
}
bool MemberDef::isCopy() const
-{
- return (m_impl->memSpec&Entry::Copy)!=0;
+{
+ return (m_impl->memSpec&Entry::Copy)!=0;
}
bool MemberDef::isAssign() const
-{
- return (m_impl->memSpec&Entry::Assign)!=0;
+{
+ return (m_impl->memSpec&Entry::Assign)!=0;
}
bool MemberDef::isRetain() const
-{
- return (m_impl->memSpec&Entry::Retain)!=0;
+{
+ return (m_impl->memSpec&Entry::Retain)!=0;
}
bool MemberDef::isWeak() const
{
- return (m_impl->memSpec&Entry::Weak)!=0;
+ return (m_impl->memSpec&Entry::Weak)!=0;
}
bool MemberDef::isStrong() const
{
- return (m_impl->memSpec&Entry::Strong)!=0;
+ return (m_impl->memSpec&Entry::Strong)!=0;
}
bool MemberDef::isStrongEnumValue() const
{
return m_impl->mtype==MemberType_EnumValue &&
- m_impl->enumScope &&
+ m_impl->enumScope &&
m_impl->enumScope->isStrong();
}
bool MemberDef::isUnretained() const
{
- return (m_impl->memSpec&Entry::Unretained)!=0;
+ return (m_impl->memSpec&Entry::Unretained)!=0;
}
bool MemberDef::isAlias() const
@@ -4222,356 +4249,356 @@ bool MemberDef::isPublished() const
bool MemberDef::isImplementation() const
-{
- return m_impl->implOnly;
+{
+ return m_impl->implOnly;
}
bool MemberDef::isExternal() const
-{
- return m_impl->explExt;
+{
+ return m_impl->explExt;
}
bool MemberDef::isTemplateSpecialization() const
-{
- return m_impl->tspec;
+{
+ return m_impl->tspec;
}
bool MemberDef::hasDocumentedParams() const
-{
- return m_impl->hasDocumentedParams;
+{
+ return m_impl->hasDocumentedParams;
}
bool MemberDef::hasDocumentedReturnType() const
-{
- return m_impl->hasDocumentedReturnType;
+{
+ return m_impl->hasDocumentedReturnType;
}
bool MemberDef::showInCallGraph() const
{
- return isFunction() ||
- isSlot() ||
+ return isFunction() ||
+ isSlot() ||
isConstructor() ||
- isDestructor() ||
+ isDestructor() ||
isObjCMethod();
}
ClassDef *MemberDef::relatedAlso() const
-{
- return m_impl->relatedAlso;
+{
+ return m_impl->relatedAlso;
}
bool MemberDef::hasDocumentedEnumValues() const
-{
- return m_impl->docEnumValues;
+{
+ return m_impl->docEnumValues;
}
MemberDef *MemberDef::getAnonymousEnumType() const
-{
- return m_impl->annEnumType;
+{
+ return m_impl->annEnumType;
}
bool MemberDef::isDocsForDefinition() const
-{
- return m_impl->docsForDefinition;
+{
+ return m_impl->docsForDefinition;
}
MemberDef *MemberDef::getEnumScope() const
-{
- return m_impl->enumScope;
+{
+ return m_impl->enumScope;
}
MemberList *MemberDef::enumFieldList() const
-{
- return m_impl->enumFields;
+{
+ return m_impl->enumFields;
}
ExampleSDict *MemberDef::getExamples() const
-{
- return m_impl->exampleSDict;
+{
+ return m_impl->exampleSDict;
}
bool MemberDef::isPrototype() const
-{
- return m_impl->proto;
+{
+ return m_impl->proto;
}
ArgumentList *MemberDef::argumentList() const
-{
- return m_impl->defArgList;
+{
+ return m_impl->defArgList;
}
ArgumentList *MemberDef::declArgumentList() const
-{
- return m_impl->declArgList;
+{
+ return m_impl->declArgList;
}
ArgumentList *MemberDef::templateArguments() const
-{
- return m_impl->tArgList;
+{
+ return m_impl->tArgList;
}
QList<ArgumentList> *MemberDef::definitionTemplateParameterLists() const
-{
- return m_impl->defTmpArgLists;
+{
+ return m_impl->defTmpArgLists;
}
int MemberDef::getMemberGroupId() const
-{
- return m_impl->grpId;
+{
+ return m_impl->grpId;
}
MemberGroup *MemberDef::getMemberGroup() const
-{
- return m_impl->memberGroup;
+{
+ return m_impl->memberGroup;
}
bool MemberDef::fromAnonymousScope() const
-{
- return m_impl->annScope;
+{
+ return m_impl->annScope;
}
bool MemberDef::anonymousDeclShown() const
-{
- return m_impl->annUsed;
+{
+ return m_impl->annUsed;
}
-void MemberDef::setAnonymousUsed()
+void MemberDef::setAnonymousUsed()
{
m_impl->annUsed = TRUE;
}
bool MemberDef::hasCallGraph() const
-{
- return m_impl->hasCallGraph;
+{
+ return m_impl->hasCallGraph;
}
bool MemberDef::hasCallerGraph() const
-{
- return m_impl->hasCallerGraph;
+{
+ return m_impl->hasCallerGraph;
}
MemberDef *MemberDef::templateMaster() const
-{
- return m_impl->templateMaster;
+{
+ return m_impl->templateMaster;
}
bool MemberDef::isTypedefValCached() const
-{
- return m_impl->isTypedefValCached;
+{
+ return m_impl->isTypedefValCached;
}
ClassDef *MemberDef::getCachedTypedefVal() const
-{
- return m_impl->cachedTypedefValue;
+{
+ return m_impl->cachedTypedefValue;
}
QCString MemberDef::getCachedTypedefTemplSpec() const
-{
- return m_impl->cachedTypedefTemplSpec;
+{
+ return m_impl->cachedTypedefTemplSpec;
}
QCString MemberDef::getCachedResolvedTypedef() const
-{
+{
//printf("MemberDef::getCachedResolvedTypedef()=%s m_impl=%p\n",m_impl->cachedResolvedType.data(),m_impl);
- return m_impl->cachedResolvedType;
+ return m_impl->cachedResolvedType;
}
MemberDef *MemberDef::memberDefinition() const
-{
- return m_impl->memDef;
+{
+ return m_impl->memDef;
}
MemberDef *MemberDef::memberDeclaration() const
-{
- return m_impl->memDec;
+{
+ return m_impl->memDec;
}
MemberDef *MemberDef::inheritsDocsFrom() const
-{
- return m_impl->docProvider;
+{
+ return m_impl->docProvider;
}
MemberDef *MemberDef::getGroupAlias() const
-{
- return m_impl->groupAlias;
+{
+ return m_impl->groupAlias;
}
void MemberDef::setMemberType(MemberType t)
-{
- m_impl->mtype=t;
+{
+ m_impl->mtype=t;
m_isLinkableCached = 0;
}
void MemberDef::setDefinition(const char *d)
-{
- m_impl->def=d;
+{
+ m_impl->def=d;
}
void MemberDef::setFileDef(FileDef *fd)
-{
- m_impl->fileDef=fd;
+{
+ m_impl->fileDef=fd;
m_isLinkableCached = 0;
m_isConstructorCached = 0;
m_isDestructorCached = 0;
}
void MemberDef::setProtection(Protection p)
-{
- m_impl->prot=p;
+{
+ m_impl->prot=p;
m_isLinkableCached = 0;
}
void MemberDef::setMemberSpecifiers(uint64 s)
-{
- m_impl->memSpec=s;
+{
+ m_impl->memSpec=s;
}
void MemberDef::mergeMemberSpecifiers(uint64 s)
-{
- m_impl->memSpec|=s;
+{
+ m_impl->memSpec|=s;
}
void MemberDef::setBitfields(const char *s)
-{
- m_impl->bitfields = s;
+{
+ m_impl->bitfields = QCString(s).simplifyWhiteSpace();
}
void MemberDef::setMaxInitLines(int lines)
-{
+{
if (lines!=-1)
{
- m_impl->userInitLines=lines;
+ m_impl->userInitLines=lines;
}
}
void MemberDef::setExplicitExternal(bool b)
-{
- m_impl->explExt=b;
+{
+ m_impl->explExt=b;
}
void MemberDef::setReadAccessor(const char *r)
-{
- m_impl->read=r;
+{
+ m_impl->read=r;
}
void MemberDef::setWriteAccessor(const char *w)
-{
- m_impl->write=w;
+{
+ m_impl->write=w;
}
void MemberDef::setTemplateSpecialization(bool b)
-{
- m_impl->tspec=b;
+{
+ m_impl->tspec=b;
}
void MemberDef::makeRelated()
-{
- m_impl->related = Related;
+{
+ m_impl->related = Related;
m_isLinkableCached = 0;
}
void MemberDef::makeForeign()
-{
- m_impl->related = Foreign;
+{
+ m_impl->related = Foreign;
m_isLinkableCached = 0;
}
void MemberDef::setHasDocumentedParams(bool b)
-{
- m_impl->hasDocumentedParams = b;
+{
+ m_impl->hasDocumentedParams = b;
}
void MemberDef::setHasDocumentedReturnType(bool b)
-{
- m_impl->hasDocumentedReturnType = b;
+{
+ m_impl->hasDocumentedReturnType = b;
}
void MemberDef::setInheritsDocsFrom(MemberDef *md)
-{
- m_impl->docProvider = md;
+{
+ m_impl->docProvider = md;
}
void MemberDef::setArgsString(const char *as)
-{
- m_impl->args = as;
+{
+ m_impl->args = as;
}
void MemberDef::setRelatedAlso(ClassDef *cd)
-{
- m_impl->relatedAlso=cd;
+{
+ m_impl->relatedAlso=cd;
}
void MemberDef::setEnumClassScope(ClassDef *cd)
-{
- m_impl->classDef = cd;
- m_isLinkableCached = 0;
- m_isConstructorCached = 0;
+{
+ m_impl->classDef = cd;
+ m_isLinkableCached = 0;
+ m_isConstructorCached = 0;
}
void MemberDef::setDocumentedEnumValues(bool value)
-{
- m_impl->docEnumValues=value;
+{
+ m_impl->docEnumValues=value;
}
void MemberDef::setAnonymousEnumType(MemberDef *md)
-{
- m_impl->annEnumType = md;
+{
+ m_impl->annEnumType = md;
}
void MemberDef::setPrototype(bool p)
-{
- m_impl->proto=p;
+{
+ m_impl->proto=p;
}
void MemberDef::setMemberGroupId(int id)
-{
- m_impl->grpId=id;
+{
+ m_impl->grpId=id;
}
void MemberDef::makeImplementationDetail()
-{
- m_impl->implOnly=TRUE;
+{
+ m_impl->implOnly=TRUE;
}
void MemberDef::setFromAnonymousScope(bool b)
-{
- m_impl->annScope=b;
+{
+ m_impl->annScope=b;
}
void MemberDef::setFromAnonymousMember(MemberDef *m)
-{
- m_impl->annMemb=m;
+{
+ m_impl->annMemb=m;
}
void MemberDef::setTemplateMaster(MemberDef *mt)
-{
- m_impl->templateMaster=mt;
- m_isLinkableCached = 0;
+{
+ m_impl->templateMaster=mt;
+ m_isLinkableCached = 0;
}
void MemberDef::setDocsForDefinition(bool b)
-{
- m_impl->docsForDefinition = b;
+{
+ m_impl->docsForDefinition = b;
}
void MemberDef::setGroupAlias(MemberDef *md)
-{
- m_impl->groupAlias = md;
+{
+ m_impl->groupAlias = md;
}
void MemberDef::invalidateTypedefValCache()
-{
- m_impl->isTypedefValCached=FALSE;
+{
+ m_impl->isTypedefValCached=FALSE;
}
void MemberDef::setMemberDefinition(MemberDef *md)
-{
- m_impl->memDef=md;
+{
+ m_impl->memDef=md;
}
void MemberDef::setMemberDeclaration(MemberDef *md)
-{
- m_impl->memDec=md;
+{
+ m_impl->memDec=md;
}
ClassDef *MemberDef::category() const
@@ -4607,9 +4634,9 @@ QCString MemberDef::enumBaseType() const
void MemberDef::cacheTypedefVal(ClassDef*val, const QCString & templSpec, const QCString &resolvedType)
{
- m_impl->isTypedefValCached=TRUE;
- m_impl->cachedTypedefValue=val;
- m_impl->cachedTypedefTemplSpec=templSpec;
+ m_impl->isTypedefValCached=TRUE;
+ m_impl->cachedTypedefValue=val;
+ m_impl->cachedTypedefTemplSpec=templSpec;
m_impl->cachedResolvedType=resolvedType;
//printf("MemberDef::cacheTypedefVal=%s m_impl=%p\n",m_impl->cachedResolvedType.data(),m_impl);
}
@@ -4665,9 +4692,9 @@ void MemberDef::invalidateCachedArgumentTypes()
//----------------
-QCString MemberDef::displayName(bool) const
-{
- return Definition::name();
+QCString MemberDef::displayName(bool) const
+{
+ return Definition::name();
}
void MemberDef::_addToSearchIndex()