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 20 namespace 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 ClassTemplateDecl; 35 class ClassTemplateSpecializationDecl; 36 class CodeGenOptions; 37 class CodeGenerator; 38 class CompilerInstance; 39 class CompoundStmt; 40 class CXXBaseSpecifier; 41 class CXXBoolLiteralExpr; 42 class CXXFunctionalCastExpr; 43 class CXXMethodDecl; 44 class CXXNamedCastExpr; 45 class CXXRecordDecl; 46 class CXXThisExpr; 47 class CharacterLiteral; 48 class CompoundAssignOperator; 49 class Decl; 50 class DeclarationName; 51 class DeclaratorDecl; 52 class DeclContext; 53 class DeclRefExpr; 54 class DeclStmt; 55 class DependencyOutputOptions; 56 class Diagnostic; 57 class DiagnosticConsumer; 58 class DiagnosticsEngine; 59 class DiagnosticOptions; 60 class EnumDecl; 61 class Expr; 62 class ExternalASTSource; 63 class ExtVectorElementExpr; 64 class FieldDecl; 65 class FileManager; 66 class FileSystemOptions; 67 class FloatingLiteral; 68 class FrontendOptions; 69 class FunctionDecl; 70 class FunctionTemplateDecl; 71 class FunctionTemplateSpecializationInfo; 72 class GotoStmt; 73 class HeaderSearchOptions; 74 class IdentifierTable; 75 class IntegerLiteral; 76 class LabelStmt; 77 class LangOptions; 78 class MemberExpr; 79 class NamedDecl; 80 class NamespaceDecl; 81 class NonTypeTemplateParmDecl; 82 class ObjCEncodeExpr; 83 class ObjCImplicitSetterGetterRefExpr; 84 class ObjCInterfaceDecl; 85 class ObjCIvarDecl; 86 class ObjCIvarRefExpr; 87 class ObjCMessageExpr; 88 class ObjCMethodDecl; 89 class ObjCPropertyRefExpr; 90 class ObjCProtocolDecl; 91 class ObjCProtocolExpr; 92 class ObjCSelectorExpr; 93 class ObjCSuperExpr; 94 class ParenExpr; 95 class ParmVarDecl; 96 class PredefinedExpr; 97 class PreprocessorOptions; 98 class PreprocessorOutputOptions; 99 class QualType; 100 class QualifiedNameType; 101 class RecordDecl; 102 class SelectorTable; 103 class SizeOfAlignOfExpr; 104 class SourceLocation; 105 class SourceManager; 106 class Stmt; 107 class StmtIteratorBase; 108 class StringLiteral; 109 class TagDecl; 110 class TargetInfo; 111 class TargetOptions; 112 class TemplateArgument; 113 class TemplateDecl; 114 class TemplateParameterList; 115 class TemplateTemplateParmDecl; 116 class TemplateTypeParmDecl; 117 class TextDiagnosticBuffer; 118 class TranslationUnitDecl; 119 class Type; 120 class TypeDecl; 121 class TypedefDecl; 122 class TypesCompatibleExpr; 123 class UnaryOperator; 124 class ValueDecl; 125 class VarDecl; 126 struct PrintingPolicy; 127 } 128 129 namespace llvm 130 { 131 class LLVMContext; 132 class ExecutionEngine; 133 } 134 135 #endif // #if defined(__cplusplus) 136 #endif // liblldb_ClangForward_h_ 137