Gustaf Neumann neumann@wu-wien.ac.at wrote on 05/08/2006 02:15:41 PM:
So, the only restriction is that you are not allowed to remove the mixin from o in the BEFORE part of M2. If you remove M2 from the BEFORE part of M1, there won't be a problem, since foo of M2 won't be called. If you remove M2 in AFTER of M2 foo, there would not be a problem either, since "next" was alreday executed.
Your explanation is certainly consistent with the behavior I observed. Is this documented somewhere? It surprised me.
PS: wouln't be conditional mixins a solution for your problem?
I don't know. What do you mean by "conditional mixin"?
Scott