2 #ifndef Py_DESCROBJECT_H
3 #define Py_DESCROBJECT_H
9 typedef int (*
setter)(PyObject *, PyObject *,
void *);
19 typedef PyObject *(*wrapperfunc)(PyObject *
self, PyObject *
args,
22 typedef PyObject *(*wrapperfunc_kwds)(PyObject *
self, PyObject *
args,
23 void *wrapped, PyObject *
kwds);
36 #define PyWrapperFlag_KEYWORDS 1
40 #define PyDescr_COMMON \
42 PyTypeObject *d_type; \
76 PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *);
77 PyAPI_FUNC(PyObject *) PyDescr_NewMember(PyTypeObject *,
79 PyAPI_FUNC(PyObject *) PyDescr_NewGetSet(PyTypeObject *,
81 PyAPI_FUNC(PyObject *) PyDescr_NewWrapper(PyTypeObject *,
83 #define PyDescr_IsData(d) (Py_TYPE(d)->tp_descr_set != NULL)
85 PyAPI_FUNC(PyObject *) PyDictProxy_New(PyObject *);
86 PyAPI_FUNC(PyObject *) PyWrapper_New(PyObject *, PyObject *);