2019-02-03 21:08:42 +01:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
<def format="2">
|
|
|
|
<!-- Python C API. see https://docs.python.org/2/c-api/index.html -->
|
|
|
|
<!-- Those are macros, but it's helpful to declare a function here -->
|
|
|
|
<function name="Py_INCREF,Py_IncRef,Py_DECREF,Py_DecRef">
|
|
|
|
<leak-ignore/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
2019-02-03 22:13:30 +01:00
|
|
|
<!-- Those are macros, but it's helpful to declare a function here -->
|
2019-02-03 21:08:42 +01:00
|
|
|
<function name="Py_XINCREF,Py_XDECREF">
|
|
|
|
<leak-ignore/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
|
|
|
<function name="Py_Initialize,Py_Finalize">
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
</function>
|
|
|
|
<function name="Py_InitializeEx">
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-bool/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
|
|
|
<function name="Py_IsInitialized">
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<pure/>
|
2019-02-05 07:37:10 +01:00
|
|
|
<returnValue type="int"/>
|
2019-02-04 20:31:21 +01:00
|
|
|
<use-retval/>
|
|
|
|
</function>
|
|
|
|
<function name="Py_Main">
|
|
|
|
<leak-ignore/>
|
|
|
|
<returnValue type="int"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-uninit/>
|
|
|
|
<valid>0:</valid>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2">
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
2019-02-03 21:08:42 +01:00
|
|
|
</function>
|
2019-02-03 22:13:30 +01:00
|
|
|
<function name="Py_SetProgramName,Py_SetPythonHome">
|
2019-02-03 21:08:42 +01:00
|
|
|
<leak-ignore/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
2019-02-05 07:37:10 +01:00
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
2019-02-03 21:08:42 +01:00
|
|
|
<strz/>
|
2019-02-05 07:37:10 +01:00
|
|
|
</arg>
|
|
|
|
</function>
|
|
|
|
<function name="PyErr_Clear">
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
</function>
|
|
|
|
<function name="PyErr_SetObject">
|
|
|
|
<leak-ignore/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2">
|
|
|
|
<not-null/>
|
2019-02-03 21:08:42 +01:00
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
2019-02-04 20:31:21 +01:00
|
|
|
<!-- void PyErr_SetString(PyObject *type, const char *message) -->
|
|
|
|
<function name="PyErr_SetString">
|
|
|
|
<leak-ignore/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="void"/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2">
|
|
|
|
<strz/>
|
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
2019-02-03 22:13:30 +01:00
|
|
|
<function name="Py_GetProgramName,Py_GetExecPrefix,Py_GetProgramFullPath,Py_GetPath,Py_GetPythonHome">
|
2019-02-03 21:08:42 +01:00
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="char *"/>
|
|
|
|
<pure/>
|
2019-02-04 20:31:21 +01:00
|
|
|
<use-retval/>
|
2019-02-03 21:08:42 +01:00
|
|
|
</function>
|
|
|
|
<function name="Py_GetVersion,Py_GetPlatform,Py_GetCopyright,Py_GetCompiler,Py_GetBuildInfo">
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<returnValue type="const char *"/>
|
|
|
|
<pure/>
|
2019-02-04 20:31:21 +01:00
|
|
|
<use-retval/>
|
2019-02-03 21:08:42 +01:00
|
|
|
</function>
|
2019-02-17 17:03:40 +01:00
|
|
|
<!-- https://docs.python.org/2.0/ext/parseTuple.html
|
|
|
|
PyObject *Py_BuildValue(char *format, ...); -->
|
|
|
|
<function name="Py_BuildValue">
|
|
|
|
<returnValue type="PyObject *"/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<leak-ignore/>
|
2019-02-18 21:48:41 +01:00
|
|
|
<use-retval/>
|
2019-02-17 17:03:40 +01:00
|
|
|
<arg nr="1">
|
|
|
|
<not-uninit/>
|
|
|
|
<formatstr/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2"/>
|
|
|
|
</function>
|
|
|
|
<!-- https://docs.python.org/2.0/ext/parseTuple.html
|
|
|
|
int PyArg_ParseTuple(PyObject *arg, char *format, ...); -->
|
|
|
|
<function name="PyArg_ParseTuple">
|
|
|
|
<returnValue type="int"/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<leak-ignore/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2">
|
|
|
|
<not-uninit/>
|
|
|
|
<formatstr/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="3"/>
|
|
|
|
</function>
|
2019-02-18 21:48:41 +01:00
|
|
|
<function name="PyArg_VaParse">
|
|
|
|
<returnValue type="int"/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<leak-ignore/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-null/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="2">
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
<arg nr="3">
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
2019-02-17 17:03:40 +01:00
|
|
|
<!-- int PyInt_Check(PyObject *o) -->
|
|
|
|
<function name="PyInt_Check">
|
|
|
|
<returnValue type="int"/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<leak-ignore/>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-bool/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
|
|
|
<!-- PyObject* PyInt_FromLong(long ival) -->
|
2019-02-17 17:50:27 +01:00
|
|
|
<function name="PyInt_FromLong">
|
2019-02-17 17:03:40 +01:00
|
|
|
<returnValue type="PyObject *"/>
|
|
|
|
<noreturn>false</noreturn>
|
|
|
|
<arg nr="1">
|
|
|
|
<not-bool/>
|
|
|
|
<not-uninit/>
|
|
|
|
</arg>
|
|
|
|
</function>
|
2019-02-05 16:12:34 +01:00
|
|
|
<!-- Deprecated DL_IMPORT and DL_EXPORT macros -->
|
|
|
|
<define name="DL_IMPORT(RTYPE)" value="RTYPE"/>
|
|
|
|
<define name="DL_EXPORT(RTYPE)" value="RTYPE"/>
|
2019-08-02 08:13:38 +02:00
|
|
|
<define name="Py_BEGIN_ALLOW_THREADS" value=""/>
|
|
|
|
<define name="Py_END_ALLOW_THREADS" value=""/>
|
|
|
|
<define name="Py_BLOCK_THREADS" value=""/>
|
|
|
|
<define name="Py_UNBLOCK_THREADS" value=""/>
|
2019-02-03 21:08:42 +01:00
|
|
|
</def>
|