python-2.7.6/include/genobject.h Source File

genobject.h
Go to the documentation of this file.
1 
2 /* Generator object interface */
3 
4 #ifndef Py_GENOBJECT_H
5 #define Py_GENOBJECT_H
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 
10 struct _frame; /* Avoid including frameobject.h */
11 
12 typedef struct {
14  /* The gi_ prefix is intended to remind of generator-iterator. */
15 
16  /* Note: gi_frame can be NULL if the generator is "finished" */
17  struct _frame *gi_frame;
18 
19  /* True if generator is being executed. */
21 
22  /* The code object backing the generator */
24 
25  /* List of weak reference. */
27 } PyGenObject;
28 
29 PyAPI_DATA(PyTypeObject) PyGen_Type;
30 
31 #define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type)
32 #define PyGen_CheckExact(op) (Py_TYPE(op) == &PyGen_Type)
33 
34 PyAPI_FUNC(PyObject *) PyGen_New(struct _frame *);
35 PyAPI_FUNC(int) PyGen_NeedsFinalizing(PyGenObject *);
36 
37 #ifdef __cplusplus
38 }
39 #endif
40 #endif /* !Py_GENOBJECT_H */
PyObject * gi_code
Definition: genobject.h:23
PyObject * gi_weakreflist
Definition: genobject.h:26
PyObject_HEAD struct _frame * gi_frame
Definition: genobject.h:17
int gi_running
Definition: genobject.h:20
PyAPI_DATA(PyTypeObject) PyGen_Type
PyAPI_FUNC(PyObject *) PyGen_New(struct _frame *)
#define PyObject_HEAD
Definition: object.h:78