Allow `Logic` signals to be re-connected
- Dominant language
- Dart
- Stars
- 489
- Forks
- 88
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 10
Description
## Motivation
Currently, you can only connect each `Logic` to one source ever, and then it cannot be reassigned to connect to something else. There are cases where it might be nice to reassign connectivity.
## Desired solution
In `Logic._assertConnectable`, there's a check that `_srcConnection` is null. We can remove this check, but it requires some additional safety around that change for the rest of the assumptions of ROHD to be accurage.
## Alternatives considered
Consider keeping it as strictly one-time-connectivity, maybe it encourages cleaner designs?
## Additional details
Since hierarchy is based on signal connectivity, changing the connectivity could potentially require a rebuild (also currently disallowed). This might be a substantial change.
Contributor guide
Assessment
This issue has not been assessed yet.