clang 22.0.0git
|
This represents clauses with a list of expressions that are mappable. More...
#include "clang/AST/OpenMPClause.h"
Classes | |
class | const_component_lists_iterator |
Iterator that browse the components by lists. More... |
Protected Member Functions | |
OMPMappableExprListClause (OpenMPClauseKind K, const OMPVarListLocTy &Locs, const OMPMappableExprListSizeTy &Sizes, bool SupportsMapper=false, NestedNameSpecifierLoc *MapperQualifierLocPtr=nullptr, DeclarationNameInfo *MapperIdInfoPtr=nullptr) | |
Build a clause for NumUniqueDeclarations declarations, NumComponentLists total component lists, and NumComponents total components. | |
MutableArrayRef< ValueDecl * > | getUniqueDeclsRef () |
Get the unique declarations that are in the trailing objects of the class. | |
ArrayRef< ValueDecl * > | getUniqueDeclsRef () const |
Get the unique declarations that are in the trailing objects of the class. | |
void | setUniqueDecls (ArrayRef< ValueDecl * > UDs) |
Set the unique declarations that are in the trailing objects of the class. | |
MutableArrayRef< unsigned > | getDeclNumListsRef () |
Get the number of lists per declaration that are in the trailing objects of the class. | |
ArrayRef< unsigned > | getDeclNumListsRef () const |
Get the number of lists per declaration that are in the trailing objects of the class. | |
void | setDeclNumLists (ArrayRef< unsigned > DNLs) |
Set the number of lists per declaration that are in the trailing objects of the class. | |
MutableArrayRef< unsigned > | getComponentListSizesRef () |
Get the cumulative component lists sizes that are in the trailing objects of the class. | |
ArrayRef< unsigned > | getComponentListSizesRef () const |
Get the cumulative component lists sizes that are in the trailing objects of the class. | |
void | setComponentListSizes (ArrayRef< unsigned > CLSs) |
Set the cumulative component lists sizes that are in the trailing objects of the class. | |
MutableArrayRef< MappableComponent > | getComponentsRef () |
Get the components that are in the trailing objects of the class. | |
ArrayRef< MappableComponent > | getComponentsRef () const |
Get the components that are in the trailing objects of the class. | |
void | setComponents (ArrayRef< MappableComponent > Components, ArrayRef< unsigned > CLSs) |
Set the components that are in the trailing objects of the class. | |
void | setClauseInfo (ArrayRef< ValueDecl * > Declarations, MappableExprComponentListsRef ComponentLists) |
Fill the clause information from the list of declarations and associated component lists. | |
void | setMapperQualifierLoc (NestedNameSpecifierLoc NNSL) |
Set the nested name specifier of associated user-defined mapper. | |
void | setMapperIdInfo (DeclarationNameInfo MapperId) |
Set the name of associated user-defined mapper. | |
MutableArrayRef< Expr * > | getUDMapperRefs () |
Get the user-defined mapper references that are in the trailing objects of the class. | |
ArrayRef< Expr * > | getUDMapperRefs () const |
Get the user-defined mappers references that are in the trailing objects of the class. | |
void | setUDMapperRefs (ArrayRef< Expr * > DMDs) |
Set the user-defined mappers that are in the trailing objects of the class. | |
Protected Member Functions inherited from clang::OMPVarListClause< T > | |
OMPVarListClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, unsigned N) | |
Build a clause with N variables. | |
MutableArrayRef< Expr * > | getVarRefs () |
Fetches list of variables associated with this clause. | |
void | setVarRefs (ArrayRef< Expr * > VL) |
Sets the list of variables for this clause. | |
Protected Member Functions inherited from clang::OMPClause | |
OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc) |
Friends | |
class | OMPClauseReader |
Additional Inherited Members | |
Static Public Member Functions inherited from clang::OMPClause | |
static bool | classof (const OMPClause *) |
Static Public Member Functions inherited from clang::OMPClauseMappableExprCommon | |
static QualType | getComponentExprElementType (const Expr *Exp) |
Get the type of an element of a ComponentList Expr Exp . | |
static std::pair< const Expr *, std::optional< size_t > > | findAttachPtrExpr (MappableExprComponentListRef Components, OpenMPDirectiveKind CurDirKind) |
Find the attach pointer expression from a list of mappable expression components. | |
Static Protected Member Functions inherited from clang::OMPClauseMappableExprCommon | |
static unsigned | getComponentsTotalNumber (MappableExprComponentListsRef ComponentLists) |
static unsigned | getUniqueDeclarationsTotalNumber (ArrayRef< const ValueDecl * > Declarations) |
This represents clauses with a list of expressions that are mappable.
Examples of these clauses are 'map' in '#pragma omp target [enter|exit] [data]...' directives, and 'to' and 'from in '#pragma omp target update...' directives.
Definition at line 6035 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_iterator = ArrayRef<MappableComponent>::iterator |
Definition at line 6552 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_range |
Definition at line 6553 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_decls_iterator = ArrayRef<ValueDecl *>::iterator |
Iterators to access all the declarations, number of lists, list sizes, and components.
Definition at line 6526 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_decls_range = llvm::iterator_range<const_all_decls_iterator> |
Definition at line 6527 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6543 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_range |
Definition at line 6544 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6534 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_range |
Definition at line 6535 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_component_lists_range |
Definition at line 6487 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 6562 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_range |
Definition at line 6564 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 6561 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_range = llvm::iterator_range<mapperlist_iterator> |
Definition at line 6563 of file OpenMPClause.h.
|
inlineprotected |
Build a clause for NumUniqueDeclarations declarations, NumComponentLists total component lists, and NumComponents total components.
K | Kind of the clause. |
Locs | Locations needed to build a mappable clause. It includes 1) StartLoc: starting location of the clause (the clause keyword); 2) LParenLoc: location of '('; 3) EndLoc: ending location of the clause. |
Sizes | All required sizes to build a mappable clause. It includes 1) NumVars: number of expressions listed in this clause; 2) NumUniqueDeclarations: number of unique base declarations in this clause; 3) NumComponentLists: number of component lists in this clause; and 4) NumComponents: total number of expression components in the clause. |
SupportsMapper | Indicates whether this clause is possible to have user-defined mappers associated. |
MapperQualifierLocPtr | C++ nested name specifier for the associated user-defined mapper. |
MapperIdInfoPtr | The identifier of associated user-defined mapper. |
Definition at line 6078 of file OpenMPClause.h.
References clang::OMPVarListClause< T >::OMPVarListClause(), and clang::T.
|
inline |
Definition at line 6556 of file OpenMPClause.h.
References getComponentsRef().
|
inline |
Definition at line 6529 of file OpenMPClause.h.
References getUniqueDeclsRef().
|
inline |
Definition at line 6547 of file OpenMPClause.h.
References getComponentListSizesRef().
|
inline |
Definition at line 6538 of file OpenMPClause.h.
References getDeclNumListsRef().
|
inline |
Definition at line 6504 of file OpenMPClause.h.
References component_lists_begin(), and component_lists_end().
|
inline |
Iterators for all component lists.
Definition at line 6491 of file OpenMPClause.h.
References getComponentListSizesRef(), getComponentsRef(), getDeclNumListsRef(), getUDMapperRefs(), and getUniqueDeclsRef().
Referenced by component_lists().
|
inline |
Definition at line 6497 of file OpenMPClause.h.
References getComponentsRef().
Referenced by component_lists(), and decl_component_lists_end().
|
inline |
Definition at line 6520 of file OpenMPClause.h.
References decl_component_lists_begin(), and decl_component_lists_end().
|
inline |
Iterators for component lists associated with the provided declaration.
Definition at line 6511 of file OpenMPClause.h.
References getComponentListSizesRef(), getComponentsRef(), getDeclNumListsRef(), getUDMapperRefs(), and getUniqueDeclsRef().
Referenced by decl_component_lists().
|
inline |
Definition at line 6517 of file OpenMPClause.h.
References component_lists_end().
Referenced by decl_component_lists().
|
inlineprotected |
Get the cumulative component lists sizes that are in the trailing objects of the class.
They are appended after the number of lists.
Definition at line 6142 of file OpenMPClause.h.
References clang::T.
Referenced by all_lists_sizes(), component_lists_begin(), decl_component_lists_begin(), setClauseInfo(), and setComponentListSizes().
|
inlineprotected |
Get the cumulative component lists sizes that are in the trailing objects of the class.
They are appended after the number of lists.
Definition at line 6152 of file OpenMPClause.h.
References clang::T.
|
inlineprotected |
Get the components that are in the trailing objects of the class.
Definition at line 6169 of file OpenMPClause.h.
References clang::T.
Referenced by all_components(), component_lists_begin(), component_lists_end(), decl_component_lists_begin(), setClauseInfo(), and setComponents().
|
inlineprotected |
Get the components that are in the trailing objects of the class.
Definition at line 6176 of file OpenMPClause.h.
References clang::T.
|
inlineprotected |
Get the number of lists per declaration that are in the trailing objects of the class.
Definition at line 6120 of file OpenMPClause.h.
References clang::T.
Referenced by all_num_lists(), component_lists_begin(), decl_component_lists_begin(), setClauseInfo(), and setDeclNumLists().
|
inlineprotected |
Get the number of lists per declaration that are in the trailing objects of the class.
Definition at line 6127 of file OpenMPClause.h.
References clang::T.
|
inline |
Gets the name info for associated user-defined mapper.
Definition at line 6329 of file OpenMPClause.h.
|
inline |
Gets the nested name specifier for associated user-defined mapper.
Definition at line 6324 of file OpenMPClause.h.
|
inline |
Return the number of lists derived from the clause expressions.
Definition at line 6317 of file OpenMPClause.h.
|
inline |
Return the total number of components in all lists derived from the clause.
Definition at line 6321 of file OpenMPClause.h.
|
inlineprotected |
Get the user-defined mapper references that are in the trailing objects of the class.
Definition at line 6282 of file OpenMPClause.h.
References clang::T, and clang::OMPVarListClause< T >::varlist_size().
Referenced by component_lists_begin(), decl_component_lists_begin(), mapperlist_begin(), mapperlist_begin(), mapperlist_end(), mapperlist_end(), and setUDMapperRefs().
|
inlineprotected |
Get the user-defined mappers references that are in the trailing objects of the class.
Definition at line 6293 of file OpenMPClause.h.
References clang::T, and clang::OMPVarListClause< T >::varlist_size().
|
inline |
Return the number of unique base declarations in this clause.
Definition at line 6314 of file OpenMPClause.h.
|
inlineprotected |
Get the unique declarations that are in the trailing objects of the class.
Definition at line 6096 of file OpenMPClause.h.
References clang::T.
Referenced by all_decls(), component_lists_begin(), decl_component_lists_begin(), setClauseInfo(), and setUniqueDecls().
|
inlineprotected |
Get the unique declarations that are in the trailing objects of the class.
Definition at line 6104 of file OpenMPClause.h.
References clang::T.
|
inline |
Definition at line 6567 of file OpenMPClause.h.
References getUDMapperRefs().
Referenced by mapperlists(), and mapperlists().
|
inline |
Definition at line 6569 of file OpenMPClause.h.
References getUDMapperRefs().
|
inline |
Definition at line 6568 of file OpenMPClause.h.
References getUDMapperRefs().
Referenced by mapperlists(), and mapperlists().
|
inline |
Definition at line 6572 of file OpenMPClause.h.
References getUDMapperRefs().
|
inline |
Definition at line 6575 of file OpenMPClause.h.
References mapperlist_begin(), and mapperlist_end().
|
inline |
Definition at line 6578 of file OpenMPClause.h.
References mapperlist_begin(), and mapperlist_end().
|
inlineprotected |
Fill the clause information from the list of declarations and associated component lists.
Definition at line 6196 of file OpenMPClause.h.
References clang::C, getComponentListSizesRef(), getComponentsRef(), clang::OMPClauseMappableExprCommon::getComponentsTotalNumber(), getDeclNumListsRef(), clang::OMPClauseMappableExprCommon::getUniqueDeclarationsTotalNumber(), and getUniqueDeclsRef().
|
inlineprotected |
Set the cumulative component lists sizes that are in the trailing objects of the class.
Definition at line 6162 of file OpenMPClause.h.
References getComponentListSizesRef().
|
inlineprotected |
Set the components that are in the trailing objects of the class.
This requires the list sizes so that it can also fill the original expressions, which are the first component of each list.
Definition at line 6185 of file OpenMPClause.h.
References getComponentsRef().
|
inlineprotected |
Set the number of lists per declaration that are in the trailing objects of the class.
Definition at line 6134 of file OpenMPClause.h.
References getDeclNumListsRef().
|
inlineprotected |
Set the name of associated user-defined mapper.
Definition at line 6276 of file OpenMPClause.h.
|
inlineprotected |
Set the nested name specifier of associated user-defined mapper.
Definition at line 6271 of file OpenMPClause.h.
|
inlineprotected |
Set the user-defined mappers that are in the trailing objects of the class.
Definition at line 6304 of file OpenMPClause.h.
References getUDMapperRefs(), and clang::OMPVarListClause< T >::varlist_size().
|
inlineprotected |
Set the unique declarations that are in the trailing objects of the class.
Definition at line 6112 of file OpenMPClause.h.
References getUniqueDeclsRef().
|
friend |
Definition at line 6037 of file OpenMPClause.h.
References OMPClauseReader.
Referenced by OMPClauseReader.