FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Eliminate the double reverse option. It's only use case · python/cpython@d2c3626 · GitHub

Repository navigation

Commit d2c3626

Browse files
committed
Eliminate the double reverse option. It's only use case
was academic and it was potentially confusing to use.
1 parent a6366fe commit d2c3626

2 files changed

Lines changed: 2 additions & 17 deletions

File tree

‎Lib/test/test_enumerate.py‎

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,11 +141,8 @@ def test_xrange_optimization(self):
141141
x = xrange(1)
142142
self.assertEqual(type(reversed(x)), type(iter(x)))
143143

144-
def test_double_reverse(self):
145-
s = 'hello'
146-
self.assertEqual(list(reversed(reversed(s))), list(s))
147-
148144
def test_len(self):
145+
# This is an implementation detail, not an interface requirement
149146
s = 'hello'
150147
self.assertEqual(len(reversed(s)), len(s))
151148

‎Objects/enumobject.c‎

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -236,23 +236,11 @@ reversed_len(reversedobject *ro)
236236
return PyObject_Size(ro->seq);
237237
}
238238

239-
static PyObject *
240-
reversed_reverse(reversedobject *ro, PyObject *unused)
241-
{
242-
return PyObject_GetIter(ro->seq);
243-
}
244-
245239
PyDoc_STRVAR(reversed_doc,
246240
"reverse(sequence) -> reverse iterator over values of the sequence\n"
247241
"\n"
248242
"Return a reverse iterator");
249243

250-
static PyMethodDef reversed_methods[] = {
251-
{"__reversed__", (PyCFunction)reversed_reverse,
252-
METH_NOARGS, reversed_doc},
253-
{NULL, NULL} /* sentinel */
254-
};
255-
256244
static PySequenceMethods reversed_as_sequence = {
257245
(inquiry)reversed_len, /* sq_length */
258246
0, /* sq_concat */
@@ -289,7 +277,7 @@ PyTypeObject PyReversed_Type = {
289277
0, /* tp_weaklistoffset */
290278
PyObject_SelfIter, /* tp_iter */
291279
(iternextfunc)reversed_next, /* tp_iternext */
292-
reversed_methods, /* tp_methods */
280+
0, /* tp_methods */
293281
0, /* tp_members */
294282
0, /* tp_getset */
295283
0, /* tp_base */

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL