A contiguous, one-dimensional array of integers used to represent data structures, rather than numerical data in the arrays themselves. More...
#include <Index.h>
Public Types | |
| enum class | Form { i8 , u8 , i32 , u32 , i64 , kNumIndexForm } |
| Integer type of an Index, used by ListForm, IndexedForm, etc. More... | |
Public Member Functions | |
| virtual | ~Index () |
| Virtual destructor acts as a first non-inline virtual function that determines a specific translation unit in which vtable shall be emitted. | |
| virtual const std::shared_ptr< Index > | shallow_copy () const =0 |
| Copies this Index node without copying its buffer. | |
| virtual IndexOf< int64_t > | to64 () const =0 |
Converts this Index to an Index64. | |
| virtual bool | iscontiguous () const =0 |
| Returns true if this index is contiguous false otherwise. | |
Static Public Member Functions | |
| static Form | str2form (const std::string &str) |
| Converts a string into a Form enumeration. | |
| static const std::string | form2str (Form form) |
| Converts a Form enumeration into a string. | |
A contiguous, one-dimensional array of integers used to represent data structures, rather than numerical data in the arrays themselves.
The Index superclass abstracts over templated specializations:
|
strong |
Integer type of an Index, used by ListForm, IndexedForm, etc.
| Enumerator | |
|---|---|
| i8 | |
| u8 | |
| i32 | |
| u32 | |
| i64 | |
| kNumIndexForm | |
|
virtual |
Virtual destructor acts as a first non-inline virtual function that determines a specific translation unit in which vtable shall be emitted.
|
pure virtual |
Returns true if this index is contiguous false otherwise.
Implemented in IndexOf< T >, and IndexOf< I >.
|
pure virtual |
Copies this Index node without copying its buffer.
See also #deep_copy.
Implemented in IndexOf< T >, and IndexOf< I >.
|
pure virtual |
Converts this Index to an Index64.
Implemented in IndexOf< T >, and IndexOf< I >.