| /* Tuple object interface */ | |
| #ifndef Py_STRUCTSEQ_H | |
| #define Py_STRUCTSEQ_H | |
| #ifdef __cplusplus | |
| extern "C" { | |
| #endif | |
| typedef struct PyStructSequence_Field { | |
| char *name; | |
| char *doc; | |
| } PyStructSequence_Field; | |
| typedef struct PyStructSequence_Desc { | |
| char *name; | |
| char *doc; | |
| struct PyStructSequence_Field *fields; | |
| int n_in_sequence; | |
| } PyStructSequence_Desc; | |
| extern char* PyStructSequence_UnnamedField; | |
| PyAPI_FUNC(void) PyStructSequence_InitType(PyTypeObject *type, | |
| PyStructSequence_Desc *desc); | |
| PyAPI_FUNC(PyObject *) PyStructSequence_New(PyTypeObject* type); | |
| typedef struct { | |
| PyObject_VAR_HEAD | |
| PyObject *ob_item[1]; | |
| } PyStructSequence; | |
| /* Macro, *only* to be used to fill in brand new objects */ | |
| #define PyStructSequence_SET_ITEM(op, i, v) \ | |
| (((PyStructSequence *)(op))->ob_item[i] = v) | |
| #ifdef __cplusplus | |
| } | |
| #endif | |
| #endif /* !Py_STRUCTSEQ_H */ |