Skip to content

Commit eda5892

Browse files
Merge commit '3fe45ff'
2 parents 9d3f112 + 3fe45ff commit eda5892

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

pythonCAPI.cc

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,11 @@ extern "C"
5959
APIFN(PyObject*, PyErr_Occurred, (), ());
6060
VOID_APIFN(PyErr_Print,(),());
6161
VOID_APIFN(PyErr_SetString,(PyObject* o,const char* s),(o,s));
62+
APIFN(PyObject*, PyType_GenericAlloc,(PyTypeObject* t, Py_ssize_t n),(t,n));
63+
APIFN(PyObject*, PyType_GenericNew,(PyTypeObject* t, PyObject* a, PyObject* k),(t,a,k));
64+
65+
APIFN(int,Py_IsInitialized,(),());
66+
APIFN(PyObject*,PySys_GetObject,(const char *name),(name));
6267

6368
APIFN(PyObject*, Py_GetConstantBorrowed,(unsigned x),(x));
6469
APIFN(int, PyType_IsSubtype,(PyTypeObject* o1, PyTypeObject* o2),(o1,o2));
@@ -74,7 +79,8 @@ extern "C"
7479
APIFN(PyObject*, PyObject_GetAttr, (PyObject* o, PyObject* a), (o,a));
7580
APIFN(PyObject*, PyObject_GenericGetAttr, (PyObject* o, PyObject* a), (o,a));
7681
APIFN(int, PyObject_SetAttrString, (PyObject* o, const char* a, PyObject* v), (o,a,v));
77-
82+
APIFN(PyObject*, PyObject_Call, (PyObject* c, PyObject* a, PyObject* k),(c,a,k));
83+
7884
APIFN(int, PyModule_AddObject, (PyObject* o, const char* n, PyObject* v), (o,n,v));
7985
APIFN(const char*, PyModule_GetName, (PyObject* o), (o));
8086
APIFN(PyObject*, PyModule_Create2, (PyModuleDef* m,int i), (m,i));
@@ -85,6 +91,8 @@ extern "C"
8591
APIFN(PyObject*, PyUnicode_FromString, (const char* s), (s));
8692
APIFN(char*, PyUnicode_AsUTF8AndSize, (PyObject* s,Py_ssize_t* sz), (s,sz));
8793

94+
APIFN(PyObject*, PyTuple_New, (Py_ssize_t s), (s));
95+
8896
APIFN(PyObject*, PyDict_New, (), ());
8997
APIFN(int, PyDict_SetItemString, (PyObject* d, const char* k, PyObject* v), (d,k,v));
9098

pythonCAPI.h

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,8 @@ typedef PyObject *(*iternextfunc) (PyObject *);
125125
typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *);
126126
typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *);
127127
typedef int (*initproc)(PyObject *, PyObject *, PyObject *);
128-
typedef PyObject *(*newfunc)(struct _typeobject *, PyObject *, PyObject *);
129-
typedef PyObject *(*allocfunc)(struct _typeobject *, Py_ssize_t);
128+
typedef PyObject *(*newfunc)(PyTypeObject*, PyObject *, PyObject *);
129+
typedef PyObject *(*allocfunc)(PyTypeObject*, Py_ssize_t);
130130
typedef int (*visitproc)(PyObject *, void *);
131131
typedef int (*traverseproc)(PyObject *, visitproc, void *);
132132
typedef int (*inquiry)(PyObject *);
@@ -265,7 +265,11 @@ extern "C" {
265265
PyObject* PyErr_Occurred();
266266
void PyErr_Print();
267267
void PyErr_SetString(PyObject*,const char*);
268-
268+
PyObject* PyType_GenericAlloc(PyTypeObject*, Py_ssize_t);
269+
PyObject* PyType_GenericNew(PyTypeObject*, PyObject*, PyObject*);
270+
271+
int Py_IsInitialized();
272+
PyObject* PySys_GetObject(const char *name);
269273

270274
extern PyTypeObject* PyBool_Type;
271275
extern PyTypeObject* PyFloat_Type;
@@ -285,7 +289,8 @@ extern "C" {
285289
PyObject* PyObject_GetAttr(PyObject*, PyObject*);
286290
PyObject* PyObject_GenericGetAttr(PyObject*, PyObject*);
287291
int PyObject_SetAttrString(PyObject*, const char*, PyObject*);
288-
292+
PyObject* PyObject_Call(PyObject*, PyObject*, PyObject*);
293+
289294
int PyModule_AddObject(PyObject*, const char*, PyObject*);
290295
const char* PyModule_GetName(PyObject*);
291296
PyObject* PyModule_Create2(PyModuleDef*,int);
@@ -296,6 +301,8 @@ extern "C" {
296301
PyObject* PyUnicode_FromString(const char*);
297302
char* PyUnicode_AsUTF8AndSize(PyObject*,Py_ssize_t*);
298303

304+
PyObject* PyTuple_New(Py_ssize_t);
305+
299306
PyObject* PyDict_New();
300307
int PyDict_SetItemString(PyObject* dp, const char* key, PyObject* item);
301308

0 commit comments

Comments
 (0)