Re[1]: [CEDET-devel] [eieio] :before and :after methods not called
"Eric M. Ludlam" <[email protected]> Wed, 16 Mar 2005 21:07:29 -0500
| Newsgroups | gmane.emacs.eieio,gmane.emacs.cedet |
|---|---|
| Message-ID | <[email protected]> |
Howdy all, I have indeed finally found the reference to how these methods should be called in my favorite CLOS hyperspec. I was oblivious to the specific paragraph before. http://www.lispworks.com/documentation/HyperSpec/Body/07_ffb.htm It's sort-of in the middle-ish of that page with three sub-bullets. Anyway, there are some pretty subtle changes in EIEIO required to manage this, plus changes to code depending on various dependant behaviors for this, and some of the other email invovled. As a side effect, if I can get things working correctly, I will probably post yet ANOTHER beta of cedet to allow some recovery on dependent packages as the effects of the new error messages have been somewhat devastating in my own code. As I get some of this stuff checked in, I'll post about the changes and how to solve problems that may be caused, though that may not be today. :( Thanks for the detailed look-up of the actual rules. Eric >>> drkm <[email protected]> seems to think that: > Hi > > It seems that the generic dispatcher doesn't call all :before >and :after methods as it would have to. For example, this: > > (defclass A () ()) > (defclass AA (A) ()) > (defclass AAA (AA) ()) > > (defmethod F ((p A)) > (message "F A")) > (defmethod F ((p AA)) > (message "F AA")) > > (defmethod F :BEFORE ((p A)) > (message "F A before")) > (defmethod F :BEFORE ((p AA)) > (message "F AA before")) > (defmethod F :BEFORE ((p AAA)) > (message "F AAA before")) > > (defmethod F :AFTER ((p A)) > (message "F A after")) > (defmethod F :AFTER ((p AA)) > (message "F AA after")) > (defmethod F :AFTER ((p AAA)) > (message "F AAA after")) > > (F (AAA nil)) > >prints: > > F AAA before > F AA > F AAA after > >instead of: > > F AAA before > F AA before > F A before > F AA > F A after > F AA after > F AAA after > >--drkm > > > >------------------------------------------------------- >SF email is sponsored by - The IT Product Guide >Read honest & candid reviews on hundreds of IT Products from real users. >Discover which products truly live up to the hype. Start reading now. >http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click >_______________________________________________ >Cedet-devel mailing list >[email protected] >https://lists.sourceforge.net/lists/listinfo/cedet-devel > -- Eric Ludlam: [email protected], [email protected] Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click