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