mirror of
https://github.com/python/cpython
synced 2024-10-14 14:53:36 +00:00
bpo-43244: Add pycore_ast.h header file (GH-24908)
Move _PyAST_GetDocString() and _PyAST_ExprAsUnicode() functions the internal C API: from Include/ast.h to a new Include/internal/pycore_ast.h header file. Don't export these functions anymore: replace PyAPI_FUNC() with extern. Remove also unused includes.
This commit is contained in:
parent
b4536e1c6a
commit
526fdeb227
|
@ -9,14 +9,6 @@ extern "C" {
|
||||||
|
|
||||||
PyAPI_FUNC(int) PyAST_Validate(mod_ty);
|
PyAPI_FUNC(int) PyAST_Validate(mod_ty);
|
||||||
|
|
||||||
/* _PyAST_ExprAsUnicode is defined in ast_unparse.c */
|
|
||||||
PyAPI_FUNC(PyObject *) _PyAST_ExprAsUnicode(expr_ty);
|
|
||||||
|
|
||||||
/* Return the borrowed reference to the first literal string in the
|
|
||||||
sequence of statements or NULL if it doesn't start from a literal string.
|
|
||||||
Doesn't set exception. */
|
|
||||||
PyAPI_FUNC(PyObject *) _PyAST_GetDocString(asdl_stmt_seq *);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
25
Include/internal/pycore_ast.h
Normal file
25
Include/internal/pycore_ast.h
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
#ifndef Py_INTERNAL_AST_H
|
||||||
|
#define Py_INTERNAL_AST_H
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef Py_BUILD_CORE
|
||||||
|
# error "this header requires Py_BUILD_CORE define"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "Python-ast.h" // expr_ty
|
||||||
|
|
||||||
|
/* _PyAST_ExprAsUnicode is defined in ast_unparse.c */
|
||||||
|
extern PyObject* _PyAST_ExprAsUnicode(expr_ty);
|
||||||
|
|
||||||
|
/* Return the borrowed reference to the first literal string in the
|
||||||
|
sequence of statements or NULL if it doesn't start from a literal string.
|
||||||
|
Doesn't set exception. */
|
||||||
|
extern PyObject* _PyAST_GetDocString(asdl_stmt_seq *);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* !Py_INTERNAL_AST_H */
|
||||||
|
|
|
@ -1135,6 +1135,7 @@ PYTHON_HEADERS= \
|
||||||
\
|
\
|
||||||
$(srcdir)/Include/internal/pycore_abstract.h \
|
$(srcdir)/Include/internal/pycore_abstract.h \
|
||||||
$(srcdir)/Include/internal/pycore_accu.h \
|
$(srcdir)/Include/internal/pycore_accu.h \
|
||||||
|
$(srcdir)/Include/internal/pycore_ast.h \
|
||||||
$(srcdir)/Include/internal/pycore_ast_state.h \
|
$(srcdir)/Include/internal/pycore_ast_state.h \
|
||||||
$(srcdir)/Include/internal/pycore_atomic.h \
|
$(srcdir)/Include/internal/pycore_atomic.h \
|
||||||
$(srcdir)/Include/internal/pycore_atomic_funcs.h \
|
$(srcdir)/Include/internal/pycore_atomic_funcs.h \
|
||||||
|
|
|
@ -175,6 +175,7 @@
|
||||||
<ClInclude Include="..\Include\import.h" />
|
<ClInclude Include="..\Include\import.h" />
|
||||||
<ClInclude Include="..\Include\internal\pycore_abstract.h" />
|
<ClInclude Include="..\Include\internal\pycore_abstract.h" />
|
||||||
<ClInclude Include="..\Include\internal\pycore_accu.h" />
|
<ClInclude Include="..\Include\internal\pycore_accu.h" />
|
||||||
|
<ClInclude Include="..\Include\internal\pycore_ast.h" />
|
||||||
<ClInclude Include="..\Include\internal\pycore_ast_state.h" />
|
<ClInclude Include="..\Include\internal\pycore_ast_state.h" />
|
||||||
<ClInclude Include="..\Include\internal\pycore_atomic.h" />
|
<ClInclude Include="..\Include\internal\pycore_atomic.h" />
|
||||||
<ClInclude Include="..\Include\internal\pycore_atomic_funcs.h" />
|
<ClInclude Include="..\Include\internal\pycore_atomic_funcs.h" />
|
||||||
|
|
|
@ -486,6 +486,9 @@
|
||||||
<ClInclude Include="..\Include\internal\pycore_accu.h">
|
<ClInclude Include="..\Include\internal\pycore_accu.h">
|
||||||
<Filter>Include\internal</Filter>
|
<Filter>Include\internal</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\Include\internal\pycore_ast.h">
|
||||||
|
<Filter>Include\internal</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\Include\internal\pycore_ast_state.h">
|
<ClInclude Include="..\Include\internal\pycore_ast_state.h">
|
||||||
<Filter>Include\internal</Filter>
|
<Filter>Include\internal</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
/* AST Optimizer */
|
/* AST Optimizer */
|
||||||
#include "Python.h"
|
#include "Python.h"
|
||||||
#include "Python-ast.h"
|
#include "pycore_ast.h" // _PyAST_GetDocString()
|
||||||
#include "ast.h"
|
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
|
|
@ -22,16 +22,15 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "Python.h"
|
#include "Python.h"
|
||||||
|
#include "pycore_ast.h" // _PyAST_GetDocString()
|
||||||
#include "pycore_pymem.h" // _PyMem_IsPtrFreed()
|
#include "pycore_pymem.h" // _PyMem_IsPtrFreed()
|
||||||
#include "pycore_long.h" // _PyLong_GetZero()
|
#include "pycore_long.h" // _PyLong_GetZero()
|
||||||
|
|
||||||
#include "Python-ast.h"
|
#include "symtable.h" // struct symtable
|
||||||
#include "ast.h"
|
|
||||||
#include "code.h"
|
|
||||||
#include "symtable.h"
|
|
||||||
#define NEED_OPCODE_JUMP_TABLES
|
#define NEED_OPCODE_JUMP_TABLES
|
||||||
#include "opcode.h"
|
#include "opcode.h" // EXTENDED_ARG
|
||||||
#include "wordcode_helpers.h"
|
#include "wordcode_helpers.h" // instrsize()
|
||||||
|
|
||||||
|
|
||||||
#define DEFAULT_BLOCK_SIZE 16
|
#define DEFAULT_BLOCK_SIZE 16
|
||||||
#define DEFAULT_BLOCKS 8
|
#define DEFAULT_BLOCKS 8
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
#include "Python.h"
|
#include "Python.h"
|
||||||
#include "Python-ast.h"
|
#include "pycore_ast.h" // _PyAST_GetDocString()
|
||||||
#include "token.h"
|
|
||||||
#include "code.h"
|
|
||||||
#include "symtable.h"
|
|
||||||
#include "ast.h"
|
|
||||||
|
|
||||||
#define UNDEFINED_FUTURE_FEATURE "future feature %.100s is not defined"
|
#define UNDEFINED_FUTURE_FEATURE "future feature %.100s is not defined"
|
||||||
#define ERR_LATE_FUTURE \
|
#define ERR_LATE_FUTURE \
|
||||||
|
|
Loading…
Reference in a new issue