From 3598f0c3abe6b488d7ee3ce78884f150c1414a4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Lemburg?= Date: Wed, 17 Jan 2001 17:09:53 +0000 Subject: This patch adds a new builtin unistr() which behaves like str() except that it always returns Unicode objects. A new C API PyObject_Unicode() is also provided. This closes patch #101664. Written by Marc-Andre Lemburg. Copyright assigned to Guido van Rossum. --- Python/bltinmodule.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'Python') diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 683eec0914..3acd0e2b46 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -1927,6 +1927,23 @@ Return a nice string representation of the object.\n\ If the argument is a string, the return value is the same object."; +static PyObject * +builtin_unistr(PyObject *self, PyObject *args) +{ + PyObject *v; + + if (!PyArg_ParseTuple(args, "O:unistr", &v)) + return NULL; + return PyObject_Unicode(v); +} + +static char unistr_doc[] = +"unistr(object) -> unicode\n\ +\n\ +Return a nice unicode representation of the object.\n\ +If the argument is a unicode, the return value is the same object."; + + static PyObject * builtin_tuple(PyObject *self, PyObject *args) { @@ -2242,6 +2259,7 @@ static PyMethodDef builtin_methods[] = { {"type", builtin_type, 1, type_doc}, {"unicode", builtin_unicode, 1, unicode_doc}, {"unichr", builtin_unichr, 1, unichr_doc}, + {"unistr", builtin_unistr, 1, unistr_doc}, {"vars", builtin_vars, 1, vars_doc}, {"xrange", builtin_xrange, 1, xrange_doc}, {"zip", builtin_zip, 1, zip_doc}, -- cgit v1.2.1