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] |