CIRCT 24.0.0git
Loading...
Searching...
No Matches
esiaccel.types.TypeAlias Class Reference
Inheritance diagram for esiaccel.types.TypeAlias:
Collaboration diagram for esiaccel.types.TypeAlias:

Public Member Functions

 __init__ (self, str id, str name, "ESIType" inner_type)
Tuple[bool, Optional[str]] is_valid (self, obj)
bytearray serialize (self, obj)
Tuple[object, bytearray] deserialize (self, bytearray data)
str __str__ (self)
Public Member Functions inherited from esiaccel.types.ESIType
 __init__ (self, str id)
 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

 name = cpp_type.name
 inner_type = _get_esi_type(cpp_type.inner)
Public Attributes inherited from esiaccel.types.ESIType
 cpp_type = cpp_type
str id

Protected Member Functions

 _init_from_cpp (self, cpp.TypeAliasType cpp_type)

Detailed Description

Definition at line 548 of file types.py.

Constructor & Destructor Documentation

◆ __init__()

esiaccel.types.TypeAlias.__init__ ( self,
str id,
str name,
"ESIType" inner_type )

Definition at line 550 of file types.py.

References esiaccel.types.ESIType._init_from_cpp().

Member Function Documentation

◆ __str__()

str esiaccel.types.TypeAlias.__str__ ( self)

Definition at line 567 of file types.py.

References circt::arc::ModelInfo.name, circt::arc::StateInfo.name, circt::bmc::BMCTrace::Signal.name, circt::calyx::PortInfo.name, circt::DIInstance.name, circt::DIModule.name, circt::DIVariable.name, circt::esi::BundledChannel.name, circt::FieldInfo.name, circt::firrtl::ClassElement.name, circt::firrtl::PortInfo.name, circt::firrtl::TargetToken.name, circt::firrtl::TokenAnnoTarget.name, circt::hw::detail::OffsetFieldInfo.name, circt::hw::ModulePort.name, circt::ImportVerilog::FlattenedIfacePort.name, circt::moore::DPIArgInfo.name, circt::moore::StructLikeMember.name, circt::rtg::DictEntry.name, circt::scheduling::ChainingCyclicProblem.name, circt::scheduling::ChainingProblem.name, circt::scheduling::CyclicProblem.name, circt::scheduling::ModuloProblem.name, circt::scheduling::Problem.name, circt::scheduling::SharedOperatorsProblem.name, circt::sim::DPIArgument.name, circt::systemc::BigIntType.name, circt::systemc::BigUIntType.name, circt::systemc::BitVectorBaseType.name, circt::systemc::BitVectorType.name, circt::systemc::detail::PortInfo.name, circt::systemc::IntBaseType.name, circt::systemc::IntType.name, circt::systemc::LogicVectorBaseType.name, circt::systemc::LogicVectorType.name, circt::systemc::SignedType.name, circt::systemc::UIntBaseType.name, circt::systemc::UIntType.name, circt::systemc::UnsignedType.name, CirctESIBundleTypeBundleChannel.name, CompileFSMVisitor::StateScopeGuard.name, esi::AppID.name, esi::backends::cosim::RpcClient.Impl::ChannelMeta.name, esi::backends::cosim::RpcClient::ChannelDesc.name, esi::cosim::RpcServer::Impl::ChannelInfo.name, esi::ModuleInfo.name, esi::ServicePortDesc.name, esi::TypeAliasType.name, esi::WindowType::Field.name, esi::WindowType::Frame.name, esi::WindowType.name, name, esiaccel.types.WindowType.name, FIRRTLBundleField.name, FIRRTLClassElement.name, HWModulePort.name, HWStructFieldInfo.name, HWUnionFieldInfo.name, LibertyGroup::AttrEntry.name, LibertyGroup.name, Python.setup.NoopBuildExtension.name, ReadCosimChannelPort.name, WidthField.name, and WriteCosimChannelPort.name.

◆ _init_from_cpp()

esiaccel.types.TypeAlias._init_from_cpp ( self,
cpp.TypeAliasType cpp_type )
protected
Initialize instance attributes from a C++ type object.

Reimplemented from esiaccel.types.ESIType.

Definition at line 553 of file types.py.

References _init_from_cpp().

Referenced by _init_from_cpp().

◆ deserialize()

Tuple[object, bytearray] esiaccel.types.TypeAlias.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 564 of file types.py.

References deserialize(), esiaccel.types.ChannelType.inner_type, and inner_type.

Referenced by deserialize().

◆ is_valid()

Tuple[bool, Optional[str]] esiaccel.types.TypeAlias.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 558 of file types.py.

References esiaccel.types.ChannelType.inner_type, inner_type, and is_valid().

Referenced by is_valid().

◆ serialize()

bytearray esiaccel.types.TypeAlias.serialize ( self,
obj )
Convert a Python object to a bytearray.

Reimplemented from esiaccel.types.ESIType.

Definition at line 561 of file types.py.

References esiaccel.types.ChannelType.inner_type, inner_type, and serialize().

Referenced by serialize().

Member Data Documentation

◆ inner_type

esiaccel.types.TypeAlias.inner_type = _get_esi_type(cpp_type.inner)

Definition at line 556 of file types.py.

Referenced by deserialize(), is_valid(), and serialize().

◆ name

esiaccel.types.TypeAlias.name = cpp_type.name

Definition at line 555 of file types.py.

Referenced by __str__().


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