1//===-- ClangForward.h ------------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef liblldb_ClangForward_h_
10#define liblldb_ClangForward_h_
11
12
13#if defined(__cplusplus)
14
15namespace clang {
16namespace Builtin {
17class Context;
18}
19
20class ASTConsumer;
21class ASTContext;
22class ASTRecordLayout;
23class AddrLabelExpr;
24class AnalyzerOptions;
25class BinaryOperator;
26class ClassTemplateDecl;
27class ClassTemplateSpecializationDecl;
28class CodeGenOptions;
29class CodeGenerator;
30class CompilerInstance;
31class CompoundStmt;
32class CXXBaseSpecifier;
33class CXXBoolLiteralExpr;
34class CXXFunctionalCastExpr;
35class CXXMethodDecl;
36class CXXNamedCastExpr;
37class CXXRecordDecl;
38class CXXThisExpr;
39class CharacterLiteral;
40class CompoundAssignOperator;
41class Decl;
42class DeclarationName;
43class DeclaratorDecl;
44class DeclContext;
45class DeclRefExpr;
46class DeclStmt;
47class DependencyOutputOptions;
48class Diagnostic;
49class DiagnosticConsumer;
50class DiagnosticsEngine;
51class DiagnosticOptions;
52class EnumDecl;
53class EnumConstantDecl;
54class Expr;
55class ExternalASTSource;
56class ExtVectorElementExpr;
57class FieldDecl;
58class FileManager;
59class FileSystemOptions;
60class FloatingLiteral;
61class FrontendOptions;
62class FunctionDecl;
63class FunctionTemplateDecl;
64class FunctionTemplateSpecializationInfo;
65class GotoStmt;
66class HeaderSearchOptions;
67class IdentifierInfo;
68class IdentifierTable;
69class IntegerLiteral;
70class LabelStmt;
71class LangOptions;
72class MacroDirective;
73class MemberExpr;
74class Module;
75class NamedDecl;
76class NamespaceDecl;
77class NonTypeTemplateParmDecl;
78class ObjCEncodeExpr;
79class ObjCImplicitSetterGetterRefExpr;
80class ObjCInterfaceDecl;
81class ObjCIvarDecl;
82class ObjCIvarRefExpr;
83class ObjCMessageExpr;
84class ObjCMethodDecl;
85class ObjCPropertyRefExpr;
86class ObjCProtocolDecl;
87class ObjCProtocolExpr;
88class ObjCSelectorExpr;
89class ObjCSuperExpr;
90class ParenExpr;
91class ParmVarDecl;
92class PredefinedExpr;
93class PreprocessorOptions;
94class PreprocessorOutputOptions;
95class QualType;
96class QualifiedNameType;
97class RecordDecl;
98class SelectorTable;
99class SizeOfAlignOfExpr;
100class SourceLocation;
101class SourceManager;
102class Stmt;
103class StmtIteratorBase;
104class StringLiteral;
105class TagDecl;
106class TargetInfo;
107class TargetOptions;
108class TemplateArgument;
109class TemplateDecl;
110class TemplateParameterList;
111class TemplateTemplateParmDecl;
112class TemplateTypeParmDecl;
113class TextDiagnosticBuffer;
114class TranslationUnitDecl;
115class Type;
116class TypeDecl;
117class TypedefDecl;
118class TypesCompatibleExpr;
119class UnaryOperator;
120class ValueDecl;
121class VarDecl;
122struct PrintingPolicy;
123}
124
125namespace llvm {
126class APInt;
127class APSInt;
128class LLVMContext;
129class ExecutionEngine;
130}
131
132#endif // #if defined(__cplusplus)
133#endif // liblldb_ClangForward_h_
134