Public Types inherited from clang::Stmt |
|
enum |
StmtClass { NoStmtClass = 0 } |
|
|
enum |
Likelihood { LH_Unlikely = -1 , LH_None, LH_Likely } |
|
The likelihood of a branch being taken. More... |
|
|
using |
child_iterator = StmtIterator |
|
Child Iterators: All subclasses must implement 'children' to permit easy iteration over the substatements/subexpressions of an AST node. |
|
|
using |
const_child_iterator = ConstStmtIterator |
|
|
using |
child_range = llvm::iterator_range< child_iterator > |
|
|
using |
const_child_range = llvm::iterator_range< const_child_iterator > |
|
|
Public Member Functions inherited from clang::OMPLoopDirective |
|
Expr * |
getIterationVariable () const |
|
|
Expr * |
getLastIteration () const |
|
|
Expr * |
getCalcLastIteration () const |
|
|
Expr * |
getPreCond () const |
|
|
Expr * |
getCond () const |
|
|
Expr * |
getInit () const |
|
|
Expr * |
getInc () const |
|
|
const Stmt * |
getPreInits () const |
|
|
Stmt * |
getPreInits () |
|
|
Expr * |
getIsLastIterVariable () const |
|
|
Expr * |
getLowerBoundVariable () const |
|
|
Expr * |
getUpperBoundVariable () const |
|
|
Expr * |
getStrideVariable () const |
|
|
Expr * |
getEnsureUpperBound () const |
|
|
Expr * |
getNextLowerBound () const |
|
|
Expr * |
getNextUpperBound () const |
|
|
Expr * |
getNumIterations () const |
|
|
Expr * |
getPrevLowerBoundVariable () const |
|
|
Expr * |
getPrevUpperBoundVariable () const |
|
|
Expr * |
getDistInc () const |
|
|
Expr * |
getPrevEnsureUpperBound () const |
|
|
Expr * |
getCombinedLowerBoundVariable () const |
|
|
Expr * |
getCombinedUpperBoundVariable () const |
|
|
Expr * |
getCombinedEnsureUpperBound () const |
|
|
Expr * |
getCombinedInit () const |
|
|
Expr * |
getCombinedCond () const |
|
|
Expr * |
getCombinedNextLowerBound () const |
|
|
Expr * |
getCombinedNextUpperBound () const |
|
|
Expr * |
getCombinedDistCond () const |
|
|
Expr * |
getCombinedParForInDistCond () const |
|
|
Stmt * |
getBody () |
|
|
const Stmt * |
getBody () const |
|
|
ArrayRef< Expr * > |
counters () |
|
|
ArrayRef< Expr * > |
counters () const |
|
|
ArrayRef< Expr * > |
private_counters () |
|
|
ArrayRef< Expr * > |
private_counters () const |
|
|
ArrayRef< Expr * > |
inits () |
|
|
ArrayRef< Expr * > |
inits () const |
|
|
ArrayRef< Expr * > |
updates () |
|
|
ArrayRef< Expr * > |
updates () const |
|
|
ArrayRef< Expr * > |
finals () |
|
|
ArrayRef< Expr * > |
finals () const |
|
|
ArrayRef< Expr * > |
dependent_counters () |
|
|
ArrayRef< Expr * > |
dependent_counters () const |
|
|
ArrayRef< Expr * > |
dependent_inits () |
|
|
ArrayRef< Expr * > |
dependent_inits () const |
|
|
ArrayRef< Expr * > |
finals_conditions () |
|
|
ArrayRef< Expr * > |
finals_conditions () const |
|
|
Public Member Functions inherited from clang::OMPLoopBasedDirective |
|
unsigned |
getLoopsNumber () const |
|
Get number of collapsed loops. |
|
|
Public Member Functions inherited from clang::OMPExecutableDirective |
|
template |
|
llvm::iterator_range< specific_clause_iterator< SpecificClause > > |
getClausesOfKind () const |
|
|
template |
|
const SpecificClause * |
getSingleClause () const |
|
|
template |
|
bool |
hasClausesOfKind () const |
|
Returns true if the current directive has one or more clauses of a specific kind. |
|
|
SourceLocation |
getBeginLoc () const |
|
Returns starting location of directive kind. |
|
|
SourceLocation |
getEndLoc () const |
|
Returns ending location of directive. |
|
|
void |
setLocStart (SourceLocation Loc) |
|
Set starting location of directive kind. |
|
|
void |
setLocEnd (SourceLocation Loc) |
|
Set ending location of directive. |
|
|
unsigned |
getNumClauses () const |
|
Get number of clauses. |
|
|
OMPClause * |
getClause (unsigned I) const |
|
Returns specified clause. |
|
|
bool |
hasAssociatedStmt () const |
|
Returns true if directive has associated statement. |
|
|
const Stmt * |
getAssociatedStmt () const |
|
Returns statement associated with the directive. |
|
|
Stmt * |
getAssociatedStmt () |
|
|
const CapturedStmt * |
getCapturedStmt (OpenMPDirectiveKind RegionKind) const |
|
Returns the captured statement associated with the component region within the (combined) directive. |
|
|
CapturedStmt * |
getInnermostCapturedStmt () |
|
Get innermost captured statement for the construct. |
|
|
const CapturedStmt * |
getInnermostCapturedStmt () const |
|
|
OpenMPDirectiveKind |
getDirectiveKind () const |
|
|
child_range |
children () |
|
|
const_child_range |
children () const |
|
|
ArrayRef< OMPClause * > |
clauses () const |
|
|
bool |
isStandaloneDirective () const |
|
Returns whether or not this is a Standalone directive. |
|
|
const Stmt * |
getStructuredBlock () const |
|
Returns the AST node representing OpenMP structured-block of this OpenMP executable directive, Prerequisite: Executable Directive must not be Standalone directive. |
|
|
Stmt * |
getStructuredBlock () |
|
|
const Stmt * |
getRawStmt () const |
|
|
Stmt * |
getRawStmt () |
|
|
Public Member Functions inherited from clang::Stmt |
|
void * |
operator new (size_t bytes, const ASTContext &C, unsigned alignment=8) |
|
|
void * |
operator new (size_t bytes, const ASTContext *C, unsigned alignment=8) |
|
|
void * |
operator new (size_t bytes, void *mem) noexcept |
|
|
void |
operator delete (void *, const ASTContext &, unsigned) noexcept |
|
|
void |
operator delete (void *, const ASTContext *, unsigned) noexcept |
|
|
void |
operator delete (void *, size_t) noexcept |
|
|
void |
operator delete (void *, void *) noexcept |
|
|
|
Stmt ()=delete |
|
|
|
Stmt (const Stmt &)=delete |
|
|
|
Stmt (Stmt &&)=delete |
|
|
Stmt & |
operator= (const Stmt &)=delete |
|
|
Stmt & |
operator= (Stmt &&)=delete |
|
|
|
Stmt (StmtClass SC) |
|
|
StmtClass |
getStmtClass () const |
|
|
const char * |
getStmtClassName () const |
|
|
SourceRange |
getSourceRange () const LLVM_READONLY |
|
SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. |
|
|
SourceLocation |
getBeginLoc () const LLVM_READONLY |
|
|
SourceLocation |
getEndLoc () const LLVM_READONLY |
|
|
void |
dump () const |
|
Dumps the specified AST fragment and all subtrees to llvm::errs(). |
|
|
void |
dump (raw_ostream &OS, const ASTContext &Context) const |
|
|
int64_t |
getID (const ASTContext &Context) const |
|
|
void |
dumpColor () const |
|
dumpColor - same as dump(), but forces color highlighting. |
|
|
void |
dumpPretty (const ASTContext &Context) const |
|
dumpPretty/printPretty - These two methods do a "pretty print" of the AST back to its original source language syntax. |
|
|
void |
printPretty (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) const |
|
|
void |
printPrettyControlled (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) const |
|
|
void |
printJson (raw_ostream &Out, PrinterHelper *Helper, const PrintingPolicy &Policy, bool AddQuotes) const |
|
Pretty-prints in JSON format. |
|
|
void |
viewAST () const |
|
viewAST - Visualize an AST rooted at this Stmt* using GraphViz. |
|
|
Stmt * |
IgnoreContainers (bool IgnoreCaptured=false) |
|
Skip no-op (attributed, compound) container stmts and skip captured stmt at the top, if IgnoreCaptured is true. |
|
|
const Stmt * |
IgnoreContainers (bool IgnoreCaptured=false) const |
|
|
const Stmt * |
stripLabelLikeStatements () const |
|
Strip off all label-like statements. |
|
|
Stmt * |
stripLabelLikeStatements () |
|
|
child_range |
children () |
|
|
const_child_range |
children () const |
|
|
child_iterator |
child_begin () |
|
|
child_iterator |
child_end () |
|
|
const_child_iterator |
child_begin () const |
|
|
const_child_iterator |
child_end () const |
|
|
void |
Profile (llvm::FoldingSetNodeID &ID, const ASTContext &Context, bool Canonical, bool ProfileLambdaExpr=false) const |
|
Produce a unique representation of the given statement. |
|
|
void |
ProcessODRHash (llvm::FoldingSetNodeID &ID, ODRHash &Hash) const |
|
Calculate a unique representation for a statement that is stable across compiler invocations. |
|
|
Protected Types inherited from clang::Stmt |
|
enum |
{ NumExprBits = NumStmtBits + 5 + llvm::BitWidth } |
|
|
enum |
{ NumCallExprBits = 32 } |
|
|
enum |
{ NumOverloadExprBits = NumExprBits + 1 } |
|
|
template<typename T > |
|
using |
ConstCastIterator = CastIterator< T, const T *const, const Stmt *const > |
|
Const iterator for iterating over Stmt * arrays that contain only T *. |
|
|
using |
ExprIterator = CastIterator< Expr > |
|
|
using |
ConstExprIterator = ConstCastIterator< Expr > |
|
|
Protected Member Functions inherited from clang::OMPLoopDirective |
|
|
OMPLoopDirective (StmtClass SC, OpenMPDirectiveKind Kind, SourceLocation StartLoc, SourceLocation EndLoc, unsigned CollapsedNum) |
|
Build instance of loop directive of class Kind. |
|
|
void |
setIterationVariable (Expr *IV) |
|
|
void |
setLastIteration (Expr *LI) |
|
|
void |
setCalcLastIteration (Expr *CLI) |
|
|
void |
setPreCond (Expr *PC) |
|
|
void |
setCond (Expr *Cond) |
|
|
void |
setInit (Expr *Init) |
|
|
void |
setInc (Expr *Inc) |
|
|
void |
setPreInits (Stmt *PreInits) |
|
|
void |
setIsLastIterVariable (Expr *IL) |
|
|
void |
setLowerBoundVariable (Expr *LB) |
|
|
void |
setUpperBoundVariable (Expr *UB) |
|
|
void |
setStrideVariable (Expr *ST) |
|
|
void |
setEnsureUpperBound (Expr *EUB) |
|
|
void |
setNextLowerBound (Expr *NLB) |
|
|
void |
setNextUpperBound (Expr *NUB) |
|
|
void |
setNumIterations (Expr *NI) |
|
|
void |
setPrevLowerBoundVariable (Expr *PrevLB) |
|
|
void |
setPrevUpperBoundVariable (Expr *PrevUB) |
|
|
void |
setDistInc (Expr *DistInc) |
|
|
void |
setPrevEnsureUpperBound (Expr *PrevEUB) |
|
|
void |
setCombinedLowerBoundVariable (Expr *CombLB) |
|
|
void |
setCombinedUpperBoundVariable (Expr *CombUB) |
|
|
void |
setCombinedEnsureUpperBound (Expr *CombEUB) |
|
|
void |
setCombinedInit (Expr *CombInit) |
|
|
void |
setCombinedCond (Expr *CombCond) |
|
|
void |
setCombinedNextLowerBound (Expr *CombNLB) |
|
|
void |
setCombinedNextUpperBound (Expr *CombNUB) |
|
|
void |
setCombinedDistCond (Expr *CombDistCond) |
|
|
void |
setCombinedParForInDistCond (Expr *CombParForInDistCond) |
|
|
void |
setCounters (ArrayRef< Expr * > A) |
|
|
void |
setPrivateCounters (ArrayRef< Expr * > A) |
|
|
void |
setInits (ArrayRef< Expr * > A) |
|
|
void |
setUpdates (ArrayRef< Expr * > A) |
|
|
void |
setFinals (ArrayRef< Expr * > A) |
|
|
void |
setDependentCounters (ArrayRef< Expr * > A) |
|
|
void |
setDependentInits (ArrayRef< Expr * > A) |
|
|
void |
setFinalsConditions (ArrayRef< Expr * > A) |
|
|
Protected Member Functions inherited from clang::OMPLoopBasedDirective |
|
|
OMPLoopBasedDirective (StmtClass SC, OpenMPDirectiveKind Kind, SourceLocation StartLoc, SourceLocation EndLoc, unsigned NumAssociatedLoops) |
|
Build instance of loop directive of class Kind. |
|
|
Protected Member Functions inherited from clang::OMPExecutableDirective |
|
|
OMPExecutableDirective (StmtClass SC, OpenMPDirectiveKind K, SourceLocation StartLoc, SourceLocation EndLoc) |
|
Build instance of directive of class K. |
|
|
Protected Member Functions inherited from clang::Stmt |
|
void * |
operator new (size_t bytes) noexcept |
|
|
void |
operator delete (void *data) noexcept |
|
|
|
Stmt (StmtClass SC, EmptyShell) |
|
Construct an empty statement. |
|
|
Static Protected Member Functions inherited from clang::OMPLoopDirective |
|
static unsigned |
getArraysOffset (OpenMPDirectiveKind Kind) |
|
Offset to the start of children expression arrays. |
|
|
static unsigned |
numLoopChildren (unsigned CollapsedNum, OpenMPDirectiveKind Kind) |
|
Children number. |
|
|
Static Protected Member Functions inherited from clang::OMPExecutableDirective |
|
template<typename T , typename... Params> |
|
static T * |
createDirective (const ASTContext &C, ArrayRef< OMPClause * > Clauses, Stmt *AssociatedStmt, unsigned NumChildren, Params &&... P) |
|
|
template<typename T , typename... Params> |
|
static T * |
createEmptyDirective (const ASTContext &C, unsigned NumClauses, bool HasAssociatedStmt, unsigned NumChildren, Params &&... P) |
|
|
template<typename T > |
|
static T * |
createEmptyDirective (const ASTContext &C, unsigned NumClauses, bool HasAssociatedStmt=false, unsigned NumChildren=0) |
|
|
Protected Attributes inherited from clang::OMPLoopBasedDirective |
|
unsigned |
NumAssociatedLoops = 0 |
|
Number of collapsed loops as specified by 'collapse' clause. |
|
|
Protected Attributes inherited from clang::OMPExecutableDirective |
|
OMPChildren * |
Data = nullptr |
|
Data, associated with the directive. |
|
|
Protected Attributes inherited from clang::Stmt |
|
union { |
|
StmtBitfields StmtBits |
|
|
|
NullStmtBitfields NullStmtBits |
|
|
|
CompoundStmtBitfields CompoundStmtBits |
|
|
|
LabelStmtBitfields LabelStmtBits |
|
|
|
AttributedStmtBitfields AttributedStmtBits |
|
|
|
IfStmtBitfields IfStmtBits |
|
|
|
SwitchStmtBitfields SwitchStmtBits |
|
|
|
WhileStmtBitfields WhileStmtBits |
|
|
|
DoStmtBitfields DoStmtBits |
|
|
|
ForStmtBitfields ForStmtBits |
|
|
|
GotoStmtBitfields GotoStmtBits |
|
|
|
ContinueStmtBitfields ContinueStmtBits |
|
|
|
BreakStmtBitfields BreakStmtBits |
|
|
|
ReturnStmtBitfields ReturnStmtBits |
|
|
|
SwitchCaseBitfields SwitchCaseBits |
|
|
|
ExprBitfields ExprBits |
|
|
|
ConstantExprBitfields ConstantExprBits |
|
|
|
PredefinedExprBitfields PredefinedExprBits |
|
|
|
DeclRefExprBitfields DeclRefExprBits |
|
|
|
FloatingLiteralBitfields FloatingLiteralBits |
|
|
|
StringLiteralBitfields StringLiteralBits |
|
|
|
CharacterLiteralBitfields CharacterLiteralBits |
|
|
|
UnaryOperatorBitfields UnaryOperatorBits |
|
|
|
UnaryExprOrTypeTraitExprBitfields UnaryExprOrTypeTraitExprBits |
|
|
|
ArrayOrMatrixSubscriptExprBitfields ArrayOrMatrixSubscriptExprBits |
|
|
|
CallExprBitfields CallExprBits |
|
|
|
MemberExprBitfields MemberExprBits |
|
|
|
CastExprBitfields CastExprBits |
|
|
|
BinaryOperatorBitfields BinaryOperatorBits |
|
|
|
InitListExprBitfields InitListExprBits |
|
|
|
ParenListExprBitfields ParenListExprBits |
|
|
|
GenericSelectionExprBitfields GenericSelectionExprBits |
|
|
|
PseudoObjectExprBitfields PseudoObjectExprBits |
|
|
|
SourceLocExprBitfields SourceLocExprBits |
|
|
|
ParenExprBitfields ParenExprBits |
|
|
|
StmtExprBitfields StmtExprBits |
|
|
|
CXXOperatorCallExprBitfields CXXOperatorCallExprBits |
|
|
|
CXXRewrittenBinaryOperatorBitfields CXXRewrittenBinaryOperatorBits |
|
|
|
CXXBoolLiteralExprBitfields CXXBoolLiteralExprBits |
|
|
|
CXXNullPtrLiteralExprBitfields CXXNullPtrLiteralExprBits |
|
|
|
CXXThisExprBitfields CXXThisExprBits |
|
|
|
CXXThrowExprBitfields CXXThrowExprBits |
|
|
|
CXXDefaultArgExprBitfields CXXDefaultArgExprBits |
|
|
|
CXXDefaultInitExprBitfields CXXDefaultInitExprBits |
|
|
|
CXXScalarValueInitExprBitfields CXXScalarValueInitExprBits |
|
|
|
CXXNewExprBitfields CXXNewExprBits |
|
|
|
CXXDeleteExprBitfields CXXDeleteExprBits |
|
|
|
TypeTraitExprBitfields TypeTraitExprBits |
|
|
|
DependentScopeDeclRefExprBitfields DependentScopeDeclRefExprBits |
|
|
|
CXXConstructExprBitfields CXXConstructExprBits |
|
|
|
ExprWithCleanupsBitfields ExprWithCleanupsBits |
|
|
|
CXXUnresolvedConstructExprBitfields CXXUnresolvedConstructExprBits |
|
|
|
CXXDependentScopeMemberExprBitfields CXXDependentScopeMemberExprBits |
|
|
|
OverloadExprBitfields OverloadExprBits |
|
|
|
UnresolvedLookupExprBitfields UnresolvedLookupExprBits |
|
|
|
UnresolvedMemberExprBitfields UnresolvedMemberExprBits |
|
|
|
CXXNoexceptExprBitfields CXXNoexceptExprBits |
|
|
|
SubstNonTypeTemplateParmExprBitfields SubstNonTypeTemplateParmExprBits |
|
|
|
LambdaExprBitfields LambdaExprBits |
|
|
|
RequiresExprBitfields RequiresExprBits |
|
|
|
CoawaitExprBitfields CoawaitBits |
|
|
|
ObjCIndirectCopyRestoreExprBitfields ObjCIndirectCopyRestoreExprBits |
|
|
|
OpaqueValueExprBitfields OpaqueValueExprBits |
|
|
|
}; |
|
|
|