diff options
author | Ammar Askar <ammar@ammaraskar.com> | 2020-04-15 06:36:08 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-15 06:36:08 (GMT) |
commit | a86b522d8f1c8b9c26b5550de221d2227158cf4d (patch) | |
tree | 58a8be3453359c4847834d7ed8f6409eb129a96a /Modules | |
parent | 4f98f465f14e7258c5b18a62c5aa114dbe1174d8 (diff) | |
download | cpython-a86b522d8f1c8b9c26b5550de221d2227158cf4d.zip cpython-a86b522d8f1c8b9c26b5550de221d2227158cf4d.tar.gz cpython-a86b522d8f1c8b9c26b5550de221d2227158cf4d.tar.bz2 |
bpo-40277: Add a repr() to namedtuple's _tuplegetter to aid with introspection (GH-19537)
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_collectionsmodule.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c index 978ea03..7120e4d 100644 --- a/Modules/_collectionsmodule.c +++ b/Modules/_collectionsmodule.c @@ -2493,6 +2493,14 @@ tuplegetter_reduce(_tuplegetterobject *self, PyObject *Py_UNUSED(ignored)) return Py_BuildValue("(O(nO))", (PyObject*) Py_TYPE(self), self->index, self->doc); } +static PyObject* +tuplegetter_repr(_tuplegetterobject *self) +{ + return PyUnicode_FromFormat("%s(%zd, %R)", + _PyType_Name(Py_TYPE(self)), + self->index, self->doc); +} + static PyMemberDef tuplegetter_members[] = { {"__doc__", T_OBJECT, offsetof(_tuplegetterobject, doc), 0}, @@ -2515,7 +2523,7 @@ static PyTypeObject tuplegetter_type = { 0, /* tp_getattr */ 0, /* tp_setattr */ 0, /* tp_as_async */ - 0, /* tp_repr */ + (reprfunc)tuplegetter_repr, /* tp_repr */ 0, /* tp_as_number */ 0, /* tp_as_sequence */ 0, /* tp_as_mapping */ |