summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2010-11-27 20:40:43 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2010-11-27 20:40:43 (GMT)
commita66e029a9df200631ee8765ce7d89e1dcdf45f28 (patch)
tree785f11c28e7758ee56f499f4b8c12a00188ca431
parent34520cdcf47d6af520f9baf719bf14e49afddbf7 (diff)
downloadcpython-a66e029a9df200631ee8765ce7d89e1dcdf45f28.zip
cpython-a66e029a9df200631ee8765ce7d89e1dcdf45f28.tar.gz
cpython-a66e029a9df200631ee8765ce7d89e1dcdf45f28.tar.bz2
Make doc for PyErr_Format() up to date.
-rw-r--r--Doc/c-api/exceptions.rst79
1 files changed, 5 insertions, 74 deletions
diff --git a/Doc/c-api/exceptions.rst b/Doc/c-api/exceptions.rst
index fdd24da..894652e 100644
--- a/Doc/c-api/exceptions.rst
+++ b/Doc/c-api/exceptions.rst
@@ -145,79 +145,10 @@ in various ways. There is a separate error indicator for each thread.
.. c:function:: PyObject* PyErr_Format(PyObject *exception, const char *format, ...)
- This function sets the error indicator and returns *NULL*. *exception* should be
- a Python exception (class, not an instance). *format* should be an ASCII-encoded string,
- containing format codes, similar to :c:func:`printf`. The ``width.precision``
- before a format code is parsed, but the width part is ignored.
-
- .. % This should be exactly the same as the table in PyString_FromFormat.
- .. % One should just refer to the other.
- .. % The descriptions for %zd and %zu are wrong, but the truth is complicated
- .. % because not all compilers support the %z width modifier -- we fake it
- .. % when necessary via interpolating PY_FORMAT_SIZE_T.
- .. % Similar comments apply to the %ll width modifier and
- .. % PY_FORMAT_LONG_LONG.
-
- +-------------------+---------------+--------------------------------+
- | Format Characters | Type | Comment |
- +===================+===============+================================+
- | :attr:`%%` | *n/a* | The literal % character. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%c` | int | A single character, |
- | | | represented as an C int. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%d` | int | Exactly equivalent to |
- | | | ``printf("%d")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%u` | unsigned int | Exactly equivalent to |
- | | | ``printf("%u")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%ld` | long | Exactly equivalent to |
- | | | ``printf("%ld")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%lu` | unsigned long | Exactly equivalent to |
- | | | ``printf("%lu")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%lld` | long long | Exactly equivalent to |
- | | | ``printf("%lld")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%llu` | unsigned | Exactly equivalent to |
- | | long long | ``printf("%llu")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%zd` | Py_ssize_t | Exactly equivalent to |
- | | | ``printf("%zd")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%zu` | size_t | Exactly equivalent to |
- | | | ``printf("%zu")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%i` | int | Exactly equivalent to |
- | | | ``printf("%i")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%x` | int | Exactly equivalent to |
- | | | ``printf("%x")``. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%s` | char\* | A null-terminated C character |
- | | | array. |
- +-------------------+---------------+--------------------------------+
- | :attr:`%p` | void\* | The hex representation of a C |
- | | | pointer. Mostly equivalent to |
- | | | ``printf("%p")`` except that |
- | | | it is guaranteed to start with |
- | | | the literal ``0x`` regardless |
- | | | of what the platform's |
- | | | ``printf`` yields. |
- +-------------------+---------------+--------------------------------+
-
- An unrecognized format character causes all the rest of the format string to be
- copied as-is to the result string, and any extra arguments discarded.
-
- .. note::
-
- The `"%lld"` and `"%llu"` format specifiers are only available
- when :const:`HAVE_LONG_LONG` is defined.
-
- .. versionchanged:: 3.2
- Support for `"%lld"` and `"%llu"` added.
+ This function sets the error indicator and returns *NULL*. *exception*
+ should be a Python exception class. The *format* and subsequent
+ parameters help format the error message; they have the same meaning and
+ values as in :c:func:`PyUnicode_FromFormat`.
.. c:function:: void PyErr_SetNone(PyObject *type)
@@ -369,7 +300,7 @@ in various ways. There is a separate error indicator for each thread.
.. c:function:: int PyErr_WarnFormat(PyObject *category, Py_ssize_t stack_level, const char *format, ...)
Function similar to :c:func:`PyErr_WarnEx`, but use
- :c:func:`PyUnicode_FromFormatV` to format the warning message.
+ :c:func:`PyUnicode_FromFormat` to format the warning message.
.. versionadded:: 3.2