From: SourceForge.net <no...@so...> - 2008-06-30 10:58:18
|
Feature Requests item #2006641, was opened at 2008-06-30 12:58 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=2006641&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 35. TclOO Package Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Arnulf Wiedemann (wiede) Assigned to: Donal K. Fellows (dkf) Summary: modified next command handling Initial Comment: In the current implementation of TclOO a class with 2 superclasses has an unexpected handling of the next command. if in the constructor there are 2 calls to next then always the constructor of the first superclass is called. I think a "natural" way would be to always call any entry in a call chain only once. proposed change: add a hasBeenCalled flag to the CallChain struct and modify TclOOInvokeContext, to set the hasBeenCalled flag after a call to a method in the call chain. When doing the next call to a method in the call chain, check for entries, which have hasBeenCalled set and skip them until the first entry, which has not set hasBeenCalled. At the end (if (isFirst) { ... }) reset hasBeenCalled for all entries in the call chain. That would also help itcl to be able to use the "normal" constructor call chain. At the moment itcl is using constructor methods and has additional code to build the correct (for itcl) constructor call chain. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=2006641&group_id=10894 |