class OMPParallelSectionsDirective

Declaration

class OMPParallelSectionsDirective : public OMPExecutableDirective { /* full declaration omitted */ };

Description

This represents '#pragma omp parallel sections' directive. In this example directive '#pragma omp parallel sections' has clauses 'private' with the variables 'a' and 'b' and 'reduction' with operator '+' and variables 'c' and 'd'.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2383

Inherits from: OMPExecutableDirective

Member Variables

private bool HasCancel = false
true if current directive has inner cancel directive.

Inherited from OMPExecutableDirective:

protected Data = nullptr

Inherited from Stmt:

protected

Method Overview

Inherited from OMPExecutableDirective:

Inherited from Stmt:

Methods

static clang::OMPParallelSectionsDirective*
Create(const clang::ASTContext& C,
       clang::SourceLocation StartLoc,
       clang::SourceLocation EndLoc,
       ArrayRef<clang::OMPClause*> Clauses,
       clang::Stmt* AssociatedStmt,
       clang::Expr* TaskRedRef,
       bool HasCancel)

Description

Creates directive with a list of \a Clauses.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2426

Parameters

const clang::ASTContext& C
AST context.
clang::SourceLocation StartLoc
Starting location of the directive kind.
clang::SourceLocation EndLoc
Ending Location of the directive.
ArrayRef<clang::OMPClause*> Clauses
List of clauses.
clang::Stmt* AssociatedStmt
Statement, associated with the directive.
clang::Expr* TaskRedRef
Task reduction special reference expression to handle taskgroup descriptor.
bool HasCancel
true if current directive has inner cancel directive.

static clang::OMPParallelSectionsDirective*
CreateEmpty(const clang::ASTContext& C,
            unsigned int NumClauses,
            clang::Stmt::EmptyShell)

Description

Creates an empty directive with the place for \a NumClauses clauses.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2437

Parameters

const clang::ASTContext& C
AST context.
unsigned int NumClauses
Number of clauses.
clang::Stmt::EmptyShell

OMPParallelSectionsDirective(
    clang::SourceLocation StartLoc,
    clang::SourceLocation EndLoc)

Description

Build directive with the given start and end location.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2395

Parameters

clang::SourceLocation StartLoc
Starting location of the directive kind.
clang::SourceLocation EndLoc
Ending location of the directive.

OMPParallelSectionsDirective()

Description

Build an empty directive.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2402

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/StmtOpenMP.h:2451

Parameters

const clang::Stmt* T

clang::Expr* getTaskReductionRefExpr()

Description

Returns special task reduction reference expression.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2440

const clang::Expr* getTaskReductionRefExpr() const

Declared at: clang/include/clang/AST/StmtOpenMP.h:2443

bool hasCancel() const

Description

Return true if current directive has inner cancel directive.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2449

void setHasCancel(bool Has)

Description

Set cancel state.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2411

Parameters

bool Has

void setTaskReductionRefExpr(clang::Expr* E)

Description

Sets special task reduction descriptor.

Declared at: clang/include/clang/AST/StmtOpenMP.h:2408

Parameters

clang::Expr* E