A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2006-March/062844.html below:

[Python-Dev] PySet_Next (Was: PySet API)

[Python-Dev] PySet_Next (Was: PySet API)"Martin v. Löwis" martin at v.loewis.de
Sun Mar 26 21:50:43 CEST 2006
Raymond Hettinger wrote:
> Pardon, I bungled the terminology.  PySet_Next returns a borrowed
> reference. That is problematic is arbitrary Python code can be run
> afterwards (such as PyObject_Hash in the example).

Not really. It is under the control of the caller of PySet_Next
what (if any) Python code is invoked, and getting this correct
is straight-forward (once you know that it yields borrowed references).

I don't know what specific application Barry has in mind, but I'm
sure he can get it right (although it might be an interesting experiment
to test that theory :-) In general, I would expect that people find
it easier to get code involving PyDict_Next right than code dealing
with iterators - primarily because of the error cases you have to
consider.

> We have a perfectly good way to iterate with PyIter_Next().  It may take
> a couple of extra lines, but it is easy to get correct and has no
> surprises.  It seems that the only issue is that Barry says that he
> refuses to use the iterator protocol.  Heck, just turn it into a list
> and index directly.  There is no need to muck-up the set api for this.

I don't care that much either way, although I would prefer to see an
actual, current use case for PySet_Next, rather than theoretical,
made-up examples. I don't expect to use Python sets in C code at all,
personally.

Regards,
Martin
More information about the Python-Dev mailing list

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