clang 20.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 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 5549 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_iterator = ArrayRef<MappableComponent>::iterator |
Definition at line 6069 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_range = llvm::iterator_range<const_all_components_iterator> |
Definition at line 6070 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 6043 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_decls_range = llvm::iterator_range<const_all_decls_iterator> |
Definition at line 6044 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6060 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_range = llvm::iterator_range<const_all_lists_sizes_iterator> |
Definition at line 6061 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6051 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_range = llvm::iterator_range<const_all_num_lists_iterator> |
Definition at line 6052 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_component_lists_range = llvm::iterator_range<const_component_lists_iterator> |
Definition at line 6004 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 6079 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_range = llvm::iterator_range<mapperlist_const_iterator> |
Definition at line 6081 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 6078 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_range = llvm::iterator_range<mapperlist_iterator> |
Definition at line 6080 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 5592 of file OpenMPClause.h.
|
inline |
Definition at line 6073 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentsRef().
|
inline |
Definition at line 6046 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
|
inline |
Definition at line 6064 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentListSizesRef().
|
inline |
Definition at line 6055 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getDeclNumListsRef().
|
inline |
Definition at line 6021 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::component_lists_begin(), and clang::OMPMappableExprListClause< T >::component_lists_end().
|
inline |
Iterators for all component lists.
Definition at line 6008 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentListSizesRef(), clang::OMPMappableExprListClause< T >::getComponentsRef(), clang::OMPMappableExprListClause< T >::getDeclNumListsRef(), clang::OMPMappableExprListClause< T >::getUDMapperRefs(), and clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
Referenced by clang::OMPMappableExprListClause< T >::component_lists().
|
inline |
Definition at line 6014 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentsRef().
Referenced by clang::OMPMappableExprListClause< T >::component_lists(), and clang::OMPMappableExprListClause< T >::decl_component_lists_end().
|
inline |
Definition at line 6037 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), and clang::OMPMappableExprListClause< T >::decl_component_lists_end().
|
inline |
Iterators for component lists associated with the provided declaration.
Definition at line 6028 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentListSizesRef(), clang::OMPMappableExprListClause< T >::getComponentsRef(), clang::OMPMappableExprListClause< T >::getDeclNumListsRef(), clang::OMPMappableExprListClause< T >::getUDMapperRefs(), and clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
Referenced by clang::OMPMappableExprListClause< T >::decl_component_lists().
|
inline |
Definition at line 6034 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::component_lists_end().
Referenced by clang::OMPMappableExprListClause< T >::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 5659 of file OpenMPClause.h.
References clang::T.
Referenced by clang::OMPMappableExprListClause< T >::all_lists_sizes(), clang::OMPMappableExprListClause< T >::component_lists_begin(), clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), clang::OMPMappableExprListClause< T >::setClauseInfo(), and clang::OMPMappableExprListClause< T >::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 5668 of file OpenMPClause.h.
References clang::T.
|
inlineprotected |
Get the components that are in the trailing objects of the class.
Definition at line 5684 of file OpenMPClause.h.
References clang::T.
Referenced by clang::OMPMappableExprListClause< T >::all_components(), clang::OMPMappableExprListClause< T >::component_lists_begin(), clang::OMPMappableExprListClause< T >::component_lists_end(), clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), clang::OMPMappableExprListClause< T >::setClauseInfo(), and clang::OMPMappableExprListClause< T >::setComponents().
|
inlineprotected |
Get the components that are in the trailing objects of the class.
Definition at line 5692 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 5635 of file OpenMPClause.h.
References clang::T.
Referenced by clang::OMPMappableExprListClause< T >::all_num_lists(), clang::OMPMappableExprListClause< T >::component_lists_begin(), clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), clang::OMPMappableExprListClause< T >::setClauseInfo(), and clang::OMPMappableExprListClause< T >::setDeclNumLists().
|
inlineprotected |
Get the number of lists per declaration that are in the trailing objects of the class.
Definition at line 5643 of file OpenMPClause.h.
References clang::T.
|
inline |
Gets the name info for associated user-defined mapper.
Definition at line 5846 of file OpenMPClause.h.
|
inline |
Gets the nested name specifier for associated user-defined mapper.
Definition at line 5841 of file OpenMPClause.h.
|
inline |
Return the number of lists derived from the clause expressions.
Definition at line 5834 of file OpenMPClause.h.
|
inline |
Return the total number of components in all lists derived from the clause.
Definition at line 5838 of file OpenMPClause.h.
|
inlineprotected |
Get the user-defined mapper references that are in the trailing objects of the class.
Definition at line 5799 of file OpenMPClause.h.
References clang::T.
Referenced by clang::OMPMappableExprListClause< T >::component_lists_begin(), clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), clang::OMPMappableExprListClause< T >::mapperlist_begin(), clang::OMPMappableExprListClause< T >::mapperlist_end(), and clang::OMPMappableExprListClause< T >::setUDMapperRefs().
|
inlineprotected |
Get the user-defined mappers references that are in the trailing objects of the class.
Definition at line 5810 of file OpenMPClause.h.
References clang::T.
|
inline |
Return the number of unique base declarations in this clause.
Definition at line 5831 of file OpenMPClause.h.
|
inlineprotected |
Get the unique declarations that are in the trailing objects of the class.
Definition at line 5610 of file OpenMPClause.h.
References clang::T.
Referenced by clang::OMPMappableExprListClause< T >::all_decls(), clang::OMPMappableExprListClause< T >::component_lists_begin(), clang::OMPMappableExprListClause< T >::decl_component_lists_begin(), clang::OMPMappableExprListClause< T >::setClauseInfo(), and clang::OMPMappableExprListClause< T >::setUniqueDecls().
|
inlineprotected |
Get the unique declarations that are in the trailing objects of the class.
Definition at line 5618 of file OpenMPClause.h.
References clang::T.
|
inline |
Definition at line 6084 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
Referenced by clang::OMPMappableExprListClause< T >::mapperlists().
|
inline |
Definition at line 6086 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
|
inline |
Definition at line 6085 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
Referenced by clang::OMPMappableExprListClause< T >::mapperlists().
|
inline |
Definition at line 6089 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
|
inline |
Definition at line 6092 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::mapperlist_begin(), and clang::OMPMappableExprListClause< T >::mapperlist_end().
|
inline |
Definition at line 6095 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::mapperlist_begin(), and clang::OMPMappableExprListClause< T >::mapperlist_end().
|
inlineprotected |
Fill the clause information from the list of declarations and associated component lists.
Definition at line 5713 of file OpenMPClause.h.
References clang::C, D, clang::OMPMappableExprListClause< T >::getComponentListSizesRef(), clang::OMPMappableExprListClause< T >::getComponentsRef(), clang::OMPClauseMappableExprCommon::getComponentsTotalNumber(), clang::OMPMappableExprListClause< T >::getDeclNumListsRef(), clang::OMPClauseMappableExprCommon::getUniqueDeclarationsTotalNumber(), and clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
Referenced by clang::OMPUseDevicePtrClause::Create(), clang::OMPIsDevicePtrClause::Create(), and clang::OMPMapClause::Create().
|
inlineprotected |
Set the cumulative component lists sizes that are in the trailing objects of the class.
Definition at line 5677 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::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 5702 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentsRef().
|
inlineprotected |
Set the number of lists per declaration that are in the trailing objects of the class.
Definition at line 5651 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getDeclNumListsRef().
|
inlineprotected |
Set the name of associated user-defined mapper.
Definition at line 5793 of file OpenMPClause.h.
|
inlineprotected |
Set the nested name specifier of associated user-defined mapper.
Definition at line 5788 of file OpenMPClause.h.
|
inlineprotected |
Set the user-defined mappers that are in the trailing objects of the class.
Definition at line 5821 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
Referenced by clang::OMPMapClause::Create().
|
inlineprotected |
Set the unique declarations that are in the trailing objects of the class.
Definition at line 5627 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
|
friend |
Definition at line 5551 of file OpenMPClause.h.