clang  3.9.0
Static Public Member Functions | Friends | List of all members
clang::OMPFlushDirective Class Reference

This represents '#pragma omp flush' directive. More...

#include <StmtOpenMP.h>

Inheritance diagram for clang::OMPFlushDirective:
[legend]
Collaboration diagram for clang::OMPFlushDirective:
[legend]

Static Public Member Functions

static OMPFlushDirectiveCreate (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef< OMPClause * > Clauses)
 Creates directive with a list of Clauses. More...
 
static OMPFlushDirectiveCreateEmpty (const ASTContext &C, unsigned NumClauses, EmptyShell)
 Creates an empty directive with the place for NumClauses clauses. More...
 
static bool classof (const Stmt *T)
 
- Static Public Member Functions inherited from clang::OMPExecutableDirective
template<typename SpecificClause >
static llvm::iterator_range
< specific_clause_iterator
< SpecificClause > > 
getClausesOfKind (ArrayRef< OMPClause * > Clauses)
 
static bool classof (const Stmt *S)
 

Friends

class ASTStmtReader
 

Additional Inherited Members

- Public Member Functions inherited from clang::OMPExecutableDirective
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
 Returns starting location of directive kind. More...
 
SourceLocation getLocEnd () const
 Returns ending location of directive. More...
 
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...
 
OMPClausegetClause (unsigned i) const
 Returns specified clause. More...
 
bool hasAssociatedStmt () const
 Returns true if directive has associated statement. More...
 
StmtgetAssociatedStmt () const
 Returns statement associated with the directive. More...
 
OpenMPDirectiveKind getDirectiveKind () const
 
child_range children ()
 
ArrayRef< OMPClause * > clauses ()
 
ArrayRef< OMPClause * > clauses () const
 
- Protected Member Functions inherited from clang::OMPExecutableDirective
template<typename T >
 OMPExecutableDirective (const T *, StmtClass SC, OpenMPDirectiveKind K, SourceLocation StartLoc, SourceLocation EndLoc, unsigned NumClauses, unsigned NumChildren)
 Build instance of directive of class K. More...
 
void setClauses (ArrayRef< OMPClause * > Clauses)
 Sets the list of variables for this clause. More...
 
void setAssociatedStmt (Stmt *S)
 Set the associated statement for the directive. More...
 

Detailed Description

This represents '#pragma omp flush' directive.

#pragma omp flush(a,b)

In this example directive '#pragma omp flush' has 2 arguments- variables 'a' and 'b'. 'omp flush' directive does not have clauses but have an optional list of variables to flush. This list of variables is stored within some fake clause FlushClause.

Definition at line 1772 of file StmtOpenMP.h.

Member Function Documentation

static bool clang::OMPFlushDirective::classof ( const Stmt T)
inlinestatic

Definition at line 1816 of file StmtOpenMP.h.

OMPFlushDirective * OMPFlushDirective::Create ( const ASTContext C,
SourceLocation  StartLoc,
SourceLocation  EndLoc,
ArrayRef< OMPClause * >  Clauses 
)
static

Creates directive with a list of Clauses.

Parameters
CAST context.
StartLocStarting location of the directive kind.
EndLocEnding Location of the directive.
ClausesList of clauses (only single OMPFlushClause clause is allowed).

Definition at line 609 of file StmtOpenMP.cpp.

References clang::ASTContext::Allocate(), and clang::OMPExecutableDirective::setClauses().

Referenced by clang::Sema::ActOnOpenMPFlushDirective().

OMPFlushDirective * OMPFlushDirective::CreateEmpty ( const ASTContext C,
unsigned  NumClauses,
EmptyShell   
)
static

Creates an empty directive with the place for NumClauses clauses.

Parameters
CAST context.
NumClausesNumber of clauses.

Definition at line 622 of file StmtOpenMP.cpp.

References clang::ASTContext::Allocate().

Friends And Related Function Documentation

friend class ASTStmtReader
friend

Definition at line 1773 of file StmtOpenMP.h.


The documentation for this class was generated from the following files: