clang API Documentation
A type trait used in the implementation of various C++11 and Library TR1 trait templates. More...
#include <ExprCXX.h>


Public Types | |
| typedef TypeSourceInfo ** | arg_iterator |
| typedef TypeSourceInfo const *const * | arg_const_iterator |
Public Member Functions | |
| TypeTrait | getTrait () const |
| Determine which type trait this expression uses. | |
| bool | getValue () const |
| unsigned | getNumArgs () const |
| Determine the number of arguments to this type trait. | |
| TypeSourceInfo * | getArg (unsigned I) const |
| Retrieve the Ith argument. | |
| ArrayRef< TypeSourceInfo * > | getArgs () const |
| Retrieve the argument types. | |
| arg_iterator | arg_begin () |
| arg_iterator | arg_end () |
| arg_const_iterator | arg_begin () const |
| arg_const_iterator | arg_end () const |
| SourceLocation | getLocStart () const LLVM_READONLY |
| SourceLocation | getLocEnd () const LLVM_READONLY |
| child_range | children () |
Static Public Member Functions | |
| static TypeTraitExpr * | Create (const ASTContext &C, QualType T, SourceLocation Loc, TypeTrait Kind, ArrayRef< TypeSourceInfo * > Args, SourceLocation RParenLoc, bool Value) |
| Create a new type trait expression. | |
| static TypeTraitExpr * | CreateDeserialized (const ASTContext &C, unsigned NumArgs) |
| static bool | classof (const Stmt *T) |
Friends | |
| class | ASTStmtReader |
| class | ASTStmtWriter |
A type trait used in the implementation of various C++11 and Library TR1 trait templates.
__is_pod(int) == true __is_enum(std::string) == false __is_trivially_constructible(vector<int>, int*, int*)
| typedef TypeSourceInfo const* const* clang::TypeTraitExpr::arg_const_iterator |
| arg_iterator clang::TypeTraitExpr::arg_begin | ( | ) | [inline] |
| arg_const_iterator clang::TypeTraitExpr::arg_begin | ( | ) | const [inline] |
| arg_iterator clang::TypeTraitExpr::arg_end | ( | ) | [inline] |
Definition at line 2136 of file ExprCXX.h.
References getNumArgs().
| arg_const_iterator clang::TypeTraitExpr::arg_end | ( | ) | const [inline] |
Definition at line 2142 of file ExprCXX.h.
References getNumArgs().
| child_range clang::TypeTraitExpr::children | ( | ) | [inline] |
Reimplemented from clang::Stmt.
| static bool clang::TypeTraitExpr::classof | ( | const Stmt * | T | ) | [inline, static] |
Reimplemented from clang::Expr.
Definition at line 2149 of file ExprCXX.h.
References clang::Stmt::getStmtClass().
| TypeTraitExpr * TypeTraitExpr::Create | ( | const ASTContext & | C, |
| QualType | T, | ||
| SourceLocation | Loc, | ||
| TypeTrait | Kind, | ||
| ArrayRef< TypeSourceInfo * > | Args, | ||
| SourceLocation | RParenLoc, | ||
| bool | Value | ||
| ) | [static] |
Create a new type trait expression.
Definition at line 1521 of file ExprCXX.cpp.
References clang::ASTContext::Allocate().
Referenced by clang::Sema::BuildTypeTrait().
| TypeTraitExpr * TypeTraitExpr::CreateDeserialized | ( | const ASTContext & | C, |
| unsigned | NumArgs | ||
| ) | [static] |
Definition at line 1532 of file ExprCXX.cpp.
References clang::ASTContext::Allocate().
| TypeSourceInfo* clang::TypeTraitExpr::getArg | ( | unsigned | I | ) | const [inline] |
Retrieve the Ith argument.
Definition at line 2122 of file ExprCXX.h.
References getArgs(), and getNumArgs().
| ArrayRef<TypeSourceInfo *> clang::TypeTraitExpr::getArgs | ( | ) | const [inline] |
Retrieve the argument types.
Definition at line 2128 of file ExprCXX.h.
References getNumArgs().
Referenced by getArg().
| SourceLocation clang::TypeTraitExpr::getLocEnd | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
| SourceLocation clang::TypeTraitExpr::getLocStart | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
| unsigned clang::TypeTraitExpr::getNumArgs | ( | ) | const [inline] |
| TypeTrait clang::TypeTraitExpr::getTrait | ( | ) | const [inline] |
Determine which type trait this expression uses.
Definition at line 2109 of file ExprCXX.h.
References clang::Stmt::TypeTraitExprBits.
| bool clang::TypeTraitExpr::getValue | ( | ) | const [inline] |
Definition at line 2113 of file ExprCXX.h.
References clang::Expr::isValueDependent(), and clang::Stmt::TypeTraitExprBits.
friend class ASTStmtReader [friend] |
Reimplemented from clang::Stmt.
friend class ASTStmtWriter [friend] |
Reimplemented from clang::Stmt.