CIRCT  20.0.0git
Public Member Functions | Private Attributes | List of all members
esi::ArrayType Class Reference

Arrays have a compile time specified (static) size and an element type. More...

#include <Types.h>

Inheritance diagram for esi::ArrayType:
Inheritance graph
[legend]
Collaboration diagram for esi::ArrayType:
Collaboration graph
[legend]

Public Member Functions

 ArrayType (const ID &id, const Type *elementType, uint64_t size)
 
const TypegetElementType () const
 
uint64_t getSize () const
 
std::ptrdiff_t getBitWidth () const override
 
- Public Member Functions inherited from esi::Type
 Type (const ID &id)
 
virtual ~Type ()=default
 
ID getID () const
 

Private Attributes

const TypeelementType
 
uint64_t size
 

Additional Inherited Members

- Public Types inherited from esi::Type
using ID = std::string
 
- Protected Attributes inherited from esi::Type
ID id
 

Detailed Description

Arrays have a compile time specified (static) size and an element type.

Definition at line 154 of file Types.h.

Constructor & Destructor Documentation

◆ ArrayType()

esi::ArrayType::ArrayType ( const ID id,
const Type elementType,
uint64_t  size 
)
inline

Definition at line 156 of file Types.h.

Member Function Documentation

◆ getBitWidth()

std::ptrdiff_t esi::ArrayType::getBitWidth ( ) const
inlineoverridevirtual

Reimplemented from esi::Type.

Definition at line 161 of file Types.h.

References elementType, esi::Type::getBitWidth(), and size.

◆ getElementType()

const Type* esi::ArrayType::getElementType ( ) const
inline

Definition at line 159 of file Types.h.

References elementType.

Referenced by PYBIND11_MODULE().

◆ getSize()

uint64_t esi::ArrayType::getSize ( ) const
inline

Definition at line 160 of file Types.h.

References size.

Referenced by PYBIND11_MODULE().

Member Data Documentation

◆ elementType

const Type* esi::ArrayType::elementType
private

Definition at line 169 of file Types.h.

Referenced by getBitWidth(), and getElementType().

◆ size

uint64_t esi::ArrayType::size
private

The documentation for this class was generated from the following file: