diff options
Diffstat (limited to 'contrib/tools/python3/Parser/peg_api.c')
-rw-r--r-- | contrib/tools/python3/Parser/peg_api.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/contrib/tools/python3/Parser/peg_api.c b/contrib/tools/python3/Parser/peg_api.c new file mode 100644 index 0000000000..1487ac4ff8 --- /dev/null +++ b/contrib/tools/python3/Parser/peg_api.c @@ -0,0 +1,28 @@ +#include "Python.h" + +#include "tokenizer.h" +#include "pegen.h" + +mod_ty +_PyParser_ASTFromString(const char *str, PyObject* filename, int mode, + PyCompilerFlags *flags, PyArena *arena) +{ + if (PySys_Audit("compile", "yO", str, filename) < 0) { + return NULL; + } + + mod_ty result = _PyPegen_run_parser_from_string(str, mode, filename, flags, arena); + return result; +} + +mod_ty +_PyParser_ASTFromFile(FILE *fp, PyObject *filename_ob, const char *enc, + int mode, const char *ps1, const char* ps2, + PyCompilerFlags *flags, int *errcode, PyArena *arena) +{ + if (PySys_Audit("compile", "OO", Py_None, filename_ob) < 0) { + return NULL; + } + return _PyPegen_run_parser_from_file_pointer(fp, mode, filename_ob, enc, ps1, ps2, + flags, errcode, arena); +} |