clang API Documentation
#include <Expr.h>


Public Member Functions | |
| ShuffleVectorExpr (const ASTContext &C, ArrayRef< Expr * > args, QualType Type, SourceLocation BLoc, SourceLocation RP) | |
| ShuffleVectorExpr (EmptyShell Empty) | |
| Build an empty vector-shuffle expression. | |
| SourceLocation | getBuiltinLoc () const |
| void | setBuiltinLoc (SourceLocation L) |
| SourceLocation | getRParenLoc () const |
| void | setRParenLoc (SourceLocation L) |
| SourceLocation | getLocStart () const LLVM_READONLY |
| SourceLocation | getLocEnd () const LLVM_READONLY |
| unsigned | getNumSubExprs () const |
| Expr ** | getSubExprs () |
| Retrieve the array of expressions. | |
| Expr * | getExpr (unsigned Index) |
| getExpr - Return the Expr at the specified index. | |
| const Expr * | getExpr (unsigned Index) const |
| void | setExprs (const ASTContext &C, ArrayRef< Expr * > Exprs) |
| llvm::APSInt | getShuffleMaskIdx (const ASTContext &Ctx, unsigned N) const |
| child_range | children () |
Static Public Member Functions | |
| static bool | classof (const Stmt *T) |
ShuffleVectorExpr - clang-specific builtin-in function __builtin_shufflevector. This AST node represents a operator that does a constant shuffle, similar to LLVM's shufflevector instruction. It takes two vectors and a variable number of constant indices, and returns the appropriately shuffled vector.
| ShuffleVectorExpr::ShuffleVectorExpr | ( | const ASTContext & | C, |
| ArrayRef< Expr * > | args, | ||
| QualType | Type, | ||
| SourceLocation | BLoc, | ||
| SourceLocation | RP | ||
| ) |
Definition at line 3681 of file Expr.cpp.
References AttributeLangSupport::C, clang::Expr::containsUnexpandedParameterPack(), clang::Stmt::ExprBits, clang::Expr::isInstantiationDependent(), clang::Expr::isTypeDependent(), and clang::Expr::isValueDependent().
| clang::ShuffleVectorExpr::ShuffleVectorExpr | ( | EmptyShell | Empty | ) | [inline, explicit] |
| child_range clang::ShuffleVectorExpr::children | ( | ) | [inline] |
Reimplemented from clang::Stmt.
| static bool clang::ShuffleVectorExpr::classof | ( | const Stmt * | T | ) | [inline, static] |
Reimplemented from clang::Expr.
Definition at line 3465 of file Expr.h.
References clang::Stmt::getStmtClass().
| SourceLocation clang::ShuffleVectorExpr::getBuiltinLoc | ( | ) | const [inline] |
| Expr* clang::ShuffleVectorExpr::getExpr | ( | unsigned | Index | ) | [inline] |
getExpr - Return the Expr at the specified index.
Definition at line 3478 of file Expr.h.
Referenced by getShuffleMaskIdx().
| const Expr* clang::ShuffleVectorExpr::getExpr | ( | unsigned | Index | ) | const [inline] |
| SourceLocation clang::ShuffleVectorExpr::getLocEnd | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
| SourceLocation clang::ShuffleVectorExpr::getLocStart | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
| unsigned clang::ShuffleVectorExpr::getNumSubExprs | ( | ) | const [inline] |
| SourceLocation clang::ShuffleVectorExpr::getRParenLoc | ( | ) | const [inline] |
| llvm::APSInt clang::ShuffleVectorExpr::getShuffleMaskIdx | ( | const ASTContext & | Ctx, |
| unsigned | N | ||
| ) | const [inline] |
Definition at line 3489 of file Expr.h.
References clang::Expr::EvaluateKnownConstInt(), and getExpr().
| Expr** clang::ShuffleVectorExpr::getSubExprs | ( | ) | [inline] |
| void clang::ShuffleVectorExpr::setBuiltinLoc | ( | SourceLocation | L | ) | [inline] |
| void ShuffleVectorExpr::setExprs | ( | const ASTContext & | C, |
| ArrayRef< Expr * > | Exprs | ||
| ) |
Definition at line 3705 of file Expr.cpp.
References AttributeLangSupport::C, and clang::ASTContext::Deallocate().
| void clang::ShuffleVectorExpr::setRParenLoc | ( | SourceLocation | L | ) | [inline] |