Doxygen
Loading...
Searching...
No Matches
memberdef.h File Reference

#include <src/memberdef.h>

Include dependency graph for memberdef.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MemberDef
 A model of a class/file/namespace member symbol. More...
class  MemberDefMutable

Functions

MemberDeftoMemberDef (Definition *d)
MemberDeftoMemberDef (DefinitionMutable *d)
const MemberDeftoMemberDef (const Definition *d)
MemberDefMutabletoMemberDefMutable (Definition *d)
std::unique_ptr< MemberDefcreateMemberDef (const DString &defFileName, int defLine, size_t defColumn, const DString &type, const DString &name, const DString &args, const DString &excp, Protection prot, Specifier virt, bool stat, Relationship related, MemberType t, const ArgumentList &tal, const ArgumentList &al, const DString &metaData)
 Factory method to create a new instance of a MemberDef.
std::unique_ptr< MemberDefcreateMemberDefAlias (const Definition *newScope, const MemberDef *aliasMd)
void combineDeclarationAndDefinition (MemberDefMutable *mdec, MemberDefMutable *mdef)
void mergeMemberOverrideOptions (MemberDefMutable *md1, MemberDefMutable *md2)
void addDocCrossReference (const MemberDef *src, const MemberDef *dst)

Function Documentation

◆ addDocCrossReference()

void addDocCrossReference ( const MemberDef * src,
const MemberDef * dst )

Definition at line 6409 of file memberdef.cpp.

6410{
6411 MemberDefMutable *src = toMemberDefMutable(const_cast<MemberDef*>(s));
6412 MemberDefMutable *dst = toMemberDefMutable(const_cast<MemberDef*>(d));
6413 if (src==nullptr || dst==nullptr) return;
6414 //printf("--> addDocCrossReference src=%s,dst=%s\n",qPrint(src->name()),qPrint(dst->name()));
6415 if (dst->isTypedef() || dst->isEnumerate()) return; // don't add types
6416 if ((dst->hasReferencedByRelation() || dst->hasCallerGraph()) &&
6417 src->isCallable()
6418 )
6419 {
6420 DString sourceRefName = src->sourceRefName();
6423
6424 // ---- critical section
6425 std::lock_guard<std::mutex> lock(g_docCrossReferenceMutex);
6426 dst->addSourceReferencedBy(src,sourceRefName);
6427 if (mdDef)
6428 {
6429 mdDef->addSourceReferencedBy(src,sourceRefName);
6430 }
6431 if (mdDecl)
6432 {
6433 mdDecl->addSourceReferencedBy(src,sourceRefName);
6434 }
6435 // ---- end critical section
6436 }
6437 if ((src->hasReferencesRelation() || src->hasCallGraph()) &&
6438 src->isCallable()
6439 )
6440 {
6441 DString sourceRefName = dst->sourceRefName();
6444
6445 // ---- critical section
6446 std::lock_guard<std::mutex> lock(g_docCrossReferenceMutex);
6447 src->addSourceReferences(dst,sourceRefName);
6448 if (mdDef)
6449 {
6450 mdDef->addSourceReferences(dst,sourceRefName);
6451 }
6452 if (mdDecl)
6453 {
6454 mdDecl->addSourceReferences(dst,sourceRefName);
6455 }
6456 // ---- end critical section
6457 }
6458}
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
Definition dstring.h:84
virtual void addSourceReferences(MemberDef *d, const DString &sourceRefName)=0
virtual void addSourceReferencedBy(MemberDef *d, const DString &sourceRefName)=0
A model of a class/file/namespace member symbol.
Definition memberdef.h:45
virtual MemberDef * memberDefinition() const =0
virtual MemberDef * memberDeclaration() const =0
virtual bool hasReferencesRelation() const =0
virtual bool isTypedef() const =0
virtual bool hasCallGraph() const =0
virtual DString sourceRefName() const =0
virtual bool hasCallerGraph() const =0
virtual bool isEnumerate() const =0
virtual bool hasReferencedByRelation() const =0
virtual bool isCallable() const =0
static std::mutex g_docCrossReferenceMutex
MemberDefMutable * toMemberDefMutable(Definition *d)

