[Libre-soc-bugs] [Bug 438] add caching/memoization to soc.simulator.program.Program
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Fri Jul 24 13:07:59 BST 2020
https://bugs.libre-soc.org/show_bug.cgi?id=438
--- Comment #5 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Jacob Lifshay from comment #0)
> Importantly: it needs to *NOT* keep a file open for every Program instance.
this is sorted by using the "with" pattern. the "with" pattern calls
__enter__ and __exit__. in Program.__exit__ self.close() is called.
because this had been used:
x = Program()
x.add_test()
the close function was not being called. it should have been:
x = Program()
x.add_test()
x.close()
however the whole purpose of "with" is to avoid that extra line and
avoid polluting code with entry/exit gunk.
hence the change to:
with Program() as x:
x.add_test()
and the problem is now gone.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list