All rpm-python iterators are self-iterators, just use PyObject_SelfIter
authorPanu Matilainen <pmatilai@redhat.com>
Tue, 22 Sep 2009 17:20:07 +0000 (20:20 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Tue, 22 Sep 2009 17:20:07 +0000 (20:20 +0300)
python/rpmds-py.c
python/rpmfi-py.c
python/rpmmi-py.c
python/rpmps-py.c
python/rpmts-py.c

index 05250a1..d13fe28 100644 (file)
@@ -200,13 +200,6 @@ rpmds_richcompare(rpmdsObject * a, rpmdsObject * b, int op)
 }
 
 static PyObject *
-rpmds_iter(rpmdsObject * s)
-{
-    Py_INCREF(s);
-    return (PyObject *)s;
-}
-
-static PyObject *
 rpmds_iternext(rpmdsObject * s)
 {
     PyObject * result = NULL;
@@ -548,7 +541,7 @@ PyTypeObject rpmds_Type = {
        0,                              /* tp_clear */
        (richcmpfunc) rpmds_richcompare,/* tp_richcompare */
        0,                              /* tp_weaklistoffset */
-       (getiterfunc) rpmds_iter,       /* tp_iter */
+       PyObject_SelfIter,              /* tp_iter */
        (iternextfunc) rpmds_iternext,  /* tp_iternext */
        rpmds_methods,                  /* tp_methods */
        0,                              /* tp_members */
index a7bc604..b48c980 100644 (file)
@@ -163,13 +163,6 @@ rpmfi_FClass(rpmfiObject * s)
 }
 
 static PyObject *
-rpmfi_iter(rpmfiObject * s)
-{
-    Py_INCREF(s);
-    return (PyObject *)s;
-}
-
-static PyObject *
 rpmfi_iternext(rpmfiObject * s)
 {
     PyObject * result = NULL;
@@ -440,7 +433,7 @@ PyTypeObject rpmfi_Type = {
        0,                              /* tp_clear */
        0,                              /* tp_richcompare */
        0,                              /* tp_weaklistoffset */
-       (getiterfunc) rpmfi_iter,       /* tp_iter */
+       PyObject_SelfIter,              /* tp_iter */
        (iternextfunc) rpmfi_iternext,  /* tp_iternext */
        rpmfi_methods,                  /* tp_methods */
        0,                              /* tp_members */
index 08b02e8..ea9941f 100644 (file)
@@ -76,15 +76,6 @@ struct rpmmiObject_s {
 /**
  */
 static PyObject *
-rpmmi_iter(rpmmiObject * s)
-{
-    Py_INCREF(s);
-    return (PyObject *)s;
-}
-
-/**
- */
-static PyObject *
 rpmmi_iternext(rpmmiObject * s)
 {
     Header h;
@@ -221,7 +212,7 @@ PyTypeObject rpmmi_Type = {
        0,                              /* tp_clear */
        0,                              /* tp_richcompare */
        0,                              /* tp_weaklistoffset */
-       (getiterfunc) rpmmi_iter,       /* tp_iter */
+       PyObject_SelfIter,              /* tp_iter */
        (iternextfunc) rpmmi_iternext,  /* tp_iternext */
        rpmmi_methods,                  /* tp_methods */
        0,                              /* tp_members */
index bcddde9..cab6943 100644 (file)
@@ -49,16 +49,6 @@ rpmps_append(rpmpsObject * s, PyObject * value)
 }
 
 static PyObject *
-rpmps_iter(rpmpsObject * s)
-{
-if (_rpmps_debug < 0)
-fprintf(stderr, "*** rpmps_iter(%p)\n", s);
-    s->psi = rpmpsInitIterator(s->ps);
-    Py_INCREF(s);
-    return (PyObject *)s;
-}
-
-static PyObject *
 rpmps_iternext(rpmpsObject * s)
 {
     PyObject * result = NULL;
@@ -219,7 +209,7 @@ PyTypeObject rpmps_Type = {
        0,                              /* tp_clear */
        (richcmpfunc)0,                 /* tp_richcompare */
        0,                              /* tp_weaklistoffset */
-       (getiterfunc) rpmps_iter,       /* tp_iter */
+       PyObject_SelfIter,              /* tp_iter */
        (iternextfunc) rpmps_iternext,  /* tp_iternext */
        rpmps_methods,                  /* tp_methods */
        0,                              /* tp_members */
index 7fd3172..e250292 100644 (file)
@@ -969,16 +969,6 @@ fprintf(stderr, "*** rpmts_Run(%p) ts %p ignore %x\n", s, s->ts, s->ignoreSet);
     return list;
 }
 
-static PyObject *
-rpmts_iter(rpmtsObject * s)
-{
-if (_rpmts_debug)
-fprintf(stderr, "*** rpmts_iter(%p) ts %p\n", s, s->ts);
-
-    Py_INCREF(s);
-    return (PyObject *)s;
-}
-
 /**
  * @todo Add TR_ADDED filter to iterator.
  */
@@ -1335,7 +1325,7 @@ PyTypeObject rpmts_Type = {
        0,                              /* tp_clear */
        0,                              /* tp_richcompare */
        0,                              /* tp_weaklistoffset */
-       (getiterfunc) rpmts_iter,       /* tp_iter */
+       PyObject_SelfIter,              /* tp_iter */
        (iternextfunc) rpmts_iternext,  /* tp_iternext */
        rpmts_methods,                  /* tp_methods */
        0,                              /* tp_members */