References DefinitionMutable::addSourceReferencedBy(), DefinitionMutable::addSourceReferences(), g_docCrossReferenceMutex, MemberDef::hasCallerGraph(), MemberDef::hasCallGraph(), MemberDef::hasReferencedByRelation(), MemberDef::hasReferencesRelation(), MemberDef::isCallable(), MemberDef::isEnumerate(), MemberDef::isTypedef(), MemberDef::memberDeclaration(), MemberDef::memberDefinition(), MemberDef::sourceRefName(), and toMemberDefMutable().

Referenced by findMemberLink(), generateClassMemberLink(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), getLink(), getLinkInScope(), getLinkInScope(), writeObjCMethodCall(), and MemberDefMutable::writeTagFile().

◆ combineDeclarationAndDefinition()

void combineDeclarationAndDefinition ( MemberDefMutable * mdec,
MemberDefMutable * mdef )

Definition at line 6120 of file memberdef.cpp.

6121{
6122 AUTO_TRACE("mdec='{}' mdef='{}' mdec.isPrototype={} mdef.isPrototype={}",
6123 mdec->name(), mdef->name(), mdec->isPrototype(), mdef->isPrototype());
6124 if (
6125 (!mdef->isDocTransferDone() || !mdec->isDocTransferDone()) &&
6126 (
6127 (mdef->isFunction() && !mdef->isStatic() && !mdef->isPrototype()) ||
6128 (mdef->isVariable() && !mdef->isExternal() && !mdef->isStatic())
6129 )
6130 )
6131 {
6132 bool sameNumTemplateArgs = mdef->templateArguments().size()==mdec->templateArguments().size();
6133
6134 ArgumentList &mdefAl = const_cast<ArgumentList&>(mdef->argumentList());
6135 ArgumentList &mdecAl = const_cast<ArgumentList&>(mdec->argumentList());
6136 if (sameNumTemplateArgs &&
6137 matchArguments2(mdef->getOuterScope(),mdef->getFileDef(),mdef->typeString(),&mdefAl,
6138 mdec->getOuterScope(),mdec->getFileDef(),mdec->typeString(),&mdecAl,
6139 true,mdef->getLanguage()
6140 )
6141 ) /* match found */
6142 {
6143 AUTO_TRACE_ADD("combining definition and declaration");
6144
6145 if (Config_getBool(RESOLVE_UNNAMED_PARAMS))
6146 {
6147 mdec->resolveUnnamedParameters(mdef);
6148 }
6149
6150 // first merge argument documentation
6151 transferArgumentDocumentation(mdecAl,mdefAl);
6152
6153 // copy brief description between definition and declaration
6154 DString mdefBrief = mdef->briefDescription();
6155 DString mdecBrief = mdec->briefDescription();
6156 DString mdefBriefFile = mdef->briefFile();
6157 DString mdecBriefFile = mdec->briefFile();
6158 int mdefBriefLine = mdef->briefLine();
6159 int mdecBriefLine = mdec->briefLine();
6160 if (!mdef->isDocTransferDone() && !mdecBrief.empty())
6161 {
6162 mdef->setBriefDescription(mdecBrief,mdecBriefFile,mdecBriefLine);
6163 }
6164 if (!mdec->isDocTransferDone() && !mdefBrief.empty())
6165 {
6166 mdec->setBriefDescription(mdefBrief,mdefBriefFile,mdefBriefLine);
6167 }
6168
6169 // copy detailed description between definition and declaration
6170 DString mdefDocs = mdef->documentation();
6171 DString mdecDocs = mdec->documentation();
6172 DString mdefFile = mdef->docFile();
6173 DString mdecFile = mdec->docFile();
6174 int mdefLine = mdef->docLine();
6175 int mdecLine = mdec->docLine();
6176 bool mdefDocsForDef = mdef->isDocsForDefinition();
6177 bool mdecDocsForDef = mdec->isDocsForDefinition();
6178 if (!mdec->isDocTransferDone() && !mdefDocs.empty())
6179 {
6180 //printf("transferring docs mdef->mdec (%s->%s)\n",mdef->argsString(),mdec->argsString());
6181 mdec->setDocumentation(mdefDocs,mdefFile,mdefLine);
6182 mdec->setDocsForDefinition(mdefDocsForDef);
6183 if (mdefAl.hasParameters())
6184 {
6185 auto mdefAlComb = stringToArgumentList(mdef->getLanguage(),mdef->argsString());
6186 transferArgumentDocumentation(mdefAl,*mdefAlComb);
6187 mdec->moveArgumentList(std::move(mdefAlComb));
6188 }
6189 }
6190 if (!mdef->isDocTransferDone() && !mdecDocs.empty())
6191 {
6192 //printf("transferring docs mdec->mdef (%s->%s)\n",mdec->argsString(),mdef->argsString());
6193 mdef->setDocumentation(mdecDocs,mdecFile,mdecLine);
6194 mdef->setDocsForDefinition(mdecDocsForDef);
6195 if (mdecAl.hasParameters())
6196 {
6197 auto mdecAlComb = stringToArgumentList(mdec->getLanguage(),mdec->argsString());
6198 transferArgumentDocumentation(mdecAl,*mdecAlComb);
6199 mdef->moveDeclArgumentList(std::move(mdecAlComb));
6200 }
6201 }
6202
6203 // copy inbody documentation between definition and declaration
6204 DString mdefInbodyDocs = mdef->inbodyDocumentation();
6205 DString mdecInbodyDocs = mdec->inbodyDocumentation();
6206 DString mdefInbodyFile = mdef->inbodyFile();
6207 DString mdecInbodyFile = mdec->inbodyFile();
6208 int mdefInbodyLine = mdef->inbodyLine();
6209 int mdecInbodyLine = mdec->inbodyLine();
6210 if (!mdec->isDocTransferDone() && !mdefInbodyDocs.empty())
6211 {
6212 mdec->setInbodyDocumentation(mdefInbodyDocs,mdefInbodyFile,mdefInbodyLine);
6213 }
6214 if (!mdef->isDocTransferDone() && !mdecInbodyDocs.empty())
6215 {
6216 mdef->setInbodyDocumentation(mdecInbodyDocs,mdecInbodyFile,mdecInbodyLine);
6217 }
6218
6219 if (mdec->getStartBodyLine()!=-1 && mdef->getStartBodyLine()==-1)
6220 {
6221 //printf("body mdec->mdef %d-%d\n",mdec->getStartBodyLine(),mdef->getEndBodyLine());
6222 mdef->setBodySegment(mdec->getDefLine(),mdec->getStartBodyLine(),mdec->getEndBodyLine());
6223 mdef->setBodyDef(mdec->getBodyDef());
6224 //mdef->setBodyMember(mdec);
6225 }
6226 else if (mdef->getStartBodyLine()!=-1 && mdec->getStartBodyLine()==-1)
6227 {
6228 //printf("body mdef->mdec %d-%d\n",mdef->getStartBodyLine(),mdec->getEndBodyLine());
6229 mdec->setBodySegment(mdef->getDefLine(),mdef->getStartBodyLine(),mdef->getEndBodyLine());
6230 mdec->setBodyDef(mdef->getBodyDef());
6231 //mdec->setBodyMember(mdef);
6232 }
6235
6236 // copy group info.
6237 if (mdec->getGroupDef()==nullptr && mdef->getGroupDef()!=nullptr)
6238 {
6239 mdec->setGroupDef(mdef->getGroupDef(),
6240 mdef->getGroupPri(),
6241 mdef->docFile(),
6242 mdef->docLine(),
6243 mdef->hasDocumentation(),
6244 mdef
6245 );
6246 }
6247 else if (mdef->getGroupDef()==nullptr && mdec->getGroupDef()!=nullptr)
6248 {
6249 mdef->setGroupDef(mdec->getGroupDef(),
6250 mdec->getGroupPri(),
6251 mdec->docFile(),
6252 mdec->docLine(),
6253 mdec->hasDocumentation(),
6254 mdec
6255 );
6256 }
6257
6258
6259 mdec->mergeRefItems(mdef);
6260 mdef->mergeRefItems(mdec);
6261
6262 mdef->setMemberDeclaration(mdec);
6263 mdec->setMemberDefinition(mdef);
6264
6265 mergeMemberOverrideOptions(mdec,mdef);
6266
6267 mdef->addQualifiers(mdec->getQualifiers());
6268 mdec->addQualifiers(mdef->getQualifiers());
6269
6270 mdef->setDocTransferDone();
6271 mdec->setDocTransferDone();
6272 }
6273 }
6274}
This class represents an function or template argument list.
Definition arguments.h:66
bool hasParameters() const
Definition arguments.h:77
size_t size() const
Definition arguments.h:101
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
Definition dstring.h:148
virtual DString briefDescription(bool abbreviate=false) const =0
virtual DString inbodyFile() const =0
virtual int getEndBodyLine() const =0
virtual DString briefFile() const =0
virtual SrcLangExt getLanguage() const =0
Returns the programming language this definition was written in.
virtual int docLine() const =0
virtual DString documentation() const =0
virtual DString inbodyDocumentation() const =0
virtual int getDefLine() const =0
virtual const DString & name() const =0
virtual int inbodyLine() const =0
virtual const FileDef * getBodyDef() const =0
virtual int briefLine() const =0
virtual bool hasDocumentation() const =0
virtual Definition * getOuterScope() const =0
virtual DString docFile() const =0
virtual int getStartBodyLine() const =0
virtual void setBodySegment(int defLine, int bls, int ble)=0
virtual void setInbodyDocumentation(const DString &d, const DString &docFile, int docLine)=0
virtual void setDocumentation(const DString &d, const DString &docFile, int docLine, bool stripWhiteSpace=true)=0
virtual void setBriefDescription(const DString &b, const DString &briefFile, int briefLine)=0
virtual void mergeRefItems(Definition *d)=0
virtual void setBodyDef(const FileDef *fd)=0
virtual DString argsString() const =0
virtual const ArgumentList & templateArguments() const =0
virtual GroupDef * getGroupDef()=0
virtual const FileDef * getFileDef() const =0
virtual const ArgumentList & argumentList() const =0
virtual bool isFunction() const =0
virtual bool isExternal() const =0
virtual bool isStatic() const =0
virtual StringVector getQualifiers() const =0
virtual bool isDocsForDefinition() const =0
virtual Grouping::GroupPri_t getGroupPri() const =0
virtual TypeSpecifier getMemberSpecifiers() const =0
virtual bool isDocTransferDone() const =0
virtual bool isVariable() const =0
virtual DString typeString() const =0
virtual bool isPrototype() const =0
virtual void setMemberDeclaration(MemberDef *md)=0
virtual void setDocTransferDone()=0
virtual void resolveUnnamedParameters(const MemberDef *md)=0
virtual void setDocsForDefinition(bool b)=0
virtual void mergeMemberSpecifiers(TypeSpecifier s)=0
virtual void addQualifiers(const StringVector &qualifiers)=0
virtual void moveDeclArgumentList(std::unique_ptr< ArgumentList > al)=0
virtual void setMemberDefinition(MemberDef *md)=0
virtual void moveArgumentList(std::unique_ptr< ArgumentList > al)=0
virtual void setGroupDef(GroupDef *gd, Grouping::GroupPri_t pri, const DString &fileName, int startLine, bool hasDocs, MemberDef *member=nullptr)=0
#define Config_getBool(name)
Definition config.h:33
std::unique_ptr< ArgumentList > stringToArgumentList(SrcLangExt lang, const DString &argsString, DString *extraTypeChars=nullptr)
Definition defargs.l:821
#define AUTO_TRACE_ADD(...)
Definition docnode.cpp:54
#define AUTO_TRACE(...)
Definition docnode.cpp:53
static void transferArgumentDocumentation(ArgumentList &decAl, ArgumentList &defAl)
void mergeMemberOverrideOptions(MemberDefMutable *md1, MemberDefMutable *md2)
bool matchArguments2(const Definition *srcScope, const FileDef *srcFileScope, const DString &srcReturnType, const ArgumentList *srcAl, const Definition *dstScope, const FileDef *dstFileScope, const DString &dstReturnType, const ArgumentList *dstAl, bool checkCV, SrcLangExt lang)
Definition util.cpp:1589

