Guido van Rossum wrote: > Apart from the tests that were testing the behavior of im_class, I > found only a single piece of code in the standard library that used > im_class of an unbound method object (the clever test in the pyclbr > test). Uses of im_self and im_func were more widespread. Given the > level of cleverness in the pyclbr test (and the fact that I wrote it > myself) I'm not worried about widespread use of im_class on unbound > methods. I guess this depends on how you define widespread use. I'm using this feature a lot via the basemethod() function in mxTools for calling the base method of an overridden method in mixin classes (basemethod() predates super() and unlike the latter works for old-style classes). What I don't understand in your reasoning is that you are talking about making an unbound method look more like a function. Unbound methods and bound methods are objects of the same type - the method object. By turning an unbound method into a function type, you break code that tests for MethodType in Python or does a PyMethod_Check() at C level. If you want to make methods look more like functions, the method object should become a subclass of the function object (function + added im_* attributes). -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 10 2005) >>> Python/Zope Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ::::
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4