ra4king / CircuitSim

Basic Circuit Simulator
https://ra4king.github.io/CircuitSim
BSD 3-Clause "New" or "Revised" License
76 stars 27 forks source link

Revamp Properties design #85

Open ra4king opened 1 year ago

ra4king commented 1 year ago

The current Properties design is a mutable and design nightmare. I must have been drunk when I first coded it. Redo it from scratch, but this may break external code.

ausbin commented 1 year ago

To my knowledge, the main external code is the 2110/2220 autograding library, if that's what you mean.

But the code in that library involving Properties is pretty minimal: reading component labels/bitsizes and getting the SUBCIRCUIT property of SubcircuitPeers. (The exception is some semi-complicated code that involves Properties, but that's moreso complicated because both Input Pins and Output Pins are PinPeers, not because of Properties themselves.)

So if you rewrite Properties, just let me know, and I can fix the autograder library fairly easily, basically