clang  8.0.0svn
Classes | Namespaces | Macros
StmtVisitor.h File Reference
#include "clang/AST/ExprCXX.h"
#include "clang/AST/ExprObjC.h"
#include "clang/AST/ExprOpenMP.h"
#include "clang/AST/Stmt.h"
#include "clang/AST/StmtCXX.h"
#include "clang/AST/StmtObjC.h"
#include "clang/AST/StmtOpenMP.h"
#include "clang/Basic/LLVM.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include <utility>
#include "clang/AST/StmtNodes.inc"
Include dependency graph for StmtVisitor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  clang::make_ptr< T >
 
struct  clang::make_const_ptr< T >
 
class  clang::StmtVisitorBase< Ptr, ImplClass, RetTy, ParamTys >
 StmtVisitorBase - This class implements a simple visitor for Stmt subclasses. More...
 
class  clang::StmtVisitor< ImplClass, RetTy, ParamTys >
 StmtVisitor - This class implements a simple visitor for Stmt subclasses. More...
 
class  clang::ConstStmtVisitor< ImplClass, RetTy, ParamTys >
 ConstStmtVisitor - This class implements a simple visitor for Stmt subclasses. More...
 

Namespaces

 clang
 Dataflow Directional Tag Classes.
 

Macros

#define PTR(CLASS)   typename Ptr<CLASS>::type
 
#define DISPATCH(NAME, CLASS)
 
#define ABSTRACT_STMT(STMT)
 
#define STMT(CLASS, PARENT)   case Stmt::CLASS ## Class: DISPATCH(CLASS, CLASS);
 
#define STMT(CLASS, PARENT)   RetTy Visit ## CLASS(PTR(CLASS) S, ParamTys... P) { DISPATCH(PARENT, PARENT); }
 
#define BINOP_FALLBACK(NAME)
 
#define CAO_FALLBACK(NAME)
 
#define UNARYOP_FALLBACK(NAME)
 

Macro Definition Documentation

◆ ABSTRACT_STMT

#define ABSTRACT_STMT (   STMT)

◆ BINOP_FALLBACK

#define BINOP_FALLBACK (   NAME)
Value:
RetTy VisitBin ## NAME(PTR(BinaryOperator) S, ParamTys... P) { \
DISPATCH(BinaryOperator, BinaryOperator); \
}
StringRef P
#define PTR(CLASS)
Definition: StmtVisitor.h:41

Definition at line 125 of file StmtVisitor.h.

◆ CAO_FALLBACK

#define CAO_FALLBACK (   NAME)
Value:
RetTy VisitBin ## NAME(PTR(CompoundAssignOperator) S, ParamTys... P) { \
DISPATCH(CompoundAssignOperator, CompoundAssignOperator); \
}
StringRef P
#define PTR(CLASS)
Definition: StmtVisitor.h:41

◆ DISPATCH

#define DISPATCH (   NAME,
  CLASS 
)
Value:
return static_cast<ImplClass*>(this)->Visit ## NAME( \
static_cast<PTR(CLASS)>(S), std::forward<ParamTys>(P)...)
StringRef P
#define PTR(CLASS)
Definition: StmtVisitor.h:41

Definition at line 42 of file StmtVisitor.h.

◆ PTR

#define PTR (   CLASS)    typename Ptr<CLASS>::type

Definition at line 41 of file StmtVisitor.h.

◆ STMT [1/2]

#define STMT (   CLASS,
  PARENT 
)    case Stmt::CLASS ## Class: DISPATCH(CLASS, CLASS);

Definition at line 119 of file StmtVisitor.h.

◆ STMT [2/2]

#define STMT (   CLASS,
  PARENT 
)    RetTy Visit ## CLASS(PTR(CLASS) S, ParamTys... P) { DISPATCH(PARENT, PARENT); }

Definition at line 119 of file StmtVisitor.h.

◆ UNARYOP_FALLBACK

#define UNARYOP_FALLBACK (   NAME)
Value:
RetTy VisitUnary ## NAME(PTR(UnaryOperator) S, ParamTys... P) { \
DISPATCH(UnaryOperator, UnaryOperator); \
}
StringRef P
#define PTR(CLASS)
Definition: StmtVisitor.h:41