Created PyObject_GenericGetIter().
Factors out the common case of returning self.
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 @@
     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 @@
     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 @@
 }
 
 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 @@
 	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 @@
 }
 
 static PyObject *
-xreadlines_getiter(PyXReadlinesObject *a)
-{
-	Py_INCREF(a);
-	return (PyObject *)a;
-}
-
-static PyObject *
 xreadlines_iternext(PyXReadlinesObject *a)
 {
 	PyObject *res;
@@ -159,7 +152,7 @@
  	0,					/* tp_clear */
 	0,					/* tp_richcompare */
 	0,					/* tp_weaklistoffset */
-	(getiterfunc)xreadlines_getiter,	/* tp_iter */
+	PyObject_GenericGetIter,		/* tp_iter */
 	(iternextfunc)xreadlines_iternext,	/* tp_iternext */
 };