pub struct TestbenchIoKind{
pub vss: <InOut<Signal> as HasBundleKind>::BundleKind,
}
Expand description
The interface to which simulation testbenches should conform.
Fields§
§vss: <InOut<Signal> as HasBundleKind>::BundleKind
The global ground net.
Trait Implementations§
Source§impl Clone for TestbenchIoKind
impl Clone for TestbenchIoKind
Source§impl Debug for TestbenchIoKind
impl Debug for TestbenchIoKind
Source§impl FlatLen for TestbenchIoKind
impl FlatLen for TestbenchIoKind
Source§impl HasBundleKind for TestbenchIoKind
impl HasBundleKind for TestbenchIoKind
Source§type BundleKind = TestbenchIoKind
type BundleKind = TestbenchIoKind
The Rust type of the
BundleKind
associated with this bundle.Source§fn kind(&self) -> <Self as HasBundleKind>::BundleKind
fn kind(&self) -> <Self as HasBundleKind>::BundleKind
Returns the
BundleKind
of this bundle.Source§impl HasNameTree for TestbenchIoKind
impl HasNameTree for TestbenchIoKind
Source§impl HasNodeBundle for TestbenchIoKindwhere
InOut<Signal>: HasBundleKind + HasSchematicBundleKindViews,
<InOut<Signal> as HasBundleKind>::BundleKind: HasNodeBundle,
impl HasNodeBundle for TestbenchIoKindwhere
InOut<Signal>: HasBundleKind + HasSchematicBundleKindViews,
<InOut<Signal> as HasBundleKind>::BundleKind: HasNodeBundle,
Source§type NodeBundle = TestbenchIoView<NodeBundle>
type NodeBundle = TestbenchIoView<NodeBundle>
The associated node bundle.
Source§impl HasTerminalBundle for TestbenchIoKindwhere
InOut<Signal>: HasBundleKind + HasSchematicBundleKindViews,
<InOut<Signal> as HasBundleKind>::BundleKind: HasTerminalBundle,
impl HasTerminalBundle for TestbenchIoKindwhere
InOut<Signal>: HasBundleKind + HasSchematicBundleKindViews,
<InOut<Signal> as HasBundleKind>::BundleKind: HasTerminalBundle,
Source§type TerminalBundle = TestbenchIoView<TerminalBundle>
type TerminalBundle = TestbenchIoView<TerminalBundle>
The associated terminal bundle.
Source§impl PartialEq for TestbenchIoKind
impl PartialEq for TestbenchIoKind
Source§impl SchematicBundleKind for TestbenchIoKind
impl SchematicBundleKind for TestbenchIoKind
Source§fn terminal_view(
cell: CellId,
cell_io: &NodeBundle<Self>,
instance: InstanceId,
instance_io: &NodeBundle<Self>,
) -> TerminalBundle<Self>
fn terminal_view( cell: CellId, cell_io: &NodeBundle<Self>, instance: InstanceId, instance_io: &NodeBundle<Self>, ) -> TerminalBundle<Self>
Creates a terminal view of the object given a parent node, the cell IO, and the instance IO.
Source§impl<SubstrateV, SubstrateS> Unflatten<TestbenchIoKind, SubstrateS> for TestbenchIoView<SubstrateV>where
InOut<Signal>: HasView<SubstrateV> + HasBundleKind,
<InOut<Signal> as HasView<SubstrateV>>::View: Unflatten<<InOut<Signal> as HasBundleKind>::BundleKind, SubstrateS>,
impl<SubstrateV, SubstrateS> Unflatten<TestbenchIoKind, SubstrateS> for TestbenchIoView<SubstrateV>where
InOut<Signal>: HasView<SubstrateV> + HasBundleKind,
<InOut<Signal> as HasView<SubstrateV>>::View: Unflatten<<InOut<Signal> as HasBundleKind>::BundleKind, SubstrateS>,
Source§fn unflatten<SubstrateI>(
__substrate_data: &TestbenchIoKind,
__substrate_source: &mut SubstrateI,
) -> Option<Self>where
SubstrateI: Iterator<Item = SubstrateS>,
fn unflatten<SubstrateI>(
__substrate_data: &TestbenchIoKind,
__substrate_source: &mut SubstrateI,
) -> Option<Self>where
SubstrateI: Iterator<Item = SubstrateS>,
Unflatten a structure from an iterator. Read more
impl Eq for TestbenchIoKind
Auto Trait Implementations§
impl Freeze for TestbenchIoKind
impl RefUnwindSafe for TestbenchIoKind
impl Send for TestbenchIoKind
impl Sync for TestbenchIoKind
impl Unpin for TestbenchIoKind
impl UnwindSafe for TestbenchIoKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DataView<Array<Signal>> for Twhere
T: SchematicBundleKind,
impl<T> DataView<Array<Signal>> for Twhere
T: SchematicBundleKind,
Source§fn view_nodes_as(
nodes: &<<T as HasBundleKind>::BundleKind as HasNodeBundle>::NodeBundle,
) -> <<Array<Signal> as HasBundleKind>::BundleKind as HasNodeBundle>::NodeBundle
fn view_nodes_as( nodes: &<<T as HasBundleKind>::BundleKind as HasNodeBundle>::NodeBundle, ) -> <<Array<Signal> as HasBundleKind>::BundleKind as HasNodeBundle>::NodeBundle
Views a node bundle as a node bundle of a different kind.
Source§fn view_terminals_as(terminals: &TerminalBundle<Self>) -> TerminalBundle<T>
fn view_terminals_as(terminals: &TerminalBundle<Self>) -> TerminalBundle<T>
Views a terminal bundle as a terminal bundle of a different kind.
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request