• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*[clinic input]
2 preserve
3 [clinic start generated code]*/
4 
5 PyDoc_STRVAR(warnings_warn__doc__,
6 "warn($module, /, message, category=None, stacklevel=1, source=None)\n"
7 "--\n"
8 "\n"
9 "Issue a warning, or maybe ignore it or raise an exception.");
10 
11 #define WARNINGS_WARN_METHODDEF    \
12     {"warn", (PyCFunction)warnings_warn, METH_FASTCALL|METH_KEYWORDS, warnings_warn__doc__},
13 
14 static PyObject *
15 warnings_warn_impl(PyObject *module, PyObject *message, PyObject *category,
16                    Py_ssize_t stacklevel, PyObject *source);
17 
18 static PyObject *
warnings_warn(PyObject * module,PyObject * const * args,Py_ssize_t nargs,PyObject * kwnames)19 warnings_warn(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
20 {
21     PyObject *return_value = NULL;
22     static const char * const _keywords[] = {"message", "category", "stacklevel", "source", NULL};
23     static _PyArg_Parser _parser = {"O|OnO:warn", _keywords, 0};
24     PyObject *message;
25     PyObject *category = Py_None;
26     Py_ssize_t stacklevel = 1;
27     PyObject *source = Py_None;
28 
29     if (!_PyArg_ParseStackAndKeywords(args, nargs, kwnames, &_parser,
30         &message, &category, &stacklevel, &source)) {
31         goto exit;
32     }
33     return_value = warnings_warn_impl(module, message, category, stacklevel, source);
34 
35 exit:
36     return return_value;
37 }
38 /*[clinic end generated code: output=86369ece63001d78 input=a9049054013a1b77]*/
39