From a5b725c3f67f1c98d99fec71a3cbaad502a02291 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 30 May 2013 12:43:54 +0200 Subject: updated for version 7.3.1060 Problem: Python: can't repr() a function. Solution: Python patch 19: add FunctionRepr(). (ZyX) --- src/if_py_both.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/if_py_both.h') diff --git a/src/if_py_both.h b/src/if_py_both.h index 97721b20f..edae12bef 100644 --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -1584,6 +1584,12 @@ FunctionCall(FunctionObject *self, PyObject *argsObject, PyObject *kwargs) return result; } + static PyObject * +FunctionRepr(FunctionObject *self) +{ + return PyString_FromFormat("", self->name); +} + static struct PyMethodDef FunctionMethods[] = { {"__call__",(PyCFunction)FunctionCall, METH_VARARGS|METH_KEYWORDS, ""}, {"__dir__", (PyCFunction)FunctionDir, METH_NOARGS, ""}, @@ -4640,6 +4646,7 @@ init_structs(void) FunctionType.tp_flags = Py_TPFLAGS_DEFAULT; FunctionType.tp_doc = "object that calls vim function"; FunctionType.tp_methods = FunctionMethods; + FunctionType.tp_repr = (reprfunc)FunctionRepr; #if PY_MAJOR_VERSION >= 3 FunctionType.tp_getattro = (getattrofunc)FunctionGetattro; #else -- cgit v1.2.1