| clang 22.0.0git
    | 
| Functions | |
| std::string | getFullyQualifiedName (QualType QT, const ASTContext &Ctx, const PrintingPolicy &Policy, bool WithGlobalNsPrefix=false) | 
| Get the fully qualified name for a type. | |
| QualType | getFullyQualifiedType (QualType QT, const ASTContext &Ctx, bool WithGlobalNsPrefix=false) | 
| Generates a QualType that can be used to name the same type if used at the end of the current translation unit. | |
| NestedNameSpecifier | getFullyQualifiedDeclaredContext (const ASTContext &Ctx, const Decl *Decl, bool WithGlobalNsPrefix=false) | 
| Get the fully qualified name for the declared context of a declaration. | |
| static NestedNameSpecifier | createNestedNameSpecifier (const ASTContext &Ctx, const NamespaceDecl *Namesp, bool WithGlobalNsPrefix) | 
| Create a NestedNameSpecifier for Namesp and its enclosing scopes. | |
| static NestedNameSpecifier | createNestedNameSpecifier (const ASTContext &Ctx, const TypeDecl *TD, bool FullyQualify, bool WithGlobalNsPrefix) | 
| Create a NestedNameSpecifier for TagDecl and its enclosing scopes. | |
| static NestedNameSpecifier | createNestedNameSpecifierForScopeOf (const ASTContext &Ctx, const Decl *Decl, bool FullyQualified, bool WithGlobalNsPrefix) | 
| Create a nested name specifier for the declaring context of the type. | |
| static NestedNameSpecifier | getFullyQualifiedNestedNameSpecifier (const ASTContext &Ctx, NestedNameSpecifier Scope, bool WithGlobalNsPrefix) | 
| Return a fully qualified version of this name specifier. | |
| static bool | getFullyQualifiedTemplateName (const ASTContext &Ctx, TemplateName &TName, bool WithGlobalNsPrefix) | 
| static bool | getFullyQualifiedTemplateArgument (const ASTContext &Ctx, TemplateArgument &Arg, bool WithGlobalNsPrefix) | 
| static const Type * | getFullyQualifiedTemplateType (const ASTContext &Ctx, const TagType *TSTRecord, ElaboratedTypeKeyword Keyword, NestedNameSpecifier Qualifier, bool WithGlobalNsPrefix) | 
| static const Type * | getFullyQualifiedTemplateType (const ASTContext &Ctx, const TemplateSpecializationType *TST, bool WithGlobalNsPrefix) | 
| static NestedNameSpecifier | createOuterNNS (const ASTContext &Ctx, const Decl *D, bool FullyQualify, bool WithGlobalNsPrefix) | 
| static NestedNameSpecifier | createNestedNameSpecifierForScopeOf (const ASTContext &Ctx, const Type *TypePtr, bool FullyQualified, bool WithGlobalNsPrefix) | 
| Create a nested name specifier for the declaring context of the type. | |
| 
 | static | 
Create a NestedNameSpecifier for Namesp and its enclosing scopes.
| [in] | Ctx | - the AST Context to be used. | 
| [in] | Namesp | - the NamespaceDecl for which a NestedNameSpecifier is requested. | 
| [in] | WithGlobalNsPrefix | - Indicate whether the global namespace specifier "::" should be prepended or not. | 
Definition at line 334 of file QualTypeNames.cpp.
References createOuterNNS().
Referenced by createNestedNameSpecifierForScopeOf(), createOuterNNS(), and getFullyQualifiedNestedNameSpecifier().
| 
 | static | 
Create a NestedNameSpecifier for TagDecl and its enclosing scopes.
| [in] | Ctx | - the AST Context to be used. | 
| [in] | TD | - the TagDecl for which a NestedNameSpecifier is requested. | 
| [in] | FullyQualify | - Convert all template arguments into fully qualified names. | 
| [in] | WithGlobalNsPrefix | - Indicate whether the global namespace specifier "::" should be prepended or not. | 
Definition at line 349 of file QualTypeNames.cpp.
References createOuterNNS(), getFullyQualifiedTemplateType(), clang::ASTContext::getTypeDeclType(), clang::QualType::getTypePtr(), and clang::None.
| 
 | static | 
Create a nested name specifier for the declaring context of the type.
Definition at line 250 of file QualTypeNames.cpp.
References createNestedNameSpecifier(), clang::Decl::getDeclContext(), clang::NestedNameSpecifier::getGlobal(), clang::DeclContext::getRedeclContext(), clang::isa(), clang::Decl::isTemplateParameter(), and clang::DeclContext::isTranslationUnit().
Referenced by createNestedNameSpecifierForScopeOf(), getFullyQualifiedDeclaredContext(), getFullyQualifiedTemplateName(), and getFullyQualifiedType().
| 
 | static | 
Create a nested name specifier for the declaring context of the type.
Definition at line 308 of file QualTypeNames.cpp.
References createNestedNameSpecifierForScopeOf(), and clang::Type::getAsCXXRecordDecl().
| 
 | static | 
