[squeak-dev] Class cleanUp protocol

Ken G. Brown kbrown at mac.com
Fri Feb 26 23:53:04 UTC 2010


There are a bunch mentioned here:

<http://lists.squeakfoundation.org/pipermail/squeak-dev/2009-July/137456.html>

Ken G. Brown

At 12:41 AM +0100 2/27/10, Andreas Raab apparently wrote:
>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