clang API Documentation

Classes | Namespaces | Defines
StmtVisitor.h File Reference
#include "clang/AST/ExprCXX.h"
#include "clang/AST/ExprObjC.h"
#include "clang/AST/StmtCXX.h"
#include "clang/AST/StmtObjC.h"
#include "clang/AST/StmtOpenMP.h"
#include "clang/AST/StmtNodes.inc"
#include "clang/Basic/OpenMPKinds.def"
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 >
class  clang::StmtVisitor< ImplClass, RetTy >
class  clang::ConstStmtVisitor< ImplClass, RetTy >
class  clang::OMPClauseVisitorBase< ImplClass, Ptr, RetTy >
 This class implements a simple visitor for OMPClause subclasses. More...
class  clang::OMPClauseVisitor< ImplClass, RetTy >
class  clang::ConstOMPClauseVisitor< ImplClass, RetTy >

Namespaces

namespace  clang

Defines

#define PTR(CLASS)   typename Ptr<CLASS>::type
#define DISPATCH(NAME, CLASS)   return static_cast<ImplClass*>(this)->Visit ## NAME(static_cast<PTR(CLASS)>(S))
#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) { DISPATCH(PARENT, PARENT); }
#define BINOP_FALLBACK(NAME)
#define CAO_FALLBACK(NAME)
#define UNARYOP_FALLBACK(NAME)
#define PTR(CLASS)   typename Ptr<CLASS>::type
#define DISPATCH(CLASS)   return static_cast<ImplClass*>(this)->Visit##CLASS(static_cast<PTR(CLASS)>(S))
#define OPENMP_CLAUSE(Name, Class)   RetTy Visit ## Class (PTR(Class) S) { DISPATCH(Class); }
#define OPENMP_CLAUSE(Name, Class)   case OMPC_ ## Name : return Visit ## Class(static_cast<PTR(Class)>(S));

Define Documentation

#define ABSTRACT_STMT (   STMT)
#define BINOP_FALLBACK (   NAME)
Value:
RetTy VisitBin ## NAME(PTR(BinaryOperator) S) { \
    DISPATCH(BinaryOperator, BinaryOperator); \
  }

Definition at line 117 of file StmtVisitor.h.

#define CAO_FALLBACK (   NAME)
Value:
RetTy VisitBin ## NAME(PTR(CompoundAssignOperator) S) { \
    DISPATCH(CompoundAssignOperator, CompoundAssignOperator); \
  }

Referenced by clang::StmtVisitorBase< make_ptr, ASTNodeImporter, Stmt * >::BINOP_FALLBACK().

#define DISPATCH (   NAME,
  CLASS 
)    return static_cast<ImplClass*>(this)->Visit ## NAME(static_cast<PTR(CLASS)>(S))

Definition at line 194 of file StmtVisitor.h.

#define DISPATCH (   CLASS)    return static_cast<ImplClass*>(this)->Visit##CLASS(static_cast<PTR(CLASS)>(S))

Definition at line 194 of file StmtVisitor.h.

#define OPENMP_CLAUSE (   Name,
  Class 
)    RetTy Visit ## Class (PTR(Class) S) { DISPATCH(Class); }

Definition at line 197 of file StmtVisitor.h.

#define OPENMP_CLAUSE (   Name,
  Class 
)    case OMPC_ ## Name : return Visit ## Class(static_cast<PTR(Class)>(S));

Definition at line 197 of file StmtVisitor.h.

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

Definition at line 193 of file StmtVisitor.h.

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

Definition at line 193 of file StmtVisitor.h.

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

Definition at line 111 of file StmtVisitor.h.

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

Definition at line 111 of file StmtVisitor.h.

#define UNARYOP_FALLBACK (   NAME)
Value:
RetTy VisitUnary ## NAME(PTR(UnaryOperator) S) { \
    DISPATCH(UnaryOperator, UnaryOperator);    \
  }

Referenced by clang::StmtVisitorBase< make_ptr, ASTNodeImporter, Stmt * >::BINOP_FALLBACK().