summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2003-03-17 08:35:49 (GMT)
committerRaymond Hettinger <python@rcn.com>2003-03-17 08:35:49 (GMT)
commite0cce8f8f00bf2c070cb1f564d950d62530df377 (patch)
tree32e33182bb5b59df8f581878cf1b61aa4756aea2
parent01538269643175877f516d09f429a2ae28136da6 (diff)
downloadcpython-e0cce8f8f00bf2c070cb1f564d950d62530df377.zip
cpython-e0cce8f8f00bf2c070cb1f564d950d62530df377.tar.gz
cpython-e0cce8f8f00bf2c070cb1f564d950d62530df377.tar.bz2
Created PyObject_GenericGetIter().
Factors out the common case of returning self.
-rw-r--r--Modules/_hotshot.c9
-rw-r--r--Modules/arraymodule.c9
-rw-r--r--Modules/xreadlinesmodule.c9
3 files changed, 3 insertions, 24 deletions
diff --git a/Modules/_hotshot.c b/Modules/_hotshot.c
index 83222ce..8b286b4 100644
--- a/Modules/_hotshot.c
+++ b/Modules/_hotshot.c
@@ -141,13 +141,6 @@ logreader_fileno(LogReaderObject *self)
return PyInt_FromLong(fileno(self->logfp));
}
-static PyObject *
-logreader_tp_iter(LogReaderObject *self)
-{
- Py_INCREF(self);
- return (PyObject *) self;
-}
-
/* Log File Format
* ---------------
@@ -1352,7 +1345,7 @@ static PyTypeObject LogReaderType = {
0, /* tp_clear */
0, /* tp_richcompare */
0, /* tp_weaklistoffset */
- (getiterfunc)logreader_tp_iter, /* tp_iter */
+ PyObject_GenericGetIter, /* tp_iter */
(iternextfunc)logreader_tp_iternext,/* tp_iternext */
logreader_methods, /* tp_methods */
logreader_members, /* tp_members */
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c
index 4c1a0fb..ec44935 100644
--- a/Modules/arraymodule.c
+++ b/Modules/arraymodule.c
@@ -1962,13 +1962,6 @@ array_iter(arrayobject *ao)
}
static PyObject *
-arrayiter_getiter(PyObject *it)
-{
- Py_INCREF(it);
- return it;
-}
-
-static PyObject *
arrayiter_next(arrayiterobject *it)
{
assert(PyArrayIter_Check(it));
@@ -2021,7 +2014,7 @@ static PyTypeObject PyArrayIter_Type = {
0, /* tp_clear */
0, /* tp_richcompare */
0, /* tp_weaklistoffset */
- (getiterfunc)arrayiter_getiter, /* tp_iter */
+ PyObject_GenericGetIter, /* tp_iter */
(iternextfunc)arrayiter_next, /* tp_iternext */
0, /* tp_methods */
};
diff --git a/Modules/xreadlinesmodule.c b/Modules/xreadlinesmodule.c
index bf3c091..b0715f6 100644
--- a/Modules/xreadlinesmodule.c
+++ b/Modules/xreadlinesmodule.c
@@ -82,13 +82,6 @@ xreadlines_item(PyXReadlinesObject *a, int i)
}
static PyObject *
-xreadlines_getiter(PyXReadlinesObject *a)
-{
- Py_INCREF(a);
- return (PyObject *)a;
-}
-
-static PyObject *
xreadlines_iternext(PyXReadlinesObject *a)
{
PyObject *res;
@@ -159,7 +152,7 @@ static PyTypeObject XReadlinesObject_Type = {
0, /* tp_clear */
0, /* tp_richcompare */
0, /* tp_weaklistoffset */
- (getiterfunc)xreadlines_getiter, /* tp_iter */
+ PyObject_GenericGetIter, /* tp_iter */
(iternextfunc)xreadlines_iternext, /* tp_iternext */
};