clang
7.0.0
|
This represents '#pragma omp task' directive. More...
#include "clang/AST/StmtOpenMP.h"
Public Member Functions | |
bool | hasCancel () const |
Return true if current directive has inner cancel directive. More... | |
![]() | |
template<typename SpecificClause > | |
llvm::iterator_range< specific_clause_iterator< SpecificClause > > | getClausesOfKind () const |
template<typename SpecificClause > | |
const SpecificClause * | getSingleClause () const |
Gets a single clause of the specified kind associated with the current directive iff there is only one clause of this kind (and assertion is fired if there is more than one clause is associated with the directive). More... | |
template<typename SpecificClause > | |
bool | hasClausesOfKind () const |
Returns true if the current directive has one or more clauses of a specific kind. More... | |
SourceLocation | getLocStart () const LLVM_READONLY |
Returns starting location of directive kind. More... | |
SourceLocation | getBeginLoc () const |
SourceLocation | getLocEnd () const LLVM_READONLY |
Returns ending location of directive. More... | |
SourceLocation | getEndLoc () const |
void | setLocStart (SourceLocation Loc) |
Set starting location of directive kind. More... | |
void | setLocEnd (SourceLocation Loc) |
Set ending location of directive. More... | |
unsigned | getNumClauses () const |
Get number of clauses. More... | |
OMPClause * | getClause (unsigned i) const |
Returns specified clause. More... | |
bool | hasAssociatedStmt () const |
Returns true if directive has associated statement. More... | |
const Stmt * | getAssociatedStmt () const |
Returns statement associated with the directive. More... | |
Stmt * | getAssociatedStmt () |
const CapturedStmt * | getCapturedStmt (OpenMPDirectiveKind RegionKind) const |
Returns the captured statement associated with the component region within the (combined) directive. More... | |
CapturedStmt * | getInnermostCapturedStmt () |
Get innermost captured statement for the construct. More... | |
const CapturedStmt * | getInnermostCapturedStmt () const |
OpenMPDirectiveKind | getDirectiveKind () const |
child_range | children () |
ArrayRef< OMPClause * > | clauses () |
ArrayRef< OMPClause * > | clauses () const |
![]() | |
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 (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. More... | |
SourceLocation | getLocStart () const LLVM_READONLY |
SourceLocation | getBeginLoc () const LLVM_READONLY |
SourceLocation | getLocEnd () const LLVM_READONLY |
SourceLocation | getEndLoc () const LLVM_READONLY |
void | dump () const |
Dumps the specified AST fragment and all subtrees to llvm::errs() . More... | |
void | dump (SourceManager &SM) const |
void | dump (raw_ostream &OS, SourceManager &SM) const |
void | dump (raw_ostream &OS) const |
void | dumpColor () const |
dumpColor - same as dump(), but forces color highlighting. More... | |
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. More... | |
void | printPretty (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, const ASTContext *Context=nullptr) const |
void | viewAST () const |
viewAST - Visualize an AST rooted at this Stmt* using GraphViz. More... | |
Stmt * | IgnoreImplicit () |
Skip past any implicit AST nodes which might surround this statement, such as ExprWithCleanups or ImplicitCastExpr nodes. More... | |
const Stmt * | IgnoreImplicit () const |
Stmt * | IgnoreContainers (bool IgnoreCaptured=false) |
Skip no-op (attributed, compound) container stmts and skip captured stmt at the top, if IgnoreCaptured is true. More... | |
const Stmt * | IgnoreContainers (bool IgnoreCaptured=false) const |
const Stmt * | stripLabelLikeStatements () const |
Strip off all label-like statements. More... | |
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) const |
Produce a unique representation of the given statement. More... | |
void | ProcessODRHash (llvm::FoldingSetNodeID &ID, ODRHash &Hash) const |
Calculate a unique representation for a statement that is stable across compiler invocations. More... | |
Static Public Member Functions | |
static OMPTaskDirective * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef< OMPClause *> Clauses, Stmt *AssociatedStmt, bool HasCancel) |
Creates directive with a list of Clauses. More... | |
static OMPTaskDirective * | CreateEmpty (const ASTContext &C, unsigned NumClauses, EmptyShell) |
Creates an empty directive with the place for NumClauses clauses. More... | |
static bool | classof (const Stmt *T) |
![]() | |
template<typename SpecificClause > | |
static llvm::iterator_range< specific_clause_iterator< SpecificClause > > | getClausesOfKind (ArrayRef< OMPClause *> Clauses) |
static bool | classof (const Stmt *S) |
![]() | |
static void | addStmtClass (const StmtClass s) |
static void | EnableStatistics () |
static void | PrintStats () |
Friends | |
class | ASTStmtReader |
This represents '#pragma omp task' directive.
In this example directive '#pragma omp task' has clauses 'private' with the variables 'a' and 'b' and 'final' with condition 'd'.
Definition at line 1739 of file StmtOpenMP.h.
Definition at line 1796 of file StmtOpenMP.h.
References clang::Stmt::getStmtClass().
|
static |
Creates directive with a list of Clauses.
C | AST context. |
StartLoc | Starting location of the directive kind. |
EndLoc | Ending Location of the directive. |
Clauses | List of clauses. |
AssociatedStmt | Statement, associated with the directive. |
HasCancel | true, if current directive has inner cancel directive. |
Definition at line 459 of file StmtOpenMP.cpp.
References clang::ASTContext::Allocate(), clang::OMPExecutableDirective::setAssociatedStmt(), and clang::OMPExecutableDirective::setClauses().
Referenced by clang::Sema::ActOnOpenMPTaskDirective().
|
static |
Creates an empty directive with the place for NumClauses clauses.
C | AST context. |
NumClauses | Number of clauses. |
Definition at line 473 of file StmtOpenMP.cpp.
References clang::ASTContext::Allocate().
|
inline |
Return true if current directive has inner cancel directive.
Definition at line 1794 of file StmtOpenMP.h.
|
friend |
Definition at line 1740 of file StmtOpenMP.h.