Bugs item #1668540, was opened at 2007-02-25 23:06 Message generated for change (Comment added) made by netimen You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1668540&group_id=5470
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: Type/class unification Group: Python 2.5 Status: Closed Resolution: Invalid Priority: 5 Private: No Submitted By: netimen (netimen) Assigned to: Nobody/Anonymous (nobody) Summary: I can't change attribute __op__ in new-style classes Initial Comment: I tried to use multimethod module from peers package available at http://viral.media.mit.edu/peers/peers-0.20050929.tar.gz to create several __mul__ operators in a new-style class and experienced this problem. In new-style class I can't change the attribute __op__. Even if I change it with setattr, genuine __op__ will be called. For instance, if I set __mul__ operator to method object new_mul and write setattr(obj, '__mul__', new_mul) obj *= 1 # __mul__ will be called. # But obj.__mul__(1) # new_mul will be called. With common methods and with old-style classes all works properly. P.S. Sorry for my English ---------------------------------------------------------------------- >Comment By: netimen (netimen) Date: 2007-02-26 01:02 Message: Logged In: YES user_id=1728694 Originator: YES But.. then how to overload operators& ---------------------------------------------------------------------- Comment By: Georg Brandl (gbrandl) Date: 2007-02-25 23:10 Message: Logged In: YES user_id=849994 Originator: NO These special methods are looked up upon the type for new-style classes. This won't change. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1668540&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com