blob: effb9fad7196f4edb8dc4e12bcf9dd667d3ea4c4 [file] [log] [blame]
Christian Heimes33fe8092008-04-13 13:53:33 +00001#ifndef Py_WARNINGS_H
2#define Py_WARNINGS_H
3#ifdef __cplusplus
4extern "C" {
5#endif
6
Martin v. Löwis4d0d4712010-12-03 20:14:31 +00007#ifndef Py_LIMITED_API
Martin v. Löwis1a214512008-06-11 05:26:20 +00008PyAPI_FUNC(PyObject*) _PyWarnings_Init(void);
Martin v. Löwis4d0d4712010-12-03 20:14:31 +00009#endif
Christian Heimes33fe8092008-04-13 13:53:33 +000010
Victor Stinner555a24f2010-12-27 01:49:26 +000011PyAPI_FUNC(int) PyErr_WarnEx(
12 PyObject *category,
13 const char *message, /* UTF-8 encoded string */
14 Py_ssize_t stack_level);
15PyAPI_FUNC(int) PyErr_WarnFormat(
16 PyObject *category,
17 Py_ssize_t stack_level,
18 const char *format, /* ASCII-encoded string */
19 ...);
Martin v. Löwis1c0689c2014-01-03 21:36:49 +010020#ifndef Py_LIMITED_API
Victor Stinner14e461d2013-08-26 22:28:21 +020021PyAPI_FUNC(int) PyErr_WarnExplicitObject(
22 PyObject *category,
23 PyObject *message,
24 PyObject *filename,
25 int lineno,
26 PyObject *module,
27 PyObject *registry);
Martin v. Löwis1c0689c2014-01-03 21:36:49 +010028#endif
Victor Stinner555a24f2010-12-27 01:49:26 +000029PyAPI_FUNC(int) PyErr_WarnExplicit(
30 PyObject *category,
31 const char *message, /* UTF-8 encoded string */
Victor Stinnercb428f02010-12-27 20:10:36 +000032 const char *filename, /* decoded from the filesystem encoding */
Victor Stinner555a24f2010-12-27 01:49:26 +000033 int lineno,
34 const char *module, /* UTF-8 encoded string */
35 PyObject *registry);
Christian Heimes33fe8092008-04-13 13:53:33 +000036
Martin v. Löwis1c0689c2014-01-03 21:36:49 +010037#ifndef Py_LIMITED_API
Antoine Pitrou070cb3c2013-05-08 13:23:25 +020038PyAPI_FUNC(int)
39PyErr_WarnExplicitFormat(PyObject *category,
40 const char *filename, int lineno,
41 const char *module, PyObject *registry,
42 const char *format, ...);
Martin v. Löwis1c0689c2014-01-03 21:36:49 +010043#endif
Antoine Pitrou070cb3c2013-05-08 13:23:25 +020044
Christian Heimes33fe8092008-04-13 13:53:33 +000045/* DEPRECATED: Use PyErr_WarnEx() instead. */
Martin v. Löwis4d0d4712010-12-03 20:14:31 +000046#ifndef Py_LIMITED_API
Christian Heimes33fe8092008-04-13 13:53:33 +000047#define PyErr_Warn(category, msg) PyErr_WarnEx(category, msg, 1)
Martin v. Löwis4d0d4712010-12-03 20:14:31 +000048#endif
Christian Heimes33fe8092008-04-13 13:53:33 +000049
50#ifdef __cplusplus
51}
52#endif
53#endif /* !Py_WARNINGS_H */
54