|
CIRCT 24.0.0git
|


Public Member Functions | |
| __init__ (self, str id, "ESIType" element_type, int size) | |
| Tuple[bool, Optional[str]] | is_valid (self, obj) |
| bytearray | serialize (self, list lst) |
| Tuple[List[Any], bytearray] | deserialize (self, bytearray data) |
Public Member Functions inherited from esiaccel.types.ESIType | |
| wrap_cpp (cls, cpp.Type cpp_type) | |
| str | id (self) |
| Tuple[bool, Optional[str]] | supports_host (self) |
| int | bit_width (self) |
| int | max_size (self) |
| int | __hash__ (self) |
| bool | __eq__ (self, other) |
| str | __str__ (self) |
Public Attributes | |
| element_type | |
| size | |
Public Attributes inherited from esiaccel.types.ESIType | |
| cpp_type | |
| id | |
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 357 of file types.py.
References esiaccel.types.ArrayType._init_from_cpp(), esiaccel.types.BundleType._init_from_cpp(), esiaccel.types.ChannelType._init_from_cpp(), esiaccel.types.ListType._init_from_cpp(), esiaccel.types.StructType._init_from_cpp(), esiaccel.types.ESIType._init_from_cpp(), esiaccel.types.TypeAlias._init_from_cpp(), esiaccel.types.UnionType._init_from_cpp(), and esiaccel.types.WindowType._init_from_cpp().
Referenced by synth.LongestPathCollection.drop_non_critical_paths(), and synth.LongestPathCollection.merge().
|
protected |
Initialize instance attributes from a C++ type object.
Reimplemented from esiaccel.types.ESIType.
Definition at line 360 of file types.py.
References esiaccel.types.ArrayType._init_from_cpp().
Referenced by esiaccel.types.ESIType.__init__(), esiaccel.types.VoidType.__init__(), esiaccel.types.AnyType.__init__(), esiaccel.types.ListType.__init__(), esiaccel.types.ArrayType.__init__(), esiaccel.types.ChannelType.__init__(), esiaccel.types.BitsType.__init__(), esiaccel.types.IntType.__init__(), esiaccel.types.UIntType.__init__(), esiaccel.types.SIntType.__init__(), esiaccel.types.BundleType.__init__(), esiaccel.types.StructType.__init__(), esiaccel.types.UnionType.__init__(), esiaccel.types.TypeAlias.__init__(), esiaccel.types.WindowType.__init__(), and esiaccel.types.ArrayType._init_from_cpp().
| 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 383 of file types.py.
References esiaccel.types.ArrayType.deserialize(), esiaccel.types.ArrayType.element_type, esiaccel.types.ListType.element_type, IgraphInstancePath.size, circt::arc::runtime::impl::TraceBuffer.size, circt::firrtl::AnnotationSet.size(), circt::hw::ModulePortInfo.size(), circt::synth::LogicNetwork.size(), circt::synth::CutSet.size(), circt::ReducePatternSet.size(), circt::TestCase.size, circt::igraph::InstancePath.size(), circt::pretty::PrettyPrinter::FormattedToken.size, circt::CyclicOpSCC.size(), circt::Cube.size(), EmittedExpressionState.size, esi::Segment.size, esi::MessageData.size(), esi::ChannelPort::TranslationInfo::CopyOp.size, esi::services::MMIO::RegionDescriptor.size, esi::IndexedPorts< T >.size(), esi::ArrayType.size, esi::BitVector.size(), CosimHostMem::CosimHostMemRegion.size, TraceHostMem::TraceHostMemRegion.size, esiaccel.types.ArrayType.size, FieldInfo.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 366 of file types.py.
References esiaccel.types.ArrayType.element_type, esiaccel.types.ListType.element_type, esiaccel.types.ArrayType.is_valid(), IgraphInstancePath.size, circt::arc::runtime::impl::TraceBuffer.size, circt::firrtl::AnnotationSet.size(), circt::hw::ModulePortInfo.size(), circt::synth::LogicNetwork.size(), circt::synth::CutSet.size(), circt::ReducePatternSet.size(), circt::TestCase.size, circt::igraph::InstancePath.size(), circt::pretty::PrettyPrinter::FormattedToken.size, circt::CyclicOpSCC.size(), circt::Cube.size(), EmittedExpressionState.size, esi::Segment.size, esi::MessageData.size(), esi::ChannelPort::TranslationInfo::CopyOp.size, esi::services::MMIO::RegionDescriptor.size, esi::IndexedPorts< T >.size(), esi::ArrayType.size, esi::BitVector.size(), CosimHostMem::CosimHostMemRegion.size, TraceHostMem::TraceHostMemRegion.size, esiaccel.types.ArrayType.size, FieldInfo.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 377 of file types.py.
References esiaccel.types.ArrayType.element_type, esiaccel.types.ListType.element_type, and esiaccel.types.ArrayType.serialize().
Referenced by esiaccel.types.ArrayType.serialize().
| esiaccel.types.ArrayType.element_type |
Definition at line 363 of file types.py.
Referenced by esiaccel.types.ArrayType.deserialize(), esiaccel.types.ArrayType.is_valid(), esiaccel.types.ListType.is_valid(), and esiaccel.types.ArrayType.serialize().
| esiaccel.types.ArrayType.size |
Definition at line 364 of file types.py.
Referenced by esiaccel.types.ArrayType.deserialize(), and esiaccel.types.ArrayType.is_valid().