python-2.5.2/win32/include/genobject.h
changeset 0 ae805ac0140d
equal deleted inserted replaced
-1:000000000000 0:ae805ac0140d
       
     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 {
       
    13 	PyObject_HEAD
       
    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. */
       
    20 	int gi_running;
       
    21 
       
    22 	/* List of weak reference. */
       
    23 	PyObject *gi_weakreflist;
       
    24 } PyGenObject;
       
    25 
       
    26 PyAPI_DATA(PyTypeObject) PyGen_Type;
       
    27 
       
    28 #define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type)
       
    29 #define PyGen_CheckExact(op) ((op)->ob_type == &PyGen_Type)
       
    30 
       
    31 PyAPI_FUNC(PyObject *) PyGen_New(struct _frame *);
       
    32 PyAPI_FUNC(int) PyGen_NeedsFinalizing(PyGenObject *);
       
    33 
       
    34 #ifdef __cplusplus
       
    35 }
       
    36 #endif
       
    37 #endif /* !Py_GENOBJECT_H */