clang-tools  10.0.0git
Namespaces | Functions
AST.cpp File Reference
#include "AST.h"
#include "FindTarget.h"
#include "SourceCode.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/ASTTypeTraits.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclBase.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/DeclarationName.h"
#include "clang/AST/NestedNameSpecifier.h"
#include "clang/AST/PrettyPrinter.h"
#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/AST/TemplateBase.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Index/USRGeneration.h"
#include "clang/Lex/Lexer.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/Optional.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ScopedPrinter.h"
#include "llvm/Support/raw_ostream.h"
#include <string>
#include <vector>
Include dependency graph for AST.cpp:

Go to the source code of this file.

Namespaces

 clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
 
 clang::clangd
 

Functions

bool clang::clangd::isImplicitTemplateInstantiation (const NamedDecl *D)
 Indicates if D is a template instantiation implicitly generated by the compiler, e.g. More...
 
bool clang::clangd::isExplicitTemplateSpecialization (const NamedDecl *D)
 Indicates if D is an explicit template specialization, e.g. More...
 
bool clang::clangd::isImplementationDetail (const Decl *D)
 Returns true if the declaration is considered implementation detail based on heuristics. More...
 
SourceLocation clang::clangd::nameLocation (const clang::Decl &D, const SourceManager &SM)
 Find the source location of the identifier for D. More...
 
std::string clang::clangd::printQualifiedName (const NamedDecl &ND)
 Returns the qualified name of ND. More...
 
static bool clang::clangd::isAnonymous (const DeclarationName &N)
 
NestedNameSpecifierLoc clang::clangd::getQualifierLoc (const NamedDecl &ND)
 Returns a nested name specifier loc of ND if it was present in the source, e.g. More...
 
std::string clang::clangd::printUsingNamespaceName (const ASTContext &Ctx, const UsingDirectiveDecl &D)
 Returns the name of the namespace inside the 'using namespace' directive, as written in the code. More...
 
std::string clang::clangd::printName (const ASTContext &Ctx, const NamedDecl &ND)
 Prints unqualified name of the decl for the purpose of displaying it to the user. More...
 
std::string clang::clangd::printTemplateSpecializationArgs (const NamedDecl &ND)
 Prints template arguments of a decl as written in the source code, including enclosing '<' and '>', e.g for a partial specialization like: template <typename u>=""> struct Foo<int, U> will return '<int, U>'. More...
 
std::string clang::clangd::printNamespaceScope (const DeclContext &DC)
 Returns the first enclosing namespace scope starting from DC. More...
 
llvm::Optional< SymbolID > clang::clangd::getSymbolID (const Decl *D)
 Gets the symbol ID for a declaration, if possible. More...
 
llvm::Optional< SymbolID > clang::clangd::getSymbolID (const llvm::StringRef MacroName, const MacroInfo *MI, const SourceManager &SM)
 Gets the symbol ID for a macro, if possible. More...
 
std::string clang::clangd::printType (const QualType QT, const DeclContext &CurContext)
 Returns a QualType as string. More...
 
QualType clang::clangd::declaredType (const TypeDecl *D)
 
llvm::Optional< QualType > clang::clangd::getDeducedType (ASTContext &, SourceLocation Loc)
 Retrieves the deduced type at a given location (auto, decltype). More...
 
std::string clang::clangd::getQualification (ASTContext &Context, const DeclContext *DestContext, SourceLocation InsertionPoint, const NamedDecl *ND)
 Gets the nested name specifier necessary for spelling ND in DestContext, at InsertionPoint. More...
 
std::string clang::clangd::getQualification (ASTContext &Context, const DeclContext *DestContext, const NamedDecl *ND, llvm::ArrayRef< std::string > VisibleNamespaces)
 This function uses the VisibleNamespaces to figure out if a shorter qualification is sufficient for ND, and ignores any using namespace directives. More...
 

Variable Documentation

◆ DeducedType

QualType DeducedType

Definition at line 414 of file AST.cpp.