~ubuntu-branches/ubuntu/maverick/python3.1/maverick

« back to all changes in this revision

Viewing changes to Include/genobject.h

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-03-23 00:01:27 UTC
  • Revision ID: james.westby@ubuntu.com-20090323000127-5fstfxju4ufrhthq
Tags: upstream-3.1~a1+20090322
ImportĀ upstreamĀ versionĀ 3.1~a1+20090322

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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
        /* The code object backing the generator */
 
23
        PyObject *gi_code;
 
24
 
 
25
        /* List of weak reference. */
 
26
        PyObject *gi_weakreflist;
 
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 */