[squeak-dev] Class cleanUp protocol
Andreas Raab
andreas.raab at gmx.de
Fri Feb 26 23:41:15 UTC 2010
Hi -
Apologies for the many commit messages but I've adopted Keith's proposed
cleanUp protocol for classes. After writing a few more custom cleanups I
was just to fed up with all of the magic lore in this area. Instead, we
now have a common cleanUp protocol:
MyClass class>>cleanUp: aggressive
This (class-side) method is called with an argument that indicates
whether to do aggressive, i.e., potentially destructive cleanup. Doing
aggressive cleanup will delete projects, change sets, uni-classes and
more. Gentle cleanup is expected to only flush transient caches. If your
class only has gentle cleanup you can simply implement
MyClass class>>cleanUp
By default #cleanUp: delegates to this method (similar to
startUp/startUp: and shutDown/shutDown:). You can run cleanup by executing:
Smalltalk cleanUp. "gently"
Smalltalk cleanUp: true. "aggressive"
There is probably still more cleanups but I've taken a first round on
adding those cleanups that I was aware about. Hopefully, we can now put
all the various magic cleanup methods in ReleaseBuilder and Smalltalk to
rest.
Cheers,
- Andreas
More information about the Squeak-dev
mailing list
|