References MemberDefMutable::addQualifiers(), MemberDef::argsString(), MemberDef::argumentList(), AUTO_TRACE, AUTO_TRACE_ADD, Definition::briefDescription(), Definition::briefFile(), Definition::briefLine(), Config_getBool, Definition::docFile(), Definition::docLine(), Definition::documentation(), DString::empty(), Definition::getBodyDef(), Definition::getDefLine(), Definition::getEndBodyLine(), MemberDef::getFileDef(), MemberDef::getGroupDef(), MemberDef::getGroupPri(), Definition::getLanguage(), MemberDef::getMemberSpecifiers(), Definition::getOuterScope(), MemberDef::getQualifiers(), Definition::getStartBodyLine(), Definition::hasDocumentation(), ArgumentList::hasParameters(), Definition::inbodyDocumentation(), Definition::inbodyFile(), Definition::inbodyLine(), MemberDef::isDocsForDefinition(), MemberDef::isDocTransferDone(), MemberDef::isExternal(), MemberDef::isFunction(), MemberDef::isPrototype(), MemberDef::isStatic(), MemberDef::isVariable(), matchArguments2(), mergeMemberOverrideOptions(), MemberDefMutable::mergeMemberSpecifiers(), DefinitionMutable::mergeRefItems(), MemberDefMutable::moveArgumentList(), MemberDefMutable::moveDeclArgumentList(), Definition::name(), MemberDefMutable::resolveUnnamedParameters(), DefinitionMutable::setBodyDef(), DefinitionMutable::setBodySegment(), DefinitionMutable::setBriefDescription(), MemberDefMutable::setDocsForDefinition(), MemberDefMutable::setDocTransferDone(), DefinitionMutable::setDocumentation(), MemberDefMutable::setGroupDef(), DefinitionMutable::setInbodyDocumentation(), MemberDefMutable::setMemberDeclaration(), MemberDefMutable::setMemberDefinition(), ArgumentList::size(), stringToArgumentList(), MemberDef::templateArguments(), transferArgumentDocumentation(), and MemberDef::typeString().

