|
CIRCT 23.0.0git
|


Public Member Functions | |
| __init__ (self, str id, str name, "ESIType" inner_type) | |
| int | bit_width (self) |
| 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 | |
| wrap_cpp (cls, cpp.Type cpp_type) | |
| str | id (self) |
| Tuple[bool, Optional[str]] | supports_host (self) |
| int | max_size (self) |
| int | __hash__ (self) |
| bool | __eq__ (self, other) |
Public Attributes | |
| name | |
| inner_type | |
Public Attributes inherited from esiaccel.types.ESIType | |
| cpp_type | |
| id | |
Protected Member Functions | |
| _init_from_cpp (self, cpp.TypeAliasType cpp_type) | |
| esiaccel.types.TypeAlias.__init__ | ( | self, | |
| str | id, | ||
| str | name, | ||
| "ESIType" | inner_type | ||
| ) |
Reimplemented from esiaccel.types.ESIType.
Definition at line 587 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().
| str esiaccel.types.TypeAlias.__str__ | ( | self | ) |
Reimplemented from esiaccel.types.ESIType.
Definition at line 608 of file types.py.
References CirctESIBundleTypeBundleChannel.name, FIRRTLBundleField.name, FIRRTLClassElement.name, HWStructFieldInfo.name, HWUnionFieldInfo.name, HWModulePort.name, circt::DIModule.name, circt::DIInstance.name, circt::DIVariable.name, circt::arc::StateInfo.name, circt::arc::ModelInfo.name, circt::calyx::PortInfo.name, circt::esi::BundledChannel.name, circt::firrtl::TargetToken.name, circt::firrtl::TokenAnnoTarget.name, circt::firrtl::PortInfo.name, circt::firrtl::ClassElement.name, circt::hw::ModulePort.name, circt::hw::detail::FieldInfo.name, circt::hw::detail::OffsetFieldInfo.name, circt::moore::DPIArgInfo.name, circt::moore::StructLikeMember.name, circt::rtg::DictEntry.name, circt::sim::DPIArgument.name, circt::systemc::detail::PortInfo.name, circt::systemc::IntBaseType.name, circt::systemc::IntType.name, circt::systemc::UIntBaseType.name, circt::systemc::UIntType.name, circt::systemc::SignedType.name, circt::systemc::BigIntType.name, circt::systemc::UnsignedType.name, circt::systemc::BigUIntType.name, circt::systemc::BitVectorBaseType.name, circt::systemc::BitVectorType.name, circt::systemc::LogicVectorBaseType.name, circt::systemc::LogicVectorType.name, circt::scheduling::Problem.name, circt::scheduling::CyclicProblem.name, circt::scheduling::ChainingProblem.name, circt::scheduling::SharedOperatorsProblem.name, circt::scheduling::ModuloProblem.name, circt::scheduling::ChainingCyclicProblem.name, hw.ModuleLike.name(), hw.HWModuleOp.name(), hw.HWModuleExternOp.name(), sv.SVVerbatimModuleOp.name(), synth.Object.name(), Python.setup.NoopBuildExtension.name, CompileFSMVisitor::StateScopeGuard.name, LibertyGroup.name, LibertyGroup::AttrEntry.name, circt::ImportVerilog::FlattenedIfacePort.name, esi::backends::cosim::RpcClient::ChannelDesc.name, esi::AppID.name, esi::ModuleInfo.name, esi::ServicePortDesc.name, esi::TypeAliasType.name, esi::WindowType::Field.name, esi::WindowType::Frame.name, esi::WindowType.name, WriteCosimChannelPort.name, ReadCosimChannelPort.name, esiaccel.types.BundleType.Channel.name, esiaccel.types.WindowType.Field.name, esiaccel.types.WindowType.Frame.name, esiaccel.types.WindowType.name, esiaccel.types.TypeAlias.name, setup.NoopBuildExtension.name, circt::firrtl::detail::BaseTypeAliasStorage.name, circt::firrtl::detail::ClassTypeStorage.name, AnnotationInfo.name, yaml::DescribedInstance.name, llvm::yaml::MappingContextTraits< DescribedSignal, Context >::Field.name, llvm::yaml::MappingContextTraits< DescribedInstance, Context >::Instance.name, llvm::yaml::MappingContextTraits< sv::InterfaceOp, Context >::Interface.name, CompanionInfo.name, Property.name, NamedValue.name, ExplicitRegsPass::RoutedValue.name, SymbolicComputationStorage.name, UniqueLabelStorage.name, SymbolicComputationWithIdentityStorage.name, TestState.name, and EmittedType.name.
|
protected |
Initialize instance attributes from a C++ type object.
Reimplemented from esiaccel.types.ESIType.
Definition at line 590 of file types.py.
References esiaccel.types.TypeAlias._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.TypeAlias._init_from_cpp().
| int esiaccel.types.TypeAlias.bit_width | ( | self | ) |
Size of this type, in bits. Negative for unbounded types.
Reimplemented from esiaccel.types.ESIType.
Definition at line 596 of file types.py.
References esiaccel.types.ChannelType.inner_type, and esiaccel.types.TypeAlias.inner_type.
Referenced by esiaccel.types.UnionType.deserialize(), esiaccel.types.UIntType.is_valid(), esiaccel.types.SIntType.is_valid(), esiaccel.types.ESIType.max_size(), esiaccel.types.UnionType.serialize(), and esiaccel.types.ESIType.supports_host().
| 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 605 of file types.py.
References esiaccel.types.TypeAlias.deserialize(), esiaccel.types.ChannelType.inner_type, and esiaccel.types.TypeAlias.inner_type.
Referenced by esiaccel.types.TypeAlias.deserialize().
| 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 599 of file types.py.
References esiaccel.types.ChannelType.inner_type, esiaccel.types.TypeAlias.inner_type, and esiaccel.types.TypeAlias.is_valid().
Referenced by esiaccel.types.TypeAlias.is_valid().
| bytearray esiaccel.types.TypeAlias.serialize | ( | self, | |
| obj | |||
| ) |
Convert a Python object to a bytearray.
Reimplemented from esiaccel.types.ESIType.
Definition at line 602 of file types.py.
References esiaccel.types.ChannelType.inner_type, esiaccel.types.TypeAlias.inner_type, and esiaccel.types.TypeAlias.serialize().
Referenced by esiaccel.types.TypeAlias.serialize().
| esiaccel.types.TypeAlias.inner_type |
Definition at line 593 of file types.py.
Referenced by esiaccel.types.ChannelType.bit_width(), esiaccel.types.TypeAlias.bit_width(), esiaccel.types.ChannelType.deserialize(), esiaccel.types.TypeAlias.deserialize(), esiaccel.types.ChannelType.inner(), esiaccel.types.ChannelType.is_valid(), esiaccel.types.TypeAlias.is_valid(), esiaccel.types.ChannelType.serialize(), esiaccel.types.TypeAlias.serialize(), and esiaccel.types.ChannelType.supports_host().
| esiaccel.types.TypeAlias.name |
Definition at line 592 of file types.py.
Referenced by esiaccel.types.TypeAlias.__str__().