Doxygen
|
Helper class to find a class definition or check if A symbol is accessible in a given scope. 更多...
#include <symbolresolver.h>
类 | |
struct | Private |
Public 成员函数 | |
SymbolResolver (const FileDef *fileScope=0) | |
~SymbolResolver () | |
const ClassDef * | resolveClass (const Definition *scope, const QCString &name, bool maybeUnlinkable=false, bool mayBeHidden=false) |
Find the class definition matching name within the scope set. 更多... | |
ClassDefMutable * | resolveClassMutable (const Definition *scope, const QCString &name, bool mayBeUnlinkable=false, bool mayBeHidden=false) |
Wrapper around resolveClass that returns a mutable interface to the class object or a nullptr if the symbol is immutable. 更多... | |
int | isAccessibleFrom (const Definition *scope, const Definition *item) |
Checks if symbol item is accessible from within scope. 更多... | |
int | isAccessibleFromWithExpScope (const Definition *scope, const Definition *item, const QCString &explicitScopePart) |
Check if symbol item is accessible from within scope, where it has to match the explicitScopePart. 更多... | |
void | setFileScope (const FileDef *fd) |
Sets or updates the file scope using when resolving symbols. 更多... | |
const MemberDef * | getTypedef () const |
In case a call to resolveClass() resolves to a type member (e.g. 更多... | |
QCString | getTemplateSpec () const |
In case a call to resolveClass() points to a template specialization, the template part is return via this method. 更多... | |
QCString | getResolvedType () const |
In case a call to resolveClass() points to a typedef or using declaration. 更多... | |
Private 属性 | |
std::unique_ptr< Private > | p |
Helper class to find a class definition or check if A symbol is accessible in a given scope.
在文件 symbolresolver.h 第 30 行定义.
|
explicit |
在文件 symbolresolver.cpp 第 1023 行定义.
SymbolResolver::~SymbolResolver | ( | ) |
在文件 symbolresolver.cpp 第 1028 行定义.
QCString SymbolResolver::getResolvedType | ( | ) | const |
In case a call to resolveClass() points to a typedef or using declaration.
The type name it resolved to is returned via this method.
在文件 symbolresolver.cpp 第 1113 行定义.
引用了 p.
被这些函数引用 getCanonicalTypeForIdentifier().
QCString SymbolResolver::getTemplateSpec | ( | ) | const |
In case a call to resolveClass() points to a template specialization, the template part is return via this method.
在文件 symbolresolver.cpp 第 1108 行定义.
引用了 p.
被这些函数引用 findClassRelation() , 以及 getCanonicalTypeForIdentifier().
const MemberDef * SymbolResolver::getTypedef | ( | ) | const |
In case a call to resolveClass() resolves to a type member (e.g.
an enum) this method will return it.
在文件 symbolresolver.cpp 第 1103 行定义.
引用了 p.
被这些函数引用 findClassRelation(), getCanonicalTypeForIdentifier(), getDefs() , 以及 linkifyText().
int SymbolResolver::isAccessibleFrom | ( | const Definition * | scope, |
const Definition * | item | ||
) |
Checks if symbol item is accessible from within scope.
在文件 symbolresolver.cpp 第 1082 行定义.
引用了 p.
被这些函数引用 SymbolResolver::Private::isAccessibleFrom(), SymbolResolver::Private::isAccessibleFromWithExpScope() , 以及 resolveTypeDef().
int SymbolResolver::isAccessibleFromWithExpScope | ( | const Definition * | scope, |
const Definition * | item, | ||
const QCString & | explicitScopePart | ||
) |
Check if symbol item is accessible from within scope, where it has to match the explicitScopePart.
在文件 symbolresolver.cpp 第 1089 行定义.
引用了 p.
被这些函数引用 getMemberFromSymbol(), SymbolResolver::Private::getResolvedSymbol(), SymbolResolver::Private::isAccessibleFromWithExpScope() , 以及 SymbolResolver::Private::substTypedef().
const ClassDef * SymbolResolver::resolveClass | ( | const Definition * | scope, |
const QCString & | name, | ||
bool | maybeUnlinkable = false , |
||
bool | mayBeHidden = false |
||
) |
Find the class definition matching name within the scope set.
scope | The scope to search from. |
name | The name of the symbol. |
maybeUnlinkable | include unlinkable symbols in the search. |
mayBeHidden | include hidden symbols in the search. |
在文件 symbolresolver.cpp 第 1033 行定义.
引用了 Config_getBool, Definition::definitionType(), getClass(), Definition::getLanguage(), Doxygen::globalScope, Definition::isHidden(), ClassDef::isLinkable(), p, SrcLangExt_Java, Definition::TypeClass , 以及 Definition::TypeNamespace.
被这些函数引用 findClassDefinition(), findClassWithinClassContext(), findUsingDeclImports(), getCanonicalTypeForIdentifier(), getDefs(), isVarWithConstructor(), linkifyText(), normalizeNonTemplateArgumentsInString() , 以及 resolveClassMutable().
|
inline |
Wrapper around resolveClass that returns a mutable interface to the class object or a nullptr if the symbol is immutable.
在文件 symbolresolver.h 第 55 行定义.
引用了 resolveClass() , 以及 toClassDefMutable().
被这些函数引用 ClassDefImpl::addTypeConstraint(), findClassRelation(), findUsedClassesForClass() , 以及 findUsingDeclarations().
void SymbolResolver::setFileScope | ( | const FileDef * | fd | ) |
Sets or updates the file scope using when resolving symbols.
在文件 symbolresolver.cpp 第 1098 行定义.
引用了 p.
|
private |
在文件 symbolresolver.h 第 101 行定义.
被这些函数引用 getResolvedType(), getTemplateSpec(), getTypedef(), isAccessibleFrom(), isAccessibleFromWithExpScope(), resolveClass() , 以及 setFileScope().