cocotb / cocotb

cocotb, a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python
https://www.cocotb.org
BSD 3-Clause "New" or "Revised" License
1.68k stars 488 forks source link

Remove `ParameterizedSingleMetaclass` #3930

Open ktbarrett opened 2 weeks ago

ktbarrett commented 2 weeks ago

ReadOnly, ReadWrite, and NextTimeStep can be regular singletons by just caching the output of __new__ definition.

Join, RisingEdge, FallingEdge, and ValueChange should all be cached on the objects they take as arguments: in Task.join or handles via methods that will be introduced in #3855.