CIRCT 20.0.0git
|
Public Member Functions | |
__init__ (self, cpp.BitsType cpp_type) | |
Tuple[bool, Optional[str]] | is_valid (self, obj) |
int | bit_width (self) |
bytearray | serialize (self, Union[bytearray, bytes, List[int]] obj) |
Tuple[bytearray, bytearray] | deserialize (self, bytearray data) |
Public Member Functions inherited from esiaccel.types.ESIType | |
Tuple[bool, Optional[str]] | supports_host (self) |
int | max_size (self) |
str | __str__ (self) |
Additional Inherited Members | |
Public Attributes inherited from esiaccel.types.ESIType | |
cpp_type | |
esiaccel.types.BitsType.__init__ | ( | self, | |
cpp.BitsType | cpp_type | ||
) |
Reimplemented from esiaccel.types.ESIType.
Definition at line 111 of file types.py.
References esiaccel.types.ESIType.cpp_type, esiaccel.types.StructType.cpp_type, and esiaccel.types.ArrayType.cpp_type.
int esiaccel.types.BitsType.bit_width | ( | self | ) |
Size of this type, in bits. Negative for unbounded types.
Reimplemented from esiaccel.types.ESIType.
Definition at line 125 of file types.py.
References esiaccel.types.ESIType.cpp_type, esiaccel.types.StructType.cpp_type, and esiaccel.types.ArrayType.cpp_type.
Referenced by esiaccel.types.UIntType.is_valid(), esiaccel.types.SIntType.is_valid(), esiaccel.types.ESIType.max_size(), and esiaccel.types.ESIType.supports_host().
Tuple[bytearray, bytearray] esiaccel.types.BitsType.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 135 of file types.py.
References esiaccel.types.ESIType.max_size(), esiaccel.types.UIntType.max_size, and esiaccel.types.SIntType.max_size.
Tuple[bool, Optional[str]] esiaccel.types.BitsType.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 114 of file types.py.
References esiaccel.types.ESIType.max_size(), esiaccel.types.UIntType.max_size, and esiaccel.types.SIntType.max_size.
bytearray esiaccel.types.BitsType.serialize | ( | self, | |
Union[bytearray, bytes, List[int]] | obj | ||
) |
Convert a Python object to a bytearray.
Reimplemented from esiaccel.types.ESIType.