|
Doxygen
|
#include <memory>#include <vector>#include <unordered_set>#include "containers.h"#include "definition.h"#include "arguments.h"#include "membergroup.h"#include "configvalues.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, int 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 81 of file classdef.h.
| using ClassDefSet = std::unordered_set<const ClassDef*> |
Definition at line 95 of file classdef.h.
| using TemplateInstanceList = std::vector<TemplateInstanceDef> |
Definition at line 91 of file classdef.h.
| using TemplateNameMap = std::map<std::string,int> |
Definition at line 93 of file classdef.h.
| bool classHasVisibleChildren | ( | const ClassDef * | cd | ) |
Definition at line 5518 of file classdef.cpp.
References ClassDef::baseClasses(), classHasVisibleChildren(), Definition::getLanguage(), and ClassDef::subClasses().
Referenced by classHasVisibleChildren(), writeClassTreeForList(), and writeClassTreeToOutput().
| bool classHasVisibleRoot | ( | const BaseClassList & | bcl | ) |
Definition at line 5507 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 5577 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 5543 of file classdef.cpp.
References classVisibleInIndex(), Config_getBool, Definition::isLinkable(), and Definition::isLinkableInProject().
Referenced by classVisibleInIndex(), and writeClassTree().
| std::unique_ptr< ClassDef > createClassDef | ( | const DString & | fileName, |
| int | startLine, | ||
| int | 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 573 of file classdef.cpp.
References createClassDef().
Referenced by addClassToContext(), createClassDef(), createTagLessInstance(), findClassRelation(), findUsedClassesForClass(), findUsingDeclarations(), and ClassDefMutable::setPrimaryConstructorParams().
| std::unique_ptr< ClassDef > createClassDefAlias | ( | const Definition * | newScope, |
| const ClassDef * | cd ) |
Definition at line 799 of file classdef.cpp.
References createClassDefAlias().
Referenced by createClassDefAlias(), 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 5501 of file classdef.cpp.
References Doxygen::classLinkedMap, DString::empty(), LinkedMap< T, Hash, KeyEqual, Map >::find(), and getClass().
Referenced by addVariable(), buildScopeFromQualifiedName(), extractNamespaceName(), findClassWithinClassContext(), findEnumDocumentation(), findEnums(), findMember(), findUsingDeclarations(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateMemberLink(), getClass(), getClassMutable(), getScopeDefs(), getTemplateArgumentsFromName(), DocParser::handleLinkedWord(), insertTemplateSpecifierInScope(), MemberDefImpl::isDocumentedFriendClass(), linkifyText(), SymbolResolver::resolveClass(), resolveLink(), resolveRef(), setCallContextForVar(), ClassDefMutable::setPrimaryConstructorParams(), stripTemplateSpecifiersFromScope(), and MemberDefImpl::writeDeclaration().
|
inline |
Definition at line 470 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 5553 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 5472 of file classdef.cpp.
References toClassDef().
| ClassDef * toClassDef | ( | Definition * | d | ) |
Definition at line 5447 of file classdef.cpp.
References toClassDef().
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(), toClassDef(), toClassDef(), toClassDef(), updateCallContextForSmartPointer(), writeDefArgumentList(), writeJavasScriptSearchDataPage(), MemberDefImpl::writeMemberDocSimple(), writeObjCMethodCall(), MemberList::writeSimpleDocumentation(), and VhdlDocGen::writeVHDLTypeDocumentation().
| ClassDef * toClassDef | ( | DefinitionMutable * | d | ) |
Definition at line 5459 of file classdef.cpp.
References toClassDef(), and toDefinition().
| ClassDefMutable * toClassDefMutable | ( | Definition * | d | ) |
Definition at line 5484 of file classdef.cpp.
References toClassDefMutable().
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(), toClassDefMutable(), ClassDefImpl::writeInheritedMemberDeclarations(), and writeTagFile().