Chris@87: Chris@87: #ifndef Py_COMPILE_H Chris@87: #define Py_COMPILE_H Chris@87: Chris@87: #include "code.h" Chris@87: Chris@87: #ifdef __cplusplus Chris@87: extern "C" { Chris@87: #endif Chris@87: Chris@87: /* Public interface */ Chris@87: struct _node; /* Declare the existence of this type */ Chris@87: PyAPI_FUNC(PyCodeObject *) PyNode_Compile(struct _node *, const char *); Chris@87: Chris@87: /* Future feature support */ Chris@87: Chris@87: typedef struct { Chris@87: int ff_features; /* flags set by future statements */ Chris@87: int ff_lineno; /* line number of last future statement */ Chris@87: } PyFutureFeatures; Chris@87: Chris@87: #define FUTURE_NESTED_SCOPES "nested_scopes" Chris@87: #define FUTURE_GENERATORS "generators" Chris@87: #define FUTURE_DIVISION "division" Chris@87: #define FUTURE_ABSOLUTE_IMPORT "absolute_import" Chris@87: #define FUTURE_WITH_STATEMENT "with_statement" Chris@87: #define FUTURE_PRINT_FUNCTION "print_function" Chris@87: #define FUTURE_UNICODE_LITERALS "unicode_literals" Chris@87: Chris@87: Chris@87: struct _mod; /* Declare the existence of this type */ Chris@87: PyAPI_FUNC(PyCodeObject *) PyAST_Compile(struct _mod *, const char *, Chris@87: PyCompilerFlags *, PyArena *); Chris@87: PyAPI_FUNC(PyFutureFeatures *) PyFuture_FromAST(struct _mod *, const char *); Chris@87: Chris@87: Chris@87: #ifdef __cplusplus Chris@87: } Chris@87: #endif Chris@87: #endif /* !Py_COMPILE_H */