source: trunk/include/python2.4/structseq.h @ 490

Last change on this file since 490 was 88, checked in by cxsong, 19 years ago

copied from /opt/rappture/include

File size: 862 bytes
Line 
1
2/* Tuple object interface */
3
4#ifndef Py_STRUCTSEQ_H
5#define Py_STRUCTSEQ_H
6#ifdef __cplusplus
7extern "C" {
8#endif
9
10typedef struct PyStructSequence_Field {
11        char *name;
12        char *doc;
13} PyStructSequence_Field;
14
15typedef struct PyStructSequence_Desc {
16        char *name;
17        char *doc;
18        struct PyStructSequence_Field *fields;
19        int n_in_sequence;
20} PyStructSequence_Desc;
21
22extern char* PyStructSequence_UnnamedField;
23
24PyAPI_FUNC(void) PyStructSequence_InitType(PyTypeObject *type,
25                                           PyStructSequence_Desc *desc);
26
27PyAPI_FUNC(PyObject *) PyStructSequence_New(PyTypeObject* type);
28
29typedef struct {
30        PyObject_VAR_HEAD
31        PyObject *ob_item[1];
32} PyStructSequence;
33
34/* Macro, *only* to be used to fill in brand new objects */
35#define PyStructSequence_SET_ITEM(op, i, v) \
36        (((PyStructSequence *)(op))->ob_item[i] = v)
37
38#ifdef __cplusplus
39}
40#endif
41#endif /* !Py_STRUCTSEQ_H */
Note: See TracBrowser for help on using the repository browser.