summaryrefslogtreecommitdiffstats
path: root/Include/parsetok.h
diff options
context:
space:
mode:
authorTim Peters <tim.peters@gmail.com>2001-07-16 05:37:24 (GMT)
committerTim Peters <tim.peters@gmail.com>2001-07-16 05:37:24 (GMT)
commitfe2127d3cbf34452a10b88c40e5ab06870936f94 (patch)
treef8dc5d80679d9003646e666f1f3d9253f7ae13bb /Include/parsetok.h
parente75785a646d2cb4004187772f1df3bc5d474a77f (diff)
downloadcpython-fe2127d3cbf34452a10b88c40e5ab06870936f94.zip
cpython-fe2127d3cbf34452a10b88c40e5ab06870936f94.tar.gz
cpython-fe2127d3cbf34452a10b88c40e5ab06870936f94.tar.bz2
Ugly. A pile of new xxxFlags() functions, to communicate to the parser
that 'yield' is a keyword. This doesn't help test_generators at all! I don't know why not. These things do work now (and didn't before this patch): 1. "from __future__ import generators" now works in a native shell. 2. Similarly "python -i xxx.py" now has generators enabled in the shell if xxx.py had them enabled. 3. This program (which was my doctest proxy) works fine: from __future__ import generators source = """\ def f(): yield 1 """ exec compile(source, "", "single") in globals() print type(f())
Diffstat (limited to 'Include/parsetok.h')
-rw-r--r--Include/parsetok.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Include/parsetok.h b/Include/parsetok.h
index aebc83c..66359d42 100644
--- a/Include/parsetok.h
+++ b/Include/parsetok.h
@@ -17,11 +17,19 @@ typedef struct {
int expected;
} perrdetail;
+#define PyPARSE_YIELD_IS_KEYWORD 0x0001
+
extern DL_IMPORT(node *) PyParser_ParseString(char *, grammar *, int,
perrdetail *);
extern DL_IMPORT(node *) PyParser_ParseFile (FILE *, char *, grammar *, int,
char *, char *, perrdetail *);
+extern DL_IMPORT(node *) PyParser_ParseStringFlags(char *, grammar *, int,
+ perrdetail *, int);
+extern DL_IMPORT(node *) PyParser_ParseFileFlags(FILE *, char *, grammar *,
+ int, char *, char *,
+ perrdetail *, int);
+
#ifdef __cplusplus
}
#endif