[Python-Dev] PySet API
James Y Knight
foom at fuhm.net
Wed Mar 29 21:42:01 CEST 2006
On Mar 29, 2006, at 1:38 PM, Martin v. Löwis wrote:
> Given that Barry insists so firmly that there is a need, and that
> this need arises from a significant code simplification that can
> be achieved through the API, the natural conclusion is to add
> the API. That, of course, assumes that you believe Barry's testimony.
It doesn't seem to me that there really is a significant code
simplification, looking at the diff between Raymond's code examples.
@@ -7,2 +7 @@
- PyObject *key;
- Py_ssize_t pos = 0;
+ PyObject *it, *key;
@@ -13 +12,5 @@
- while (set_next(so, &pos, &key)) {
+ it = PyObject_GetIter(self);
+ if (it == NULL)
+ return -1;
+
+ while ((key = PyIter_Next(it)) != NULL) {
@@ -14,0 +18 @@
+ Py_DECREF(key);
@@ -16 +20,2 @@
- return -1;
+ Py_DECREF(it);
+ return -1;
@@ -19,0 +25,3 @@
+ Py_DECREF(it);
+ if (PyErr_Occurred())
+ return -1;
James
More information about the Python-Dev
mailing list