Message66009
| Author |
belopolsky |
| Recipients |
belopolsky, georg.brandl, gvanrossum, rhettinger |
| Date |
2008年04月30日.17:13:47 |
| SpamBayes Score |
0.08605509 |
| Marked as misclassified |
No |
| Message-id |
<d38f5330804301013j7f85a6c3kdec8292c83516ddd@mail.gmail.com> |
| In-reply-to |
<1209573662.22.0.896193915336.issue2719@psf.upfronthosting.co.za> |
| Content |
On Wed, Apr 30, 2008 at 12:41 PM, Guido van Rossum
<report@bugs.python.org> wrote:
> the iternext slot is designed to return NULL without setting an
> exception.
This is not what the documentation says:
"""
iternextfunc PyTypeObject.tp_iternext
An optional pointer to a function that returns the next item in an
iterator, or raises StopIteration when the iterator is exhausted.
""" <http://docs.python.org/dev/c-api/typeobj.html#tp_iternext>
It looks like documentation needs to be updated, but wouldn't it be
odd to specify that setting StopIteration exception is optional? It's
probably more logical to intercept StopIteration in slot_tp_iternext
rather than at every place where tp_iternext is called. |
|