diff options
Diffstat (limited to 'src/memberdef.cpp')
-rw-r--r-- | src/memberdef.cpp | 1105 |
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("  "); 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() |