clang 20.0.0git
Classes | Namespaces | Macros
AttrVisitor.h File Reference
#include "clang/AST/Attr.h"
#include "clang/Basic/AttrList.inc"

Go to the source code of this file.

Classes

class  clang::attrvisitor::Base< Ptr, ImplClass, RetTy, ParamTys >
 A simple visitor class that helps create attribute visitors. More...
 
class  clang::AttrVisitor< ImplClass, RetTy, ParamTys >
 A simple visitor class that helps create attribute visitors. More...
 
class  clang::ConstAttrVisitor< ImplClass, RetTy, ParamTys >
 A simple visitor class that helps create attribute visitors. More...
 

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::attrvisitor
 

Macros

#define PTR(CLASS)   typename Ptr<CLASS>::type
 
#define DISPATCH(NAME)    return static_cast<ImplClass *>(this)->Visit##NAME(static_cast<PTR(NAME)>(A))
 
#define ATTR(NAME)
 
#define ATTR(NAME)    RetTy Visit##NAME##Attr(PTR(NAME##Attr) A) { DISPATCH(Attr); }
 

Macro Definition Documentation

◆ ATTR [1/2]

#define ATTR (   NAME)
Value:
case attr::NAME: \
DISPATCH(NAME##Attr);

Definition at line 44 of file AttrVisitor.h.

◆ ATTR [2/2]

#define ATTR (   NAME)     RetTy Visit##NAME##Attr(PTR(NAME##Attr) A) { DISPATCH(Attr); }

Definition at line 44 of file AttrVisitor.h.

◆ DISPATCH

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

Definition at line 28 of file AttrVisitor.h.

◆ PTR

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

Definition at line 27 of file AttrVisitor.h.