
Am Sun, 12 Sep 2004 21:50:37 +0200 schrieb Thomas Schilling <tjs_ng@yahoo.de>:
- makunbound, fmakunbound, remove-method from within inspector.
hm, removing method has one problem though: it doesn't remove the method at point (instead it always removes the last method.)
fixed it. Looks like an Allegro bug. (No diff cause I don't know how to diff to your applied patch.) In (defmethod inspected-parts ((gf standard-generic-function)) the line collect `(:action "[remove method]" ,(lambda () (remove-method gf method))) must be replaced with collect `(:action "[remove method]" ,(create-method-remover gf method)) and this must be added (defun create-method-remover (gf m) ;; acl62 didn't treat the inlined lambda correctly (lambda () (remove-method gf m))) because the inlined closure was modified in each loop. Dunno, if this is a bug or a feature or simply depends on the loop implementation (in which case it would probably also be a bug). In order to handle unfinalized classes i modified inspected-parts (standard-class) a little bit. See attachment (note: it also is no diff) Furthermore, we need a method for inspected-parts for cl:structure-class (i simply copied the one for standard-class) and for excl::structure-direct-slot-definition (allegro package), though I don't know how to do this portably. Maybe we can just add it to swank-mop and create a dummy class for all implementations that don't support/need this class. -ts