1 //===--- ASTFwd.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 /// \file
10 /// Forward declaration of all AST node types.
11 ///
12 //===-------------------------------------------------------------===//
13 
14 #ifndef LLVM_CLANG_AST_ASTFWD_H
15 #define LLVM_CLANG_AST_ASTFWD_H
16 
17 namespace clang {
18 
19 class Decl;
20 #define DECL(DERIVED, BASE) class DERIVED##Decl;
21 #include "clang/AST/DeclNodes.inc"
22 class Stmt;
23 #define STMT(DERIVED, BASE) class DERIVED;
24 #include "clang/AST/StmtNodes.inc"
25 class Type;
26 #define TYPE(DERIVED, BASE) class DERIVED##Type;
27 #include "clang/AST/TypeNodes.inc"
28 class CXXCtorInitializer;
29 class OMPClause;
30 #define GEN_CLANG_CLAUSE_CLASS
31 #define CLAUSE_CLASS(Enum, Str, Class) class Class;
32 #include "llvm/Frontend/OpenMP/OMP.inc"
33 
34 } // end namespace clang
35 
36 #endif
37