Referenced by ClassDefImpl::mergeCategory(), transferFunctionDocumentation(), and MemberDefMutable::writeTagFile().

◆ createMemberDef()

std::unique_ptr< MemberDef > createMemberDef ( const DString & defFileName,
int defLine,
size_t defColumn,
const DString & type,
const DString & name,
const DString & args,
const DString & excp,
Protection prot,
Specifier virt,
bool stat,
Relationship related,
MemberType t,
const ArgumentList & tal,
const ArgumentList & al,
const DString & metaData )

◆ createMemberDefAlias()

std::unique_ptr< MemberDef > createMemberDefAlias ( const Definition * newScope,
const MemberDef * aliasMd )

Definition at line 967 of file memberdef.cpp.

968{
969 auto amd = std::make_unique<MemberDefAliasImpl>(newScope,aliasMd);
970 //printf("amd: name=%s displayName=%s\n",qPrint(amd->name()),qPrint(amd->displayName()));
971 return amd;
972}

Referenced by MemberDefAliasImpl::deepCopy(), findUsingDeclImports(), NamespaceDefImpl::insertMember(), insertMemberAlias(), and MemberDefMutable::writeTagFile().

◆ mergeMemberOverrideOptions()

void mergeMemberOverrideOptions ( MemberDefMutable * md1,
MemberDefMutable * md2 )

