| MLIR
    22.0.0git
    | 
This class provides support for indexing into the element range of an ElementsAttr. More...
#include "mlir/IR/BuiltinAttributeInterfaces.h"
| Public Member Functions | |
| ElementsAttrIndexer () | |
| ElementsAttrIndexer (ElementsAttrIndexer &&rhs) | |
| ElementsAttrIndexer (const ElementsAttrIndexer &rhs) | |
| ~ElementsAttrIndexer () | |
| template<typename T > | |
| T | at (uint64_t index) const | 
| Access the element at the given index.  More... | |
| Static Public Member Functions | |
| template<typename IteratorT > | |
| static ElementsAttrIndexer | nonContiguous (bool isSplat, IteratorT &&iterator) | 
| Construct an indexer for a non-contiguous range starting at the given iterator.  More... | |
| template<typename T > | |
| static ElementsAttrIndexer | contiguous (bool isSplat, const T *firstEltPtr) | 
This class provides support for indexing into the element range of an ElementsAttr.
It is used to opaquely wrap either a contiguous range, via ElementsAttrIndexer::contiguous, or a non-contiguous range, via ElementsAttrIndexer::nonContiguous, A contiguous range is an array-like range, where all of the elements are layed out sequentially in memory. A non-contiguous range implies no contiguity, and elements may even be materialized when indexing, such as the case for a mapped_range. 
Definition at line 33 of file BuiltinAttributeInterfaces.h.
| 
 | inline | 
Definition at line 35 of file BuiltinAttributeInterfaces.h.
| 
 | inline | 
Definition at line 37 of file BuiltinAttributeInterfaces.h.
References conState, and nonConState.
| 
 | inline | 
Definition at line 44 of file BuiltinAttributeInterfaces.h.
References conState, and nonConState.
| 
 | inline | 
Definition at line 51 of file BuiltinAttributeInterfaces.h.
References nonConState.
| 
 | inline | 
Access the element at the given index.
Definition at line 79 of file BuiltinAttributeInterfaces.h.
References conState, and nonConState.
Referenced by mlir::detail::ElementsAttrIterator< T >::operator*().
| 
 | inlinestatic | 
Definition at line 71 of file BuiltinAttributeInterfaces.h.
References conState.
| 
 | inlinestatic | 
Construct an indexer for a non-contiguous range starting at the given iterator.
A non-contiguous range implies no contiguity, and elements may even be materialized when indexing, such as the case for a mapped_range.
Definition at line 60 of file BuiltinAttributeInterfaces.h.
References nonConState.
| ContiguousState mlir::detail::ElementsAttrIndexer::conState | 
Definition at line 191 of file BuiltinAttributeInterfaces.h.
Referenced by at(), contiguous(), and ElementsAttrIndexer().
| NonContiguousState mlir::detail::ElementsAttrIndexer::nonConState | 
Definition at line 192 of file BuiltinAttributeInterfaces.h.
Referenced by at(), ElementsAttrIndexer(), nonContiguous(), and ~ElementsAttrIndexer().