mirror of
https://github.com/python/cpython.git
synced 2025-11-01 18:51:43 +00:00
Merged revisions 77088 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r77088 | georg.brandl | 2009-12-28 09:34:58 +0100 (Mo, 28 Dez 2009) | 1 line #7033: add new API function PyErr_NewExceptionWithDoc, for easily giving new exceptions a docstring. ........
This commit is contained in:
parent
127d47092a
commit
1e28a27f84
7 changed files with 118 additions and 2 deletions
|
|
@ -1716,6 +1716,26 @@ code_newempty(PyObject *self, PyObject *args)
|
|||
return (PyObject *)PyCode_NewEmpty(filename, funcname, firstlineno);
|
||||
}
|
||||
|
||||
/* Test PyErr_NewExceptionWithDoc (also exercise PyErr_NewException).
|
||||
Run via Lib/test/test_exceptions.py */
|
||||
static PyObject *
|
||||
make_exception_with_doc(PyObject *self, PyObject *args, PyObject *kwargs)
|
||||
{
|
||||
const char *name;
|
||||
const char *doc = NULL;
|
||||
PyObject *base = NULL;
|
||||
PyObject *dict = NULL;
|
||||
|
||||
static char *kwlist[] = {"name", "doc", "base", "dict", NULL};
|
||||
|
||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
|
||||
"s|sOO:make_exception_with_doc", kwlist,
|
||||
&name, &doc, &base, &dict))
|
||||
return NULL;
|
||||
|
||||
return PyErr_NewExceptionWithDoc(name, doc, base, dict);
|
||||
}
|
||||
|
||||
static PyMethodDef TestMethods[] = {
|
||||
{"raise_exception", raise_exception, METH_VARARGS},
|
||||
{"raise_memoryerror", (PyCFunction)raise_memoryerror, METH_NOARGS},
|
||||
|
|
@ -1774,6 +1794,8 @@ static PyMethodDef TestMethods[] = {
|
|||
{"exception_print", exception_print, METH_VARARGS},
|
||||
{"argparsing", argparsing, METH_VARARGS},
|
||||
{"code_newempty", code_newempty, METH_VARARGS},
|
||||
{"make_exception_with_doc", (PyCFunction)make_exception_with_doc,
|
||||
METH_VARARGS | METH_KEYWORDS},
|
||||
{NULL, NULL} /* sentinel */
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue