9#ifndef LLVM_CLANG_SEMA_HEURISTICRESOLVER_H
10#define LLVM_CLANG_SEMA_HEURISTICRESOLVER_H
20class CXXDependentScopeMemberExpr;
22class DependentScopeDeclRefExpr;
25class UnresolvedUsingValueDecl;
51 std::vector<const NamedDecl *>
53 std::vector<const NamedDecl *>
55 std::vector<const NamedDecl *>
57 std::vector<const NamedDecl *>
59 std::vector<const NamedDecl *>
61 std::vector<const NamedDecl *>
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
Represents a C++ member access expression where the actual member referenced could not be resolved be...
CallExpr - Represents a function call (C99 6.5.2.2, C++ [expr.call]).
Represents a qualified type name for which the type name is dependent.
A qualified reference to a name whose declaration cannot yet be resolved.
Represents a template specialization type whose template cannot be resolved, e.g.
std::vector< const NamedDecl * > resolveDeclRefExpr(const DependentScopeDeclRefExpr *RE) const
const QualType getPointeeType(QualType T) const
std::vector< const NamedDecl * > resolveMemberExpr(const CXXDependentScopeMemberExpr *ME) const
QualType resolveNestedNameSpecifierToType(const NestedNameSpecifier *NNS) const
std::vector< const NamedDecl * > resolveCalleeOfCallExpr(const CallExpr *CE) const
std::vector< const NamedDecl * > resolveTypeOfCallExpr(const CallExpr *CE) const
std::vector< const NamedDecl * > resolveUsingValueDecl(const UnresolvedUsingValueDecl *UUVD) const
std::vector< const NamedDecl * > resolveTemplateSpecializationType(const DependentTemplateSpecializationType *DTST) const
HeuristicResolver(ASTContext &Ctx)
std::vector< const NamedDecl * > resolveDependentNameType(const DependentNameType *DNT) const
Represents a C++ nested name specifier, such as "\::std::vector<int>::".
A (possibly-)qualified type.
Represents a dependent using declaration which was not marked with typename.
The JSON file list parser is used to communicate input to InstallAPI.
const FunctionProtoType * T