[Python-Dev] Please comment on PEP 357 -- adding nb_index slot to PyNumberMethods
Nick Coghlan
ncoghlan at gmail.com
Fri Feb 17 11:37:57 CET 2006
More information about the Python-Dev mailing list
Fri Feb 17 11:37:57 CET 2006
- Previous message: [Python-Dev] Please comment on PEP 357 -- adding nb_index slot to PyNumberMethods
- Next message: [Python-Dev] Please comment on PEP 357 -- adding nb_index slot to PyNumberMethods
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Georg Brandl wrote: > Bernhard Herzog wrote: >> "Travis E. Oliphant" <oliphant.travis at ieee.org> writes: >> >>> 2) The __index__ special method will have the signature >>> >>> def __index__(self): >>> return obj >>> >>> Where obj must be either an int or a long or another object >>> that has the __index__ special method (but not self). >> So int objects will not have an __index__ method (assuming that ints >> won't return a different but equal int object). However: >> >>> 4) A new operator.index(obj) function will be added that calls >>> equivalent of obj.__index__() and raises an error if obj does not >>> implement the special method. >> So operator.index(1) will raise an exception. I would expect >> operator.index to be implemented using PyNumber_index. > > I'd expect that __index__ won't be called on an int in the first place. The PEP has been updated to cover adding the __index__ slot to int/long so that "one check finds all". The slot will just get bypassed for ints and longs by a lot of the C code in the interpreter. Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia --------------------------------------------------------------- http://www.boredomandlaziness.org
- Previous message: [Python-Dev] Please comment on PEP 357 -- adding nb_index slot to PyNumberMethods
- Next message: [Python-Dev] Please comment on PEP 357 -- adding nb_index slot to PyNumberMethods
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list