On Tue, Sep 1, 2009 at 14:54, Benjamin Peterson<benjamin at python.org> wrote: > 2009/9/1 Brett Cannon <brett at python.org>: >> On Tue, Sep 1, 2009 at 07:21, Benjamin Peterson<benjamin at python.org> wrote: >>> 2009/8/31 xiaobing jiang <s7v7nislands at gmail.com>: >>>> My idea is: here, the two functions (or maybe classes) should have the >>>> same behavior). >>>> so is this a bug or something I missing ? >>> >>> I think they should both not check their arguments in __init__ to >>> allow for duck typing. >> >> But what is the point of wrapping something with classmethod or >> staticmethod that can't be called? It isn't like it is checking >> explicitly for a function or method, just that it can be called which >> seems reasonable to me (unless PyCallable_Check() is as off as >> callable() was). > > Well, if checking if tp_call is not NULL is as bad as callable, then yes. > > I don't see any reason to use staticmethod or classmethod with a > non-callable, but to be consistent, I would, given the choice between > removing code and adding another type check, perfer to remove a type > check. Fine by me. I guess it will just fail later with a slightly more cryptic exception. -Brett
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