Motivation: Sometimes port connections are required for a topology to make sense, e.g., a handler invokes an output port which, if unconnected, causes FSW assertion failure. Other times port connections are not required, e.g., a handler checks whether an output port is connected before invoking it.
Proposal: A port specifier in components can optionally be required, e.g.,
active component C {
...
required output port p: P
...
}
In this case it is a topology error to instantiate component C to an instance I and leave port I.p unconnected.
Motivation: Sometimes port connections are required for a topology to make sense, e.g., a handler invokes an output port which, if unconnected, causes FSW assertion failure. Other times port connections are not required, e.g., a handler checks whether an output port is connected before invoking it.
Proposal: A port specifier in components can optionally be required, e.g.,
In this case it is a topology error to instantiate component
C
to an instanceI
and leave portI.p
unconnected.