#9078: fix some Unicode C API descriptions, in comments and docs.

This commit is contained in:
Georg Brandl 2010-06-27 10:17:12 +00:00
parent 620c6c760d
commit 952867aa30
3 changed files with 11 additions and 11 deletions

View file

@ -346,10 +346,10 @@ APIs:
Coerce an encoded object *obj* to an Unicode object and return a reference with Coerce an encoded object *obj* to an Unicode object and return a reference with
incremented refcount. incremented refcount.
String and other char buffer compatible objects are decoded according to the :class:`bytes`, :class:`bytearray` and other char buffer compatible objects
given encoding and using the error handling defined by errors. Both can be are decoded according to the given encoding and using the error handling
*NULL* to have the interface use the default values (see the next section for defined by errors. Both can be *NULL* to have the interface use the default
details). values (see the next section for details).
All other objects, including Unicode objects, cause a :exc:`TypeError` to be All other objects, including Unicode objects, cause a :exc:`TypeError` to be
set. set.

View file

@ -498,14 +498,14 @@ PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode(
Py_ssize_t size /* size of buffer */ Py_ssize_t size /* size of buffer */
); );
/* Similar to PyUnicode_FromUnicode(), but u points to Latin-1 encoded bytes */ /* Similar to PyUnicode_FromUnicode(), but u points to UTF-8 encoded bytes */
PyAPI_FUNC(PyObject*) PyUnicode_FromStringAndSize( PyAPI_FUNC(PyObject*) PyUnicode_FromStringAndSize(
const char *u, /* char buffer */ const char *u, /* char buffer */
Py_ssize_t size /* size of buffer */ Py_ssize_t size /* size of buffer */
); );
/* Similar to PyUnicode_FromUnicode(), but u points to null-terminated /* Similar to PyUnicode_FromUnicode(), but u points to null-terminated
Latin-1 encoded bytes */ UTF-8 encoded bytes */
PyAPI_FUNC(PyObject*) PyUnicode_FromString( PyAPI_FUNC(PyObject*) PyUnicode_FromString(
const char *u /* string */ const char *u /* string */
); );
@ -550,7 +550,7 @@ PyAPI_FUNC(int) PyUnicode_Resize(
Coercion is done in the following way: Coercion is done in the following way:
1. String and other char buffer compatible objects are decoded 1. bytes, bytearray and other char buffer compatible objects are decoded
under the assumptions that they contain data using the current under the assumptions that they contain data using the current
default encoding. Decoding is done in "strict" mode. default encoding. Decoding is done in "strict" mode.
@ -574,7 +574,7 @@ PyAPI_FUNC(PyObject*) PyUnicode_FromEncodedObject(
Unicode objects are passed back as-is (subclasses are converted to Unicode objects are passed back as-is (subclasses are converted to
true Unicode objects), all other objects are delegated to true Unicode objects), all other objects are delegated to
PyUnicode_FromEncodedObject(obj, NULL, "strict") which results in PyUnicode_FromEncodedObject(obj, NULL, "strict") which results in
using the default encoding as basis for decoding the object. using UTF-8 encoding as basis for decoding the object.
The API returns NULL in case of an error. The caller is responsible The API returns NULL in case of an error. The caller is responsible
for decref'ing the returned objects. for decref'ing the returned objects.
@ -606,7 +606,7 @@ PyAPI_FUNC(void) _Py_ReleaseInternedUnicodeStrings(void);
#ifdef HAVE_WCHAR_H #ifdef HAVE_WCHAR_H
/* Create a Unicode Object from the whcar_t buffer w of the given /* Create a Unicode Object from the wchar_t buffer w of the given
size. size.
The buffer is copied into the new object. */ The buffer is copied into the new object. */
@ -665,7 +665,7 @@ PyAPI_FUNC(int) PyUnicode_ClearFreeList(void);
parameters encoding and errors have the same semantics as the ones parameters encoding and errors have the same semantics as the ones
of the builtin unicode() API. of the builtin unicode() API.
Setting encoding to NULL causes the default encoding to be used. Setting encoding to NULL causes the default encoding (UTF-8) to be used.
Error handling is set by errors which may also be set to NULL Error handling is set by errors which may also be set to NULL
meaning to use the default handling defined for the codec. Default meaning to use the default handling defined for the codec. Default

View file

@ -1273,7 +1273,7 @@ PyObject *PyUnicode_FromEncodedObject(register PyObject *obj,
case of a TypeError. */ case of a TypeError. */
if (PyErr_ExceptionMatches(PyExc_TypeError)) if (PyErr_ExceptionMatches(PyExc_TypeError))
PyErr_Format(PyExc_TypeError, PyErr_Format(PyExc_TypeError,
"coercing to str: need string or buffer, " "coercing to str: need bytes, bytearray or char buffer, "
"%.80s found", "%.80s found",
Py_TYPE(obj)->tp_name); Py_TYPE(obj)->tp_name);
goto onError; goto onError;