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 5673 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_iterator = ArrayRef<MappableComponent>::iterator |
Definition at line 6193 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_components_range = llvm::iterator_range<const_all_components_iterator> |
Definition at line 6194 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 6167 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_decls_range = llvm::iterator_range<const_all_decls_iterator> |
Definition at line 6168 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6184 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_lists_sizes_range = llvm::iterator_range<const_all_lists_sizes_iterator> |
Definition at line 6185 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_iterator = ArrayRef<unsigned>::iterator |
Definition at line 6175 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_all_num_lists_range = llvm::iterator_range<const_all_num_lists_iterator> |
Definition at line 6176 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::const_component_lists_range = llvm::iterator_range<const_component_lists_iterator> |
Definition at line 6128 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 6203 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_const_range = llvm::iterator_range<mapperlist_const_iterator> |
Definition at line 6205 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 6202 of file OpenMPClause.h.
using clang::OMPMappableExprListClause< T >::mapperlist_range = llvm::iterator_range<mapperlist_iterator> |
Definition at line 6204 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 5716 of file OpenMPClause.h.
|
inline |
Definition at line 6197 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentsRef().
|
inline |
Definition at line 6170 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
|
inline |
Definition at line 6188 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getComponentListSizesRef().
|
inline |
Definition at line 6179 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getDeclNumListsRef().
|
inline |
Definition at line 6145 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 6132 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 6138 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 6161 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 6152 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 6158 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 5783 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 5792 of file OpenMPClause.h.
References clang::T.
|
inlineprotected |
Get the components that are in the trailing objects of the class.
Definition at line 5808 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 5816 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 5759 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 5767 of file OpenMPClause.h.
References clang::T.
|
inline |
Gets the name info for associated user-defined mapper.
Definition at line 5970 of file OpenMPClause.h.
|
inline |
Gets the nested name specifier for associated user-defined mapper.
Definition at line 5965 of file OpenMPClause.h.
|
inline |
Return the number of lists derived from the clause expressions.
Definition at line 5958 of file OpenMPClause.h.
|
inline |
Return the total number of components in all lists derived from the clause.
Definition at line 5962 of file OpenMPClause.h.
|
inlineprotected |
Get the user-defined mapper references that are in the trailing objects of the class.
Definition at line 5923 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 5934 of file OpenMPClause.h.
References clang::T.
|
inline |
Return the number of unique base declarations in this clause.
Definition at line 5955 of file OpenMPClause.h.
|
inlineprotected |
Get the unique declarations that are in the trailing objects of the class.
Definition at line 5734 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 5742 of file OpenMPClause.h.
References clang::T.
|
inline |
Definition at line 6208 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
Referenced by clang::OMPMappableExprListClause< T >::mapperlists().
|
inline |
Definition at line 6210 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
|
inline |
Definition at line 6209 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
Referenced by clang::OMPMappableExprListClause< T >::mapperlists().
|
inline |
Definition at line 6213 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUDMapperRefs().
|
inline |
Definition at line 6216 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::mapperlist_begin(), and clang::OMPMappableExprListClause< T >::mapperlist_end().
|
inline |
Definition at line 6219 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 5837 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 5801 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 5826 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 5775 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getDeclNumListsRef().
|
inlineprotected |
Set the name of associated user-defined mapper.
Definition at line 5917 of file OpenMPClause.h.
|
inlineprotected |
Set the nested name specifier of associated user-defined mapper.
Definition at line 5912 of file OpenMPClause.h.
|
inlineprotected |
Set the user-defined mappers that are in the trailing objects of the class.
Definition at line 5945 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 5751 of file OpenMPClause.h.
References clang::OMPMappableExprListClause< T >::getUniqueDeclsRef().
|
friend |
Definition at line 5675 of file OpenMPClause.h.