clang 22.0.0git
clang::OMPPermutationClause Class Referencefinal

This class represents the 'permutation' clause in the '#pragma omp interchange' directive. More...

#include "clang/AST/OpenMPClause.h"

Inheritance diagram for clang::OMPPermutationClause:
[legend]

Public Member Functions

void setLParenLoc (SourceLocation Loc)
 Sets the location of '('.
SourceLocation getLParenLoc () const
 Returns the location of '('.
unsigned getNumLoops () const
 Returns the number of list items.
child_range children ()
const_child_range children () const
child_range used_children ()
const_child_range used_children () const
MutableArrayRef< Expr * > getArgsRefs ()
 Returns the permutation index expressions.
ArrayRef< Expr * > getArgsRefs () const
Public Member Functions inherited from clang::OMPClause
SourceLocation getBeginLoc () const
 Returns the starting location of the clause.
SourceLocation getEndLoc () const
 Returns the ending location of the clause.
void setLocStart (SourceLocation Loc)
 Sets the starting location of the clause.
void setLocEnd (SourceLocation Loc)
 Sets the ending location of the clause.
OpenMPClauseKind getClauseKind () const
 Returns kind of OpenMP clause (private, shared, reduction, etc.).
bool isImplicit () const
child_range children ()
const_child_range children () const
child_range used_children ()
 Get the iterator range for the expressions used in the clauses.
const_child_range used_children () const

Static Public Member Functions

static OMPPermutationClauseCreate (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, ArrayRef< Expr * > Args)
 Build a 'permutation' clause AST node.
static OMPPermutationClauseCreateEmpty (const ASTContext &C, unsigned NumLoops)
 Build an empty 'permutation' AST node for deserialization.
static bool classof (const OMPClause *T)
Static Public Member Functions inherited from clang::OMPClause
static bool classof (const OMPClause *)

Friends

class OMPClauseReader
class llvm::TrailingObjects< OMPSizesClause, Expr * >

Additional Inherited Members

Public Types inherited from clang::OMPClause
using child_iterator = StmtIterator
using const_child_iterator = ConstStmtIterator
using child_range = llvm::iterator_range<child_iterator>
using const_child_range = llvm::iterator_range<const_child_iterator>
Protected Member Functions inherited from clang::OMPClause
 OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc)

Detailed Description

This class represents the 'permutation' clause in the '#pragma omp interchange' directive.

#pragma omp interchange permutation(2,1)
for (int i = 0; i < 64; ++i)
for (int j = 0; j < 64; ++j)

Definition at line 1043 of file OpenMPClause.h.

Member Function Documentation

◆ children() [1/2]

child_range clang::OMPPermutationClause::children ( )
inline

Definition at line 1102 of file OpenMPClause.h.

References getArgsRefs().

◆ children() [2/2]

const_child_range clang::OMPPermutationClause::children ( ) const
inline

Definition at line 1107 of file OpenMPClause.h.

References getArgsRefs().

◆ classof()

bool clang::OMPPermutationClause::classof ( const OMPClause * T)
inlinestatic

Definition at line 1120 of file OpenMPClause.h.

References clang::OMPClause::OMPClause(), and clang::T.

◆ Create()

OMPPermutationClause * OMPPermutationClause::Create ( const ASTContext & C,
SourceLocation StartLoc,
SourceLocation LParenLoc,
SourceLocation EndLoc,
ArrayRef< Expr * > Args )
static

Build a 'permutation' clause AST node.

Parameters
CContext of the AST.
StartLocLocation of the 'permutation' identifier.
LParenLocLocation of '('.
EndLocLocation of ')'.
ArgsContent of the clause.

Definition at line 975 of file OpenMPClause.cpp.

References clang::C, and CreateEmpty().

Referenced by clang::SemaOpenMP::ActOnOpenMPPermutationClause().

◆ CreateEmpty()

OMPPermutationClause * OMPPermutationClause::CreateEmpty ( const ASTContext & C,
unsigned NumLoops )
static

Build an empty 'permutation' AST node for deserialization.

Parameters
CContext of the AST.
NumLoopsNumber of arguments in the clause.

Definition at line 988 of file OpenMPClause.cpp.

References clang::C.

Referenced by Create(), and clang::OMPClauseReader::readClause().

◆ getArgsRefs() [1/2]

MutableArrayRef< Expr * > clang::OMPPermutationClause::getArgsRefs ( )
inline

Returns the permutation index expressions.

Definition at line 1098 of file OpenMPClause.h.

Referenced by clang::SemaOpenMP::ActOnOpenMPInterchangeDirective(), children(), and children().

◆ getArgsRefs() [2/2]

ArrayRef< Expr * > clang::OMPPermutationClause::getArgsRefs ( ) const
inline

Definition at line 1099 of file OpenMPClause.h.

◆ getLParenLoc()

SourceLocation clang::OMPPermutationClause::getLParenLoc ( ) const
inline

Returns the location of '('.

Definition at line 1091 of file OpenMPClause.h.

◆ getNumLoops()

unsigned clang::OMPPermutationClause::getNumLoops ( ) const
inline

Returns the number of list items.

Definition at line 1094 of file OpenMPClause.h.

Referenced by clang::SemaOpenMP::ActOnOpenMPInterchangeDirective().

◆ setLParenLoc()

void clang::OMPPermutationClause::setLParenLoc ( SourceLocation Loc)
inline

Sets the location of '('.

Definition at line 1088 of file OpenMPClause.h.

◆ used_children() [1/2]

child_range clang::OMPPermutationClause::used_children ( )
inline

Definition at line 1113 of file OpenMPClause.h.

◆ used_children() [2/2]

const_child_range clang::OMPPermutationClause::used_children ( ) const
inline

Definition at line 1116 of file OpenMPClause.h.

◆ llvm::TrailingObjects< OMPSizesClause, Expr * >

friend class llvm::TrailingObjects< OMPSizesClause, Expr * >
friend

Definition at line 1046 of file OpenMPClause.h.

References OMPClauseReader.

◆ OMPClauseReader

friend class OMPClauseReader
friend

Definition at line 1046 of file OpenMPClause.h.

Referenced by llvm::TrailingObjects< OMPSizesClause, Expr * >.


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