]> granicus.if.org Git - python/commitdiff
Remove the next() method -- one is supplied automatically by
authorGuido van Rossum <guido@python.org>
Tue, 16 Jul 2002 20:47:50 +0000 (20:47 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 16 Jul 2002 20:47:50 +0000 (20:47 +0000)
PyType_Ready() because the tp_iternext slot is set.  Also removed the
redundant (and expensive!) call to raise StopIteration from
rangeiter_next().

Objects/rangeobject.c

index c3c60500395074fcea7ab1d7bb6bdde241b59e81..7c0e6098c832875b1f8b85ab9f23e56cae295ef0 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Range object implementation */
 
 #include "Python.h"
@@ -251,16 +250,9 @@ rangeiter_next(rangeiterobject *r)
 {
        if (r->index < r->len) 
                return PyInt_FromLong(r->start + (r->index++) * r->step);
-       PyErr_SetObject(PyExc_StopIteration, Py_None);
        return NULL;
 }
 
-static PyMethodDef rangeiter_methods[] = {
-       {"next",        (PyCFunction)rangeiter_next,     METH_NOARGS,
-        "it.next() -- get the next value, or raise StopIteration"},
-       {NULL,          NULL}           /* sentinel */
-};
-
 static PyTypeObject Pyrangeiter_Type = {
        PyObject_HEAD_INIT(&PyType_Type)
        0,                                      /* ob_size */
@@ -291,6 +283,5 @@ static PyTypeObject Pyrangeiter_Type = {
        0,                                      /* tp_weaklistoffset */
        (getiterfunc)rangeiter_getiter,         /* tp_iter */
        (iternextfunc)rangeiter_next,           /* tp_iternext */
-       rangeiter_methods,                      /* tp_methods */
+       0,                                      /* tp_methods */
 };
-