|
Doxygen
|
#include <memory>#include <unordered_set>#include <vector>#include "configvalues.h"#include "containers.h"#include "definition.h"Go to the source code of this file.
Classes | |
| struct | BaseClassDef |
| Class that contains information about an inheritance relation. More... | |
| struct | TemplateInstanceDef |
| Class that contains information about a template instance relation. More... | |
| class | ClassDef |
| A abstract class representing of a compound symbol. More... | |
| class | ClassDefMutable |
| struct | UsesClassDef |
| Class that contains information about a usage relation. More... | |
| class | UsesClassList |
| struct | ConstraintClassDef |
| Class that contains information about a type constraint relations. More... | |
| class | ConstraintClassList |
Typedefs | |
| using | BaseClassList = std::vector<BaseClassDef> |
| using | TemplateInstanceList = std::vector<TemplateInstanceDef> |
| using | TemplateNameMap = std::map<std::string,int> |
| using | ClassDefSet = std::unordered_set<const ClassDef*> |
Functions | |
| std::unique_ptr< ClassDef > | createClassDef (const DString &fileName, int startLine, size_t startColumn, const DString &name, ClassDef::CompoundType ct, const DString &ref=DString(), const DString &fName=DString(), bool isSymbol=true, bool isJavaEnum=false) |
| Factory method to create a new ClassDef object. | |
| std::unique_ptr< ClassDef > | createClassDefAlias (const Definition *newScope, const ClassDef *cd) |
| ClassDef * | toClassDef (Definition *d) |
| ClassDef * | toClassDef (DefinitionMutable *d) |
| const ClassDef * | toClassDef (const Definition *d) |
| ClassDefMutable * | toClassDefMutable (Definition *d) |
| ClassDef * | getClass (const DString &key) |
| ClassDefMutable * | getClassMutable (const DString &key) |
| bool | classHasVisibleRoot (const BaseClassList &bcl) |
| bool | classHasVisibleChildren (const ClassDef *cd) |
| bool | classVisibleInIndex (const ClassDef *cd) |
| int | minClassDistance (const ClassDef *cd, const ClassDef *bcd, int level=0) |
| Protection | classInheritedProtectionLevel (const ClassDef *cd, const ClassDef *bcd, Protection prot=Protection::Public, int level=0) |
| using BaseClassList = std::vector<BaseClassDef> |
Definition at line 77 of file classdef.h.
| using ClassDefSet = std::unordered_set<const ClassDef*> |
Definition at line 91 of file classdef.h.
| using TemplateInstanceList = std::vector<TemplateInstanceDef> |
Definition at line 87 of file classdef.h.
| using TemplateNameMap = std::map<std::string,int> |
Definition at line 89 of file classdef.h.
| bool classHasVisibleChildren | ( | const ClassDef * | cd | ) |
Definition at line 5526 of file classdef.cpp.
References ClassDef::baseClasses(), Definition::getLanguage(), and ClassDef::subClasses().
Referenced by writeClassTreeForList(), and writeClassTreeToOutput().
| bool classHasVisibleRoot | ( | const BaseClassList & | bcl | ) |
Definition at line 5515 of file classdef.cpp.
References ClassDef::baseClasses(), classHasVisibleRoot(), and ClassDef::isVisibleInHierarchy().
Referenced by DotGfxHierarchyTable::addClassList(), DotGfxHierarchyTable::addHierarchy(), classHasVisibleRoot(), countClassesInTreeList(), writeClassTreeForList(), and writeClassTreeToOutput().
| Protection classInheritedProtectionLevel | ( | const ClassDef * | cd, |
| const ClassDef * | bcd, | ||
| Protection | prot = Protection::Public, | ||
| int | level = 0 ) |
Definition at line 5585 of file classdef.cpp.
References ClassDef::baseClasses(), ClassDef::categoryOf(), classInheritedProtectionLevel(), err, and Definition::name().
Referenced by classInheritedProtectionLevel().
| bool classVisibleInIndex | ( | const ClassDef * | cd | ) |
Definition at line 5551 of file classdef.cpp.
References Config_getBool, Definition::isLinkable(), and Definition::isLinkableInProject().
Referenced by writeClassTree().
| std::unique_ptr< ClassDef > createClassDef | ( | const DString & | fileName, |
| int | startLine, | ||
| size_t | startColumn, | ||
| const DString & | name, | ||
| ClassDef::CompoundType | ct, | ||
| const DString & | ref = DString(), | ||
| const DString & | fName = DString(), | ||
| bool | isSymbol = true, | ||
| bool | isJavaEnum = false ) |
Factory method to create a new ClassDef object.
Definition at line 577 of file classdef.cpp.
Referenced by addClassToContext(), createTagLessInstance(), findClassRelation(), findUsedClassesForClass(), findUsingDeclarations(), and ClassDefMutable::setPrimaryConstructorParams().
| std::unique_ptr< ClassDef > createClassDefAlias | ( | const Definition * | newScope, |
| const ClassDef * | cd ) |
Definition at line 803 of file classdef.cpp.
Referenced by ClassDefAliasImpl::deepCopy(), findUsingDeclImports(), resolveClassNestingRelations(), and ClassDefMutable::setPrimaryConstructorParams().
Get a class definition given its name. Returns nullptr if the class is not found.
Definition at line 5509 of file classdef.cpp.
References Doxygen::classLinkedMap, DString::empty(), and LinkedMap< T, Hash, KeyEqual, Map >::find().
Referenced by addVariable(), buildScopeFromQualifiedName(), extractNamespaceName(), findClassWithinClassContext(), findEnumDocumentation(), findEnums(), findMember(), findUsingDeclarations(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateMemberLink(), getClassMutable(), getScopeDefs(), getTemplateArgumentsFromName(), DocParser::handleLinkedWord(), insertTemplateSpecifierInScope(), MemberDefImpl::isDocumentedFriendClass(), linkifyText(), SymbolResolver::resolveClass(), resolveLink(), resolveRef(), setCallContextForVar(), ClassDefMutable::setPrimaryConstructorParams(), stripTemplateSpecifiersFromScope(), and MemberDefImpl::writeDeclaration().
|
inline |
Definition at line 461 of file classdef.h.
References getClass(), getClassMutable(), and toClassDefMutable().
Referenced by addClassToContext(), addEnumValuesToEnums(), addLocalObjCMethod(), addVariable(), addVariableToFile(), buildFunctionList(), buildInterfaceAndServiceList(), buildTypedefList(), computeClassRelations(), computeTemplateClassRelations(), findClassRelation(), findEnums(), findInheritedTemplateInstances(), findMember(), findUsedTemplateInstances(), findUsingDeclImports(), getClassMutable(), and makeTemplateInstanceRelation().
Definition at line 5561 of file classdef.cpp.
References ClassDef::baseClasses(), ClassDef::categoryOf(), minClassDistance(), Definition::name(), and warn_uncond.
Referenced by ClassDefImpl::getMemberByName(), and minClassDistance().
| const ClassDef * toClassDef | ( | const Definition * | d | ) |
Definition at line 5480 of file classdef.cpp.
| ClassDef * toClassDef | ( | Definition * | d | ) |
Definition at line 5455 of file classdef.cpp.
Referenced by DocSets::addIndexItem(), ClassDefImpl::addInnerCompound(), NamespaceDefImpl::addInnerCompound(), MemberDefImpl::addListReference(), definitionToName(), findMemberLink(), findModuleDef(), findTagLessClasses(), findUsingDeclImports(), SymbolResolver::Private::followPath(), generateClassMemberLink(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), FTVHelp::Private::generateTree(), ClassDefAliasImpl::getCdAlias(), getDefs(), SymbolResolver::Private::getResolvedSymbol(), SymbolResolver::Private::getResolvedType(), SymbolResolver::Private::getResolvedTypeRec(), ClassDefImpl::getTemplateParameterLists(), SymbolResolver::Private::isAccessibleFrom(), SymbolResolver::Private::isAccessibleFromWithExpScope(), makeQualifiedNameWithTemplateParameters(), MemberDefImpl::moveTo(), DefinitionImpl::navigationPathAsString(), scopeIsTemplate(), searchTemplateSpecs(), SearchIndex::setCurrentDoc(), ClassDefMutable::setPrimaryConstructorParams(), updateCallContextForSmartPointer(), writeDefArgumentList(), writeJavasScriptSearchDataPage(), MemberDefImpl::writeMemberDocSimple(), writeObjCMethodCall(), MemberList::writeSimpleDocumentation(), and VhdlDocGen::writeVHDLTypeDocumentation().
| ClassDef * toClassDef | ( | DefinitionMutable * | d | ) |
Definition at line 5467 of file classdef.cpp.
References toDefinition().
| ClassDefMutable * toClassDefMutable | ( | Definition * | d | ) |
Definition at line 5492 of file classdef.cpp.
Referenced by addClassAndNestedClasses(), addClassToContext(), addClassToGroups(), ModuleDefImpl::addClassToModule(), ModuleManager::addClassToModule(), addMembersToMemberGroup(), ClassDefImpl::addMembersToTemplateInstance(), addMemberToGroups(), ClassDefImpl::addTypeConstraint(), applyToAllDefinitions(), buildCompleteMemberLists(), computeMemberReferences(), computeTemplateClassRelations(), VhdlDocGen::computeVhdlComponentRelations(), ClassDefImpl::countInheritedDecMembers(), countMembers(), createTagLessInstance(), createTemplateInstanceMembers(), ClassDefImpl::deepCopy(), distributeClassGroupRelations(), distributeMemberGroupDocumentation(), findClassRelation(), findSectionsInDocumentation(), findTemplateInstanceRelation(), findUsedClassesForClass(), findUsingDeclarations(), findUsingDeclImports(), generateClassDocs(), generateClassOrGlobalLink(), generateNamespaceClassDocs(), MemberDefImpl::getClassDefMutable(), getClassMutable(), ClassDefImpl::hideDerivedVariablesInPython(), insertMemberAlias(), ClassDefImpl::insertTemplateInstance(), ClassDefImpl::insertUsedFile(), ClassDefImpl::internalInsertMember(), mergeCategories(), ClassDefImpl::mergeCategory(), ClassDefImpl::mergeMembers(), ClassDefImpl::mergeMembersFromBaseClasses(), SymbolResolver::resolveClassMutable(), resolveClassNestingRelations(), setAnonymousEnumType(), ClassDefImpl::setGroupDefForAllMembers(), ClassDefMutable::setPrimaryConstructorParams(), sortMemberLists(), ClassDefImpl::writeInheritedMemberDeclarations(), and writeTagFile().