Definition at line 6276 of file memberdef.cpp.

6277{
6278 if (Config_getBool(CALL_GRAPH) !=md1->hasCallGraph()) md2->overrideCallGraph(md1->hasCallGraph());
6279 if (Config_getBool(CALLER_GRAPH)!=md1->hasCallerGraph()) md2->overrideCallerGraph(md1->hasCallerGraph());
6280 if (Config_getBool(CALL_GRAPH) !=md2->hasCallGraph()) md1->overrideCallGraph( md2->hasCallGraph());
6281 if (Config_getBool(CALLER_GRAPH)!=md2->hasCallerGraph()) md1->overrideCallerGraph(md2->hasCallerGraph());
6282
6283 if (Config_getBool(SHOW_ENUM_VALUES) !=md1->hasEnumValues()) md2->overrideEnumValues(md1->hasEnumValues());
6284 if (Config_getBool(SHOW_ENUM_VALUES) !=md2->hasEnumValues()) md1->overrideEnumValues( md2->hasEnumValues());
6285
6286 if (Config_getBool(REFERENCED_BY_RELATION)!=md1->hasReferencedByRelation()) md2->overrideReferencedByRelation(md1->hasReferencedByRelation());
6287 if (Config_getBool(REFERENCES_RELATION) !=md1->hasReferencesRelation()) md2->overrideReferencesRelation(md1->hasReferencesRelation());
6288 if (Config_getBool(REFERENCED_BY_RELATION)!=md2->hasReferencedByRelation()) md1->overrideReferencedByRelation(md2->hasReferencedByRelation());
6289 if (Config_getBool(REFERENCES_RELATION) !=md2->hasReferencesRelation()) md1->overrideReferencesRelation(md2->hasReferencesRelation());
6290
6291 if (Config_getBool(INLINE_SOURCES)!=md1->hasInlineSource()) md2->overrideInlineSource(md1->hasInlineSource());
6292 if (Config_getBool(INLINE_SOURCES)!=md2->hasInlineSource()) md1->overrideInlineSource(md2->hasInlineSource());
6293}
virtual bool hasInlineSource() const =0
virtual bool hasEnumValues() const =0
virtual void overrideReferencesRelation(bool e)=0
virtual void overrideReferencedByRelation(bool e)=0
virtual void overrideCallGraph(bool e)=0
virtual void overrideInlineSource(bool e)=0
virtual void overrideEnumValues(bool e)=0
virtual void overrideCallerGraph(bool e)=0

