clang API Documentation
PredefinedExpr - [C99 6.4.2.2] - A predefined identifier such as __func__. More...
#include <Expr.h>


Public Types | |
| enum | IdentType { Func, Function, PrettyFunction, PrettyFunctionNoVirtual } |
Public Member Functions | |
| PredefinedExpr (SourceLocation l, QualType type, IdentType IT) | |
| PredefinedExpr (EmptyShell Empty) | |
| Construct an empty predefined expression. | |
| IdentType | getIdentType () const |
| void | setIdentType (IdentType IT) |
| SourceLocation | getLocation () const |
| void | setLocation (SourceLocation L) |
| SourceRange | getSourceRange () const LLVM_READONLY |
| child_range | children () |
Static Public Member Functions | |
| static std::string | ComputeName (IdentType IT, const Decl *CurrentDecl) |
| static bool | classof (const Stmt *T) |
| static bool | classof (const PredefinedExpr *) |
PredefinedExpr - [C99 6.4.2.2] - A predefined identifier such as __func__.
| clang::PredefinedExpr::PredefinedExpr | ( | SourceLocation | l, |
| QualType | type, | ||
| IdentType | IT | ||
| ) | [inline] |
| clang::PredefinedExpr::PredefinedExpr | ( | EmptyShell | Empty | ) | [inline, explicit] |
Construct an empty predefined expression.
| child_range clang::PredefinedExpr::children | ( | ) | [inline] |
Reimplemented from clang::Stmt.
| static bool clang::PredefinedExpr::classof | ( | const Stmt * | T | ) | [inline, static] |
Reimplemented from clang::Expr.
Definition at line 1077 of file Expr.h.
References clang::Stmt::getStmtClass().
| static bool clang::PredefinedExpr::classof | ( | const PredefinedExpr * | ) | [inline, static] |
Definition at line 384 of file Expr.cpp.
References Args, clang::Qualifiers::fromCVRMask(), clang::TemplateArgumentList::get(), clang::QualType::getAsStringInternal(), clang::Decl::getASTContext(), clang::ASTContext::getLangOpts(), clang::NamedDecl::getName(), clang::FunctionDecl::getNumParams(), clang::TemplateParameterList::getParam(), clang::FunctionDecl::getParamDecl(), clang::DeclContext::getParent(), clang::FunctionType::getResultType(), clang::FunctionTemplateSpecializationInfo::getTemplate(), clang::FunctionDecl::getTemplateInstantiationPattern(), clang::TemplateDecl::getTemplateParameters(), clang::ValueDecl::getType(), clang::Qualifiers::hasConst(), clang::Qualifiers::hasVolatile(), clang::FunctionTemplateSpecializationInfo::isExplicitSpecialization(), clang::ClassTemplateSpecializationDecl::isExplicitSpecialization(), Param, PrettyFunction, PrettyFunctionNoVirtual, clang::TemplateArgument::print(), clang::RQ_LValue, clang::RQ_RValue, clang::TemplateParameterList::size(), clang::TemplateArgumentList::size(), clang::QualType::stream(), and clang::FunctionTemplateSpecializationInfo::TemplateArguments.
Referenced by clang::Sema::ActOnPredefinedExpr(), and clang::CodeGen::CodeGenFunction::EmitPredefinedLValue().
| IdentType clang::PredefinedExpr::getIdentType | ( | ) | const [inline] |
Definition at line 1067 of file Expr.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitPredefinedLValue().
| SourceLocation clang::PredefinedExpr::getLocation | ( | ) | const [inline] |
| SourceRange clang::PredefinedExpr::getSourceRange | ( | ) | const [inline] |
SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. We assume AST clients will have a pointer to the respective SourceManager.
Reimplemented from clang::Stmt.
| void clang::PredefinedExpr::setIdentType | ( | IdentType | IT | ) | [inline] |
| void clang::PredefinedExpr::setLocation | ( | SourceLocation | L | ) | [inline] |