Chris Lattner | f42cce7 | 2006-10-25 04:09:21 +0000 | [diff] [blame] | 1 | //===--- Stmt.cpp - Statement AST Node Implementation ---------------------===// |
| 2 | // |
| 3 | // The LLVM Compiler Infrastructure |
| 4 | // |
| 5 | // This file was developed by Chris Lattner and is distributed under |
| 6 | // the University of Illinois Open Source License. See LICENSE.TXT for details. |
| 7 | // |
| 8 | //===----------------------------------------------------------------------===// |
| 9 | // |
| 10 | // This file implements the Stmt class and statement subclasses. |
| 11 | // |
| 12 | //===----------------------------------------------------------------------===// |
| 13 | |
| 14 | #include "clang/AST/Stmt.h" |
| 15 | #include "clang/AST/Expr.h" |
Chris Lattner | 5e9a878 | 2006-11-04 06:21:51 +0000 | [diff] [blame] | 16 | #include "clang/AST/StmtVisitor.h" |
Chris Lattner | f42cce7 | 2006-10-25 04:09:21 +0000 | [diff] [blame] | 17 | using namespace llvm; |
| 18 | using namespace clang; |
| 19 | |
Chris Lattner | 9ea960a | 2006-11-04 07:16:04 +0000 | [diff] [blame] | 20 | #define MAKE_VISITOR(CLASS) \ |
| 21 | void CLASS::visit(StmtVisitor &V) { return V.Visit##CLASS(this); } |
Chris Lattner | e5cca06 | 2006-10-25 04:29:46 +0000 | [diff] [blame] | 22 | |
Chris Lattner | 9ea960a | 2006-11-04 07:16:04 +0000 | [diff] [blame] | 23 | MAKE_VISITOR(Stmt) |
| 24 | MAKE_VISITOR(CompoundStmt) |
| 25 | MAKE_VISITOR(IfStmt) |
Chris Lattner | 85ed873 | 2006-11-04 20:40:44 +0000 | [diff] [blame^] | 26 | MAKE_VISITOR(WhileStmt) |
| 27 | MAKE_VISITOR(DoStmt) |
Chris Lattner | 71e23ce | 2006-11-04 20:18:38 +0000 | [diff] [blame] | 28 | MAKE_VISITOR(ForStmt) |
Chris Lattner | 9ea960a | 2006-11-04 07:16:04 +0000 | [diff] [blame] | 29 | MAKE_VISITOR(ReturnStmt) |
Chris Lattner | 5e9a878 | 2006-11-04 06:21:51 +0000 | [diff] [blame] | 30 | |
Chris Lattner | 9ea960a | 2006-11-04 07:16:04 +0000 | [diff] [blame] | 31 | #undef MAKE_VISITOR |