References Config_getBool, MemberDef::hasCallerGraph(), MemberDef::hasCallGraph(), MemberDef::hasEnumValues(), MemberDef::hasInlineSource(), MemberDef::hasReferencedByRelation(), MemberDef::hasReferencesRelation(), MemberDefMutable::overrideCallerGraph(), MemberDefMutable::overrideCallGraph(), MemberDefMutable::overrideEnumValues(), MemberDefMutable::overrideInlineSource(), MemberDefMutable::overrideReferencedByRelation(), and MemberDefMutable::overrideReferencesRelation().

Referenced by combineDeclarationAndDefinition(), findFriends(), and MemberDefMutable::writeTagFile().

◆ toMemberDef() [1/3]

const MemberDef * toMemberDef ( const Definition * d)

Definition at line 6487 of file memberdef.cpp.

6488{
6489 if (d && (typeid(*d)==typeid(MemberDefImpl) || typeid(*d)==typeid(MemberDefAliasImpl)))
6490 {
6491 return static_cast<const MemberDef*>(d);
6492 }
6493 else
6494 {
6495 return nullptr;
6496 }
6497}

◆ toMemberDef() [2/3]

◆ toMemberDef() [3/3]

MemberDef * toMemberDef ( DefinitionMutable * d)

Definition at line 6474 of file memberdef.cpp.

