CIRCT 22.0.0git
|
Public Member Functions | |
__init__ (self, str id, "ESIType" element_type, int size) | |
int | bit_width (self) |
Tuple[bool, Optional[str]] | is_valid (self, obj) |
bytearray | serialize (self, list lst) |
Tuple[List[Any], bytearray] | deserialize (self, bytearray data) |
![]() | |
wrap_cpp (cls, cpp.Type cpp_type) | |
Tuple[bool, Optional[str]] | supports_host (self) |
int | max_size (self) |
str | __str__ (self) |
Public Attributes | |
element_type | |
size | |
![]() | |
cpp_type | |
Protected Member Functions | |
_init_from_cpp (self, cpp.ArrayType cpp_type) | |
esiaccel.types.ArrayType.__init__ | ( | self, | |
str | id, | ||
"ESIType" | element_type, | ||
int | size | ||
) |
Reimplemented from esiaccel.types.ESIType.
Definition at line 289 of file types.py.
References esiaccel.types.ArrayType._init_from_cpp(), esiaccel.types.StructType._init_from_cpp(), and esiaccel.types.ESIType._init_from_cpp().
|
protected |
Initialize instance attributes from a C++ type object.
Reimplemented from esiaccel.types.ESIType.
Definition at line 292 of file types.py.
References esiaccel.types.ArrayType._init_from_cpp().
Referenced by esiaccel.types.ESIType.__init__(), esiaccel.types.VoidType.__init__(), esiaccel.types.ArrayType.__init__(), esiaccel.types.BitsType.__init__(), esiaccel.types.IntType.__init__(), esiaccel.types.UIntType.__init__(), esiaccel.types.SIntType.__init__(), esiaccel.types.StructType.__init__(), and esiaccel.types.ArrayType._init_from_cpp().
int esiaccel.types.ArrayType.bit_width | ( | self | ) |
Size of this type, in bits. Negative for unbounded types.
Reimplemented from esiaccel.types.ESIType.
Definition at line 299 of file types.py.
References esiaccel.types.ArrayType.element_type, IgraphInstancePath.size, circt::firrtl::AnnotationSet.size(), circt::hw::ModulePortInfo.size(), circt::synth::CutSet.size(), circt::ReducePatternSet.size(), circt::TestCase.size, circt::igraph::InstancePath.size(), circt::pretty::PrettyPrinter::FormattedToken.size, EmittedExpressionState.size, esi::services::MMIO::RegionDescriptor.size, esi::ArrayType.size, CosimHostMem::CosimHostMemRegion.size, TraceHostMem::TraceHostMemRegion.size, esiaccel.types.ArrayType.size, MutableNLA.size, MemoryStorage.size, and ArraySlice.size.
Referenced by esiaccel.types.UIntType.is_valid(), esiaccel.types.SIntType.is_valid(), esiaccel.types.ESIType.max_size(), and esiaccel.types.ESIType.supports_host().
Tuple[List[Any], bytearray] esiaccel.types.ArrayType.deserialize | ( | self, | |
bytearray | data | ||
) |
Convert a bytearray to a Python object. Return the object and the leftover bytes.
Reimplemented from esiaccel.types.ESIType.
Definition at line 319 of file types.py.
References esiaccel.types.ArrayType.deserialize(), esiaccel.types.ArrayType.element_type, IgraphInstancePath.size, circt::firrtl::AnnotationSet.size(), circt::hw::ModulePortInfo.size(), circt::synth::CutSet.size(), circt::ReducePatternSet.size(), circt::TestCase.size, circt::igraph::InstancePath.size(), circt::pretty::PrettyPrinter::FormattedToken.size, EmittedExpressionState.size, esi::services::MMIO::RegionDescriptor.size, esi::ArrayType.size, CosimHostMem::CosimHostMemRegion.size, TraceHostMem::TraceHostMemRegion.size, esiaccel.types.ArrayType.size, MutableNLA.size, MemoryStorage.size, and ArraySlice.size.
Referenced by esiaccel.types.ArrayType.deserialize().
Tuple[bool, Optional[str]] esiaccel.types.ArrayType.is_valid | ( | self, | |
obj | |||
) |
Is a Python object compatible with HW type? Returns either '(True, None)' if it is, or '(False, reason)' if it is not.
Reimplemented from esiaccel.types.ESIType.
Definition at line 302 of file types.py.
References esiaccel.types.ArrayType.element_type, esiaccel.types.ArrayType.is_valid(), IgraphInstancePath.size, circt::firrtl::AnnotationSet.size(), circt::hw::ModulePortInfo.size(), circt::synth::CutSet.size(), circt::ReducePatternSet.size(), circt::TestCase.size, circt::igraph::InstancePath.size(), circt::pretty::PrettyPrinter::FormattedToken.size, EmittedExpressionState.size, esi::services::MMIO::RegionDescriptor.size, esi::ArrayType.size, CosimHostMem::CosimHostMemRegion.size, TraceHostMem::TraceHostMemRegion.size, esiaccel.types.ArrayType.size, MutableNLA.size, MemoryStorage.size, and ArraySlice.size.
Referenced by esiaccel.types.ArrayType.is_valid().
bytearray esiaccel.types.ArrayType.serialize | ( | self, | |
list | obj | ||
) |
Convert a Python object to a bytearray.
Reimplemented from esiaccel.types.ESIType.
Definition at line 313 of file types.py.
References esiaccel.types.ArrayType.element_type, and esiaccel.types.ArrayType.serialize().
Referenced by esiaccel.types.ArrayType.serialize().
esiaccel.types.ArrayType.element_type |
Definition at line 295 of file types.py.
Referenced by esiaccel.types.ArrayType.bit_width(), esiaccel.types.ArrayType.deserialize(), esiaccel.types.ArrayType.is_valid(), and esiaccel.types.ArrayType.serialize().
esiaccel.types.ArrayType.size |
Definition at line 296 of file types.py.
Referenced by esiaccel.types.ArrayType.bit_width(), esiaccel.types.ArrayType.deserialize(), and esiaccel.types.ArrayType.is_valid().