|
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 > |
|
template<typename SpecificClause > |
llvm::iterator_range< specific_clause_iterator< SpecificClause > > | getClausesOfKind () const |
|
template<typename SpecificClause > |
const SpecificClause * | getSingleClause () const |
|
template<typename SpecificClause > |
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 () |
|
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.
|
|
enum | { NumStmtBits = 8
} |
|
enum | { NumExprBits = NumStmtBits + 5 + llvm::BitWidth<ExprDependence>
} |
|
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 > |
|
| OMPExecutableDirective (StmtClass SC, OpenMPDirectiveKind K, SourceLocation StartLoc, SourceLocation EndLoc) |
| Build instance of directive of class K.
|
|
void * | operator new (size_t bytes) noexcept |
|
void | operator delete (void *data) noexcept |
|
| Stmt (StmtClass SC, EmptyShell) |
| Construct an empty statement.
|
|
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) |
|
OMPChildren * | Data = nullptr |
| Data, associated with the directive.
|
|
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 |
|
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 |
|
}; | |
|
This represents '#pragma omp scope' directive.
#pragma omp scope private(a,b) nowait
In this example directive '#pragma omp scope' has clauses 'private' with the variables 'a' and 'b' and nowait.
Definition at line 1925 of file StmtOpenMP.h.