1 
2 #ifndef Py_COMPILE_H
3 #define Py_COMPILE_H
4 
5 #include "code.h"
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 /* Public interface */
12 struct _node; /* Declare the existence of this type */
13 PyAPI_FUNC(PyCodeObject *) PyNode_Compile(struct _node *, const char *);
14 
15 /* Future feature support */
16 
17 typedef struct {
18     int ff_features;      /* flags set by future statements */
19     int ff_lineno;        /* line number of last future statement */
20 } PyFutureFeatures;
21 
22 #define FUTURE_NESTED_SCOPES "nested_scopes"
23 #define FUTURE_GENERATORS "generators"
24 #define FUTURE_DIVISION "division"
25 #define FUTURE_ABSOLUTE_IMPORT "absolute_import"
26 #define FUTURE_WITH_STATEMENT "with_statement"
27 #define FUTURE_PRINT_FUNCTION "print_function"
28 #define FUTURE_UNICODE_LITERALS "unicode_literals"
29 
30 
31 struct _mod; /* Declare the existence of this type */
32 PyAPI_FUNC(PyCodeObject *) PyAST_Compile(struct _mod *, const char *,
33 					PyCompilerFlags *, PyArena *);
34 PyAPI_FUNC(PyFutureFeatures *) PyFuture_FromAST(struct _mod *, const char *);
35 
36 
37 #ifdef __cplusplus
38 }
39 #endif
40 #endif /* !Py_COMPILE_H */
41