Wires have been challenging to maintain due to evolving requirements.
This PR introduces a better abstraction for Wire that stores a collection of QuantumWire and ClassicalWire dataclasses. Metadata can be added to these dataclasses without modifying the Wires object’s handling of indices and dictionaries. Many methods, like __matmul__, are greatly simplified.
Wires have been challenging to maintain due to evolving requirements.
This PR introduces a better abstraction for Wire that stores a collection of
QuantumWire
andClassicalWire
dataclasses. Metadata can be added to these dataclasses without modifying the Wires object’s handling of indices and dictionaries. Many methods, like__matmul__
, are greatly simplified.