CIRCT
20.0.0git
|
Public Member Functions | |
def | __init__ (self, cpp.Type cpp_type) |
Tuple[bool, Optional[str]] | supports_host (self) |
Tuple[bool, Optional[str]] | is_valid (self, obj) |
int | bit_width (self) |
int | max_size (self) |
bytearray | serialize (self, obj) |
Tuple[object, bytearray] | deserialize (self, bytearray data) |
str | __str__ (self) |
Public Attributes | |
cpp_type | |
def esiaccel.types.ESIType.__init__ | ( | self, | |
cpp.Type | cpp_type | ||
) |
str esiaccel.types.ESIType.__str__ | ( | self | ) |
Reimplemented in esiaccel.types.SIntType, and esiaccel.types.UIntType.
Definition at line 81 of file types.py.
References esiaccel.types.ESIType.cpp_type, esiaccel.types.StructType.cpp_type, and esiaccel.types.ArrayType.cpp_type.
int esiaccel.types.ESIType.bit_width | ( | self | ) |
Size of this type, in bits. Negative for unbounded types.
Reimplemented in esiaccel.types.ArrayType, esiaccel.types.StructType, esiaccel.types.IntType, esiaccel.types.BitsType, and esiaccel.types.VoidType.
Definition at line 60 of file types.py.
Referenced by esiaccel.types.UIntType.is_valid(), esiaccel.types.SIntType.is_valid(), esiaccel.types.ESIType.max_size(), and esiaccel.types.ESIType.supports_host().
Tuple[object, bytearray] esiaccel.types.ESIType.deserialize | ( | self, | |
bytearray | data | ||
) |
Convert a bytearray to a Python object. Return the object and the leftover bytes.
Reimplemented in esiaccel.types.ArrayType, esiaccel.types.StructType, esiaccel.types.SIntType, esiaccel.types.UIntType, esiaccel.types.BitsType, and esiaccel.types.VoidType.
Tuple[bool, Optional[str]] esiaccel.types.ESIType.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 in esiaccel.types.ArrayType, esiaccel.types.StructType, esiaccel.types.SIntType, esiaccel.types.UIntType, esiaccel.types.BitsType, and esiaccel.types.VoidType.
int esiaccel.types.ESIType.max_size | ( | self | ) |
Maximum size of a value of this type, in bytes.
Definition at line 65 of file types.py.
References esiaccel.types.ESIType.bit_width(), esiaccel.types.VoidType.bit_width(), esiaccel.types.BitsType.bit_width(), esiaccel.types.IntType.bit_width(), esiaccel.types.StructType.bit_width(), and esiaccel.types.ArrayType.bit_width().
Referenced by esiaccel.types.BitsType.deserialize(), esiaccel.types.UIntType.deserialize(), esiaccel.types.SIntType.deserialize(), esiaccel.types.BitsType.is_valid(), esiaccel.types.UIntType.serialize(), and esiaccel.types.SIntType.serialize().
bytearray esiaccel.types.ESIType.serialize | ( | self, | |
obj | |||
) |
Convert a Python object to a bytearray.
Reimplemented in esiaccel.types.StructType, and esiaccel.types.VoidType.
Tuple[bool, Optional[str]] esiaccel.types.ESIType.supports_host | ( | self | ) |
Does this type support host communication via Python? Returns either '(True, None)' if it is, or '(False, reason)' if it is not.
Definition at line 46 of file types.py.
References esiaccel.types.ESIType.bit_width(), esiaccel.types.VoidType.bit_width(), esiaccel.types.BitsType.bit_width(), esiaccel.types.IntType.bit_width(), esiaccel.types.StructType.bit_width(), and esiaccel.types.ArrayType.bit_width().
esiaccel.types.ESIType.cpp_type |
Definition at line 43 of file types.py.
Referenced by esiaccel.types.BitsType.__init__(), esiaccel.types.IntType.__init__(), esiaccel.types.ESIType.__str__(), esiaccel.types.BitsType.bit_width(), and esiaccel.types.IntType.bit_width().