InterfacePortReference mixin

A mixin that provides interface-specific behavior for port references.

This mixin extends PortReference with functionality specific to ports that belong to interfaces. It handles direction resolution based on the interface role and port direction tags, and provides access to the appropriate internal or external port based on the connection context.

Superclass constraints
Mixin applications

Properties

direction PortDirection
The effective direction of this port based on interface role and port tags.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
interfaceReference InterfaceReference<PairInterface>
The interface that contains this port.
no setter
isDirectionless bool
Whether this port has no directional tags.
no setter
module BridgeModule
The BridgeModule that this reference belongs to.
finalinherited
port Logic
Provides a reference to a Logic on an interface in this reference.
no setteroverride
portName String
The name of the port that this reference points to.
finalinherited
portSubset → dynamic
The port subset that this reference represents.
no setterinherited
portSubsetLogic Logic
A Logic representation of the port subset.
latefinalinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
width int
The bit width of this port reference.
latefinalinherited

Methods

drivesLogic(Logic other) → void
Drives a Logic signal with this port's value.
inherited
gets(PortReference other) → void
Connects this port to be driven by other.
inherited
getsLogic(Logic other) → void
Connects this port to be driven by a Logic signal.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
punchDownTo(BridgeModule subModule, {String? newPortName}) PortReference
Creates a matching port in a submodule and connects them.
inherited
punchUpTo(BridgeModule parentModule, {String? newPortName}) PortReference
Creates a matching port in the parent module and connects them.
inherited
replicateTo(BridgeModule newModule, PortDirection direction, {String? newPortName}) PortReference
Creates a new port in the specified module with the given direction.
inherited
slice(int endIndex, int startIndex) InterfacePortReference
Creates a slice of this port from endIndex down to startIndex.
override
tieOff([dynamic value = 0]) → void
Ties this port to a constant value.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited
operator [](int index) PortReference
Gets a single bit of this port at the specified index.
inherited