diff options
author | Tim Peters <tim.peters@gmail.com> | 2001-08-02 04:15:00 +0000 |
---|---|---|
committer | Tim Peters <tim.peters@gmail.com> | 2001-08-02 04:15:00 +0000 |
commit | d8f1888e1764ecb32a0d04eae72739480bffd393 (patch) | |
tree | bfab9c210304cd7f6f4ce2f050419055e638e0b9 /Include/descrobject.h | |
parent | 9080f8aaae52e9b294b4c6e44a4b94aa26eeb627 (diff) | |
download | cpython-d8f1888e1764ecb32a0d04eae72739480bffd393.tar.gz |
Merge of descr-branch back into trunk.
Diffstat (limited to 'Include/descrobject.h')
-rw-r--r-- | Include/descrobject.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Include/descrobject.h b/Include/descrobject.h new file mode 100644 index 0000000000..b6fc521022 --- /dev/null +++ b/Include/descrobject.h @@ -0,0 +1,32 @@ +/* XXX getter, setter, getsetlist and wrapperbase need 'Py'-prefixed names */ + +typedef PyObject *(*getter)(PyObject *, void *); +typedef int (*setter)(PyObject *, PyObject *, void *); + +struct getsetlist { + char *name; + getter get; + setter set; + void *closure; +}; + +typedef PyObject *(*wrapperfunc)(PyObject *self, PyObject *args, + void *wrapped); + +struct wrapperbase { + char *name; + wrapperfunc wrapper; + char *doc; +}; + +extern DL_IMPORT(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *); +extern DL_IMPORT(PyObject *) PyDescr_NewMember(PyTypeObject *, + struct memberlist *); +extern DL_IMPORT(PyObject *) PyDescr_NewGetSet(PyTypeObject *, + struct getsetlist *); +extern DL_IMPORT(PyObject *) PyDescr_NewWrapper(PyTypeObject *, + struct wrapperbase *, void *); +extern DL_IMPORT(int) PyDescr_IsData(PyObject *); + +extern DL_IMPORT(PyObject *) PyDictProxy_New(PyObject *); +extern DL_IMPORT(PyObject *) PyWrapper_New(PyObject *, PyObject *); |