clang 10.0.0git

Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::OMPAllocateClause Class Referencefinal

This represents clause 'allocate' in the '#pragma omp ...' directives. More...

`#include "clang/AST/OpenMPClause.h"`

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

## Public Member Functions
Expr * | getAllocator () const
| Returns the allocator expression or nullptr, if no allocator is specified. More...
SourceLocation | getColonLoc () const
| Returns the location of the ':' delimiter. More...
child_range | children ()
const_child_range | children () const
child_range | used_children ()
const_child_range | used_children () const
Public Member Functions inherited from clang::OMPVarListClause< OMPAllocateClause >
ArrayRef< const Expr *> | getVarRefs () const
| Fetches list of all variables in the clause. More...
unsigned | varlist_size () const
bool | varlist_empty () const
varlist_range | varlists ()
varlist_const_range | varlists () const
varlist_iterator | varlist_begin ()
varlist_const_iterator | varlist_begin () const
varlist_iterator | varlist_end ()
varlist_const_iterator | varlist_end () const
void | setLParenLoc (SourceLocation Loc)
| Sets the location of '('. More...
SourceLocation | getLParenLoc () const
| Returns the location of '('. More...
Public Member Functions inherited from clang::OMPClause
SourceLocation | getBeginLoc () const
| Returns the starting location of the clause. More...
SourceLocation | getEndLoc () const
| Returns the ending location of the clause. More...
void | setLocStart (SourceLocation Loc)
| Sets the starting location of the clause. More...
void | setLocEnd (SourceLocation Loc)
| Sets the ending location of the clause. More...
OpenMPClauseKind | getClauseKind () const
| Returns kind of OpenMP clause (private, shared, reduction, etc.). More...
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. More...
const_child_range | used_children () const

## Static Public Member Functions
static OMPAllocateClause * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, Expr *Allocator, SourceLocation ColonLoc, SourceLocation EndLoc, ArrayRef< Expr *> VL)
| Creates clause with a list of variables VL. More...
static OMPAllocateClause * | CreateEmpty (const ASTContext &C, unsigned N)
| Creates an empty clause with the place for N variables. More...
static bool | classof (const OMPClause *T)
Static Public Member Functions inherited from clang::OMPClause
static bool | classof (const OMPClause *)

## Friends
class | OMPClauseReader

## Additional Inherited Members
Public Types inherited from clang::OMPVarListClause< OMPAllocateClause >
using | varlist_iterator = MutableArrayRef< Expr *>::iterator
using | varlist_const_iterator = ArrayRef< const Expr *>::iterator
using | varlist_range = llvm::iterator_range< varlist_iterator >
using | varlist_const_range = llvm::iterator_range< varlist_const_iterator >
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::OMPVarListClause< OMPAllocateClause >
| OMPVarListClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, unsigned N)
| Build a clause with N variables. More...
MutableArrayRef< Expr *> | getVarRefs ()
| Fetches list of variables associated with this clause. More...
void | setVarRefs (ArrayRef< Expr * > VL)
| Sets the list of variables for this clause. More...
Protected Member Functions inherited from clang::OMPClause
| OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc)

## Detailed Description

This represents clause 'allocate' in the '#pragma omp ...' directives.

#pragma omp parallel private(a) allocate(omp_default_mem_alloc :a)

In this example directive '#pragma omp parallel' has clause 'private' and clause 'allocate' for the variable 'a'.

Definition at line 328 of file OpenMPClause.h.

## Member Function Documentation

## ◆ children() [1/2]

child_range clang::OMPAllocateClause::children | ( |  | ) |
| inline

Definition at line 396 of file OpenMPClause.h.

## ◆ children() [2/2]

const_child_range clang::OMPAllocateClause::children | ( |  | ) | const
| inline

Definition at line 401 of file OpenMPClause.h.

References clang::OMPClause::children().

## ◆ classof()

static bool clang::OMPAllocateClause::classof | ( | const OMPClause * | T | ) |
| inline static

Definition at line 413 of file OpenMPClause.h.

References clang::OMPClause::getClauseKind().

Referenced by checkAllocateClauses().

## ◆ Create()

OMPAllocateClause * OMPAllocateClause::Create | ( | const ASTContext & | C,
|  | SourceLocation | StartLoc,
|  | SourceLocation | LParenLoc,
|  | Expr * | Allocator,
|  | SourceLocation | ColonLoc,
|  | SourceLocation | EndLoc,
|  | ArrayRef< Expr *> | VL
| ) |  |
| static

Creates clause with a list of variables VL.

Parameters

  C | AST context.
  StartLoc | Starting location of the clause.
  LParenLoc | Location of '('.
  Allocator | Allocator expression.
  ColonLoc | Location of ':' delimiter.
  EndLoc | Ending location of the clause.
  VL | List of references to the variables.

Definition at line 793 of file OpenMPClause.cpp.

## ◆ CreateEmpty()

OMPAllocateClause * OMPAllocateClause::CreateEmpty | ( | const ASTContext & | C,
|  | unsigned | N
| ) |  |
| static

Creates an empty clause with the place for N variables.

Parameters

  C | AST context.
  N | The number of variables.

Definition at line 805 of file OpenMPClause.cpp.

References clang::ASTContext::Allocate().

## ◆ getAllocator()

Expr* clang::OMPAllocateClause::getAllocator | ( |  | ) | const
| inline

Returns the allocator expression or nullptr, if no allocator is specified.

Definition at line 385 of file OpenMPClause.h.

Referenced by clang::ASTRecordWriter::writeOMPClause().

## ◆ getColonLoc()

SourceLocation clang::OMPAllocateClause::getColonLoc | ( |  | ) | const
| inline

Returns the location of the ':' delimiter.

Definition at line 388 of file OpenMPClause.h.

References clang::C, ColonLoc, and clang::CreateEmpty().

Referenced by clang::ASTRecordWriter::writeOMPClause().

## ◆ used_children() [1/2]

child_range clang::OMPAllocateClause::used_children | ( |  | ) |
| inline

Definition at line 406 of file OpenMPClause.h.

## ◆ used_children() [2/2]

const_child_range clang::OMPAllocateClause::used_children | ( |  | ) | const
| inline

Definition at line 409 of file OpenMPClause.h.

## Friends And Related Function Documentation

## ◆ OMPClauseReader

friend class OMPClauseReader
| friend

Definition at line 331 of file OpenMPClause.h.

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

- include/clang/AST/OpenMPClause.h
- lib/AST/OpenMPClause.cpp