6475{
6476 Definition *d = toDefinition(md);
6477 if (d && typeid(*d)==typeid(MemberDefImpl))
6478 {
6479 return static_cast<MemberDef*>(d);
6480 }
6481 else
6482 {
6483 return nullptr;
6484 }
6485}
The common base class of all entity definitions found in the sources.
Definition definition.h:77
Definition * toDefinition(DefinitionMutable *dm)

References toDefinition().

◆ toMemberDefMutable()

MemberDefMutable * toMemberDefMutable ( Definition * d)

Definition at line 6499 of file memberdef.cpp.

6500{
6501 if (d && typeid(*d)==typeid(MemberDefImpl))
6502 {
6503 return static_cast<MemberDefMutable*>(d);
6504 }
6505 else
6506 {
6507 return nullptr;
6508 }
6509}

Referenced by addDocCrossReference(), addEnumValuesToEnums(), addGlobalFunction(), addInstance(), addInterfaceOrServiceToServiceOrSingleton(), MemberList::addListReferences(), addLocalObjCMethod(), addMemberFunction(), addMemberSpecialization(), addMembersToMemberGroup(), addMemberToGroups(), ClassDefImpl::addMemberToList(), FileDefImpl::addMemberToList(), ModuleDefImpl::addMemberToList(), NamespaceDefImpl::addMemberToList(), ModuleDefImpl::addMemberToModule(), ModuleManager::addMemberToModule(), ClassDefImpl::addMemberToTemplateInstance(), addMethodToClass(), addOverloaded(), MemberList::addRequirementReferences(), addVariableToClass(), addVariableToFile(), associateVariableWithAnonymousEnumType(), buildDefineList(), buildFunctionList(), buildTypedefList(), computeMemberRelationsForBaseClass(), createTagLessInstance(), MemberDefImpl::createTemplateInstanceMember(), createUsingMemberImportForClass(), ClassDefImpl::deepCopy(), MemberGroup::distributeMemberGroupDocumentation(), findDefineDocumentation(), findDEV(), findEnumDocumentation(), findEnums(), findFriends(), findGlobalMember(), findMember(), MemberList::findSectionsInDocumentation(), findUsingDeclImports(), flushCachedTemplateRelations(), flushUnresolvedRelations(), generateClassMemberLink(), generateClassOrGlobalLink(), getLinkInScope(), ClassDefImpl::hideDerivedVariablesInPython(), incrementFlowKeyWordCount(), incrementFlowKeyWordCount(), inheritDocumentation(), GroupDefImpl::insertMember(), MemberGroup::insertMember(), NamespaceDefImpl::insertMember(), MemberDefImpl::insertReimplementedBy(), ClassDefImpl::mergeCategory(), ClassDefImpl::mergeMembersFromBaseClasses(), SymbolResolver::Private::newResolveTypedef(), processTagLessClasses(), MemberList::setAnchors(), MemberList::setAnonymousEnumType(), ClassDefImpl::setGroupDefForAllMembers(), transferFunctionDocumentation(), transferFunctionReferences(), transferRelatedFunctionDocumentation(), transferStaticInstanceInitializers(), tryAddEnumDocsToGroupMember(), vhdlCorrectMemberProperties(), MemberList::writeDocumentation(), MemberList::writeDocumentationPage(), VhdlDocGen::writePlainVHDLDeclarations(), MemberList::writeSimpleDocumentation(), VhdlDocGen::writeSource(), MemberDefMutable::writeTagFile(), and MemberList::writeTagFile().