Issie logo Issie

PortRole Type

What the array does with one of its own ports - which is also how the wrapper must wire it. The reason this is a type rather than two functions: the sheet's SIGNATURE and the wrapper that realises it are the same seven rules read two ways, and stating them twice is how a sheet's declared ports and its wrapper's actual ports come to disagree. They are stated once, here, and arrayOutlineOf takes the names and widths off them while ArrayElaborate builds the components.

Union cases

Union case Description

Concatenated

Full Usage: Concatenated

a BusOut: every copy's value concatenated, copy 0 least significant

FromCopy int

Full Usage: FromCopy int

Parameters:
    Item : int

an ordinary Output, or an unmatched JoinOut: out of the one copy named

Item : int

Multiplexed

Full Usage: Multiplexed

a MuxOut's output: the value of whichever copy its select names, and 0 where it names none

SelectOf Component

Full Usage: SelectOf Component

Parameters:

a MuxOut's select input, which drives no copy - the multiplexer reads it

Item : Component

ToCopies int list

Full Usage: ToCopies int list

Parameters:
    Item : int list

an unmatched JoinIn: into every copy whose end is loose on this channel. Usually one, and a list because it need not be - a channel number that does not vary over some copies leaves them all reading one channel, which is one port of the array feeding each of them

Item : int list

ToEveryCopy

Full Usage: ToEveryCopy

an ordinary Input: one port, driven to every copy

Instance members

Instance member Description

this.IsConcatenated

Full Usage: this.IsConcatenated

Returns: bool
Returns: bool

this.IsFromCopy

Full Usage: this.IsFromCopy

Returns: bool
Returns: bool

this.IsMultiplexed

Full Usage: this.IsMultiplexed

Returns: bool
Returns: bool

this.IsSelectOf

Full Usage: this.IsSelectOf

Returns: bool
Returns: bool

this.IsToCopies

Full Usage: this.IsToCopies

Returns: bool
Returns: bool

this.IsToEveryCopy

Full Usage: this.IsToEveryCopy

Returns: bool
Returns: bool

Type something to start searching.