Definition at line 192 of file QualTypeNames.cpp.
References createNestedNameSpecifier(), clang::Decl::getDeclContext(), clang::NestedNameSpecifier::getGlobal(), and clang::DeclContext::isTranslationUnit().
Referenced by createNestedNameSpecifier(), and createNestedNameSpecifier().
| NestedNameSpecifier clang::TypeName::getFullyQualifiedDeclaredContext | ( | const ASTContext & | Ctx, | 
| const Decl * | Decl, | ||
| bool | WithGlobalNsPrefix = false ) | 
Get the fully qualified name for the declared context of a declaration.
| [in] | Ctx | - the ASTContext to be used. | 
| [in] | Decl | - the declaration for which to get the fully qualified name. | 
| [in] | WithGlobalNsPrefix | - If true, then the global namespace specifier "::" will be prepended to the fully qualified name. | 
Definition at line 497 of file QualTypeNames.cpp.
References createNestedNameSpecifierForScopeOf().
| std::string clang::TypeName::getFullyQualifiedName | ( | QualType | QT, | 
| const ASTContext & | Ctx, | ||
| const PrintingPolicy & | Policy, | ||
| bool | WithGlobalNsPrefix = false ) | 
Get the fully qualified name for a type.
This includes full qualification of all template parameters etc.
| [in] | QT | - the type for which the fully qualified name will be returned. | 
| [in] | Ctx | - the ASTContext to be used. | 
| [in] | WithGlobalNsPrefix | - If true, then the global namespace specifier "::" will be prepended to the fully qualified name. | 
Definition at line 489 of file QualTypeNames.cpp.
References clang::QualType::getAsString(), and getFullyQualifiedType().
| 
 | static | 
Return a fully qualified version of this name specifier.
Definition at line 217 of file QualTypeNames.cpp.
References createNestedNameSpecifier(), clang::Type::getAs(), clang::NestedNameSpecifier::Global, clang::NestedNameSpecifier::MicrosoftSuper, clang::NestedNameSpecifier::Namespace, clang::NestedNameSpecifier::Null, and clang::NestedNameSpecifier::Type.
Referenced by getFullyQualifiedTemplateName(), and getFullyQualifiedType().
| 
 | static | 
Definition at line 93 of file QualTypeNames.cpp.
References clang::TemplateArgument::getAsTemplate(), clang::TemplateArgument::getAsType(), getFullyQualifiedTemplateName(), getFullyQualifiedType(), clang::TemplateArgument::getKind(), clang::TemplateArgument::Template, and clang::TemplateArgument::Type.
Referenced by getFullyQualifiedTemplateType(), and getFullyQualifiedTemplateType().
| 
 | static | 
Definition at line 54 of file QualTypeNames.cpp.
References createNestedNameSpecifierForScopeOf(), clang::TemplateName::getAsQualifiedTemplateName(), clang::TemplateName::getAsTemplateDecl(), clang::TemplateName::getAsUsingShadowDecl(), getFullyQualifiedNestedNameSpecifier(), clang::ASTContext::getQualifiedTemplateName(), clang::QualifiedTemplateName::getQualifier(), clang::QualifiedTemplateName::hasTemplateKeyword(), and clang::TemplateName.
Referenced by getFullyQualifiedTemplateArgument(), and getFullyQualifiedTemplateType().
| 
 | static | 
Definition at line 119 of file QualTypeNames.cpp.
References getFullyQualifiedTemplateArgument(), clang::ASTContext::getQualifiedTemplateName(), clang::ASTContext::getTagType(), clang::ASTContext::getTemplateSpecializationType(), clang::QualType::getTypePtr(), clang::Keyword, clang::TemplateArgumentList::size(), and clang::TemplateName.
Referenced by createNestedNameSpecifier(), and getFullyQualifiedType().
| 
 | static | 
Definition at line 165 of file QualTypeNames.cpp.
References getFullyQualifiedTemplateArgument(), getFullyQualifiedTemplateName(), clang::ASTContext::getTemplateSpecializationType(), and clang::QualType::getTypePtr().
| QualType clang::TypeName::getFullyQualifiedType | ( | QualType | QT, | 
| const ASTContext & | Ctx, | ||
| bool | WithGlobalNsPrefix = false ) | 
Generates a QualType that can be used to name the same type if used at the end of the current translation unit.
Return the fully qualified type, including fully-qualified versions of any template parameters.
This ignores issues such as type shadowing.
| [in] | QT | - the type for which the fully qualified type will be returned. | 
| [in] | Ctx | - the ASTContext to be used. | 
| [in] | WithGlobalNsPrefix | - Indicate whether the global namespace specifier "::" should be prepended or not. | 
Definition at line 370 of file QualTypeNames.cpp.
References clang::cast(), createNestedNameSpecifierForScopeOf(), clang::Type::getAs(), clang::ASTContext::getAttributedType(), getFullyQualifiedNestedNameSpecifier(), getFullyQualifiedTemplateType(), getFullyQualifiedType(), clang::QualType::getLocalQualifiers(), clang::ASTContext::getLValueReferenceType(), clang::ASTContext::getMemberPointerType(), clang::Type::getPointeeType(), clang::ASTContext::getPointerType(), clang::ASTContext::getQualifiedType(), clang::QualType::getQualifiers(), clang::ASTContext::getRValueReferenceType(), clang::ASTContext::getTypedefType(), clang::QualType::getTypePtr(), clang::isa(), and clang::T.
Referenced by clang::GetFullTypeName(), getFullyQualifiedName(), getFullyQualifiedTemplateArgument(), and getFullyQualifiedType().