clang API Documentation

Defines | Functions
StmtPrinter.cpp File Reference
#include "clang/AST/ASTContext.h"
#include "clang/AST/Attr.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprCXX.h"
#include "clang/AST/PrettyPrinter.h"
#include "clang/AST/StmtVisitor.h"
#include "clang/Basic/CharInfo.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/Format.h"
#include "clang/AST/StmtNodes.inc"
#include "clang/Basic/OpenMPKinds.def"
#include "clang/Basic/Builtins.def"
#include "clang/Basic/OperatorKinds.def"
#include "clang/Basic/TokenKinds.def"
Include dependency graph for StmtPrinter.cpp:

Go to the source code of this file.

Defines

#define ABSTRACT_STMT(CLASS)
#define STMT(CLASS, PARENT)   void Visit##CLASS(CLASS *Node);
#define OPENMP_CLAUSE(Name, Class)   void Visit##Class(Class *S);
#define BUILTIN(ID, TYPE, ATTRS)
#define ATOMIC_BUILTIN(ID, TYPE, ATTRS)
#define OVERLOADED_OPERATOR(Name, Spelling, Token, Unary, Binary, MemberOnly)   Spelling,
#define TYPE_TRAIT_1(Spelling, Name, Key)   case clang::UTT_##Name: return #Spelling;
#define TYPE_TRAIT_2(Spelling, Name, Key)   case clang::BTT_##Name: return #Spelling;
#define TYPE_TRAIT_N(Spelling, Name, Key)   case clang::TT_##Name: return #Spelling;

Functions

static void PrintFloatingLiteral (raw_ostream &OS, FloatingLiteral *Node, bool PrintSuffix)
static const char * getTypeTraitName (TypeTrait TT)
static const char * getTypeTraitName (ArrayTypeTrait ATT)
static const char * getExpressionTraitName (ExpressionTrait ET)

Define Documentation

#define ABSTRACT_STMT (   CLASS)

Definition at line 102 of file StmtPrinter.cpp.

#define ATOMIC_BUILTIN (   ID,
  TYPE,
  ATTRS 
)
Value:
case AtomicExpr::AO ## ID: \
    Name = #ID "("; \
    break;
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)
#define OPENMP_CLAUSE (   Name,
  Class 
)    void Visit##Class(Class *S);

Definition at line 595 of file StmtPrinter.cpp.

#define OVERLOADED_OPERATOR (   Name,
  Spelling,
  Token,
  Unary,
  Binary,
  MemberOnly 
)    Spelling,
#define STMT (   CLASS,
  PARENT 
)    void Visit##CLASS(CLASS *Node);

Definition at line 103 of file StmtPrinter.cpp.

#define TYPE_TRAIT_1 (   Spelling,
  Name,
  Key 
)    case clang::UTT_##Name: return #Spelling;
#define TYPE_TRAIT_2 (   Spelling,
  Name,
  Key 
)    case clang::BTT_##Name: return #Spelling;
#define TYPE_TRAIT_N (   Spelling,
  Name,
  Key 
)    case clang::TT_##Name: return #Spelling;

Function Documentation

static const char* getExpressionTraitName ( ExpressionTrait  ET) [static]

Definition at line 1962 of file StmtPrinter.cpp.

References clang::ET_IsLValueExpr, and clang::ET_IsRValueExpr.

static const char* getTypeTraitName ( TypeTrait  TT) [static]

Definition at line 1941 of file StmtPrinter.cpp.

static const char* getTypeTraitName ( ArrayTypeTrait  ATT) [static]

Definition at line 1954 of file StmtPrinter.cpp.

References clang::ATT_ArrayExtent, and clang::ATT_ArrayRank.

static void PrintFloatingLiteral ( raw_ostream &  OS,
FloatingLiteral Node,
bool  PrintSuffix 
) [static]