Pablo Galindo Salgado
b01fd533fe
Extract visitors from the grammar nodes and call makers in the peg generator (GH-28172)
...
Simplify the peg generator logic by extracting as much visitors as possible to disentangle the flow and separate concerns.
2021-09-05 14:58:52 +01:00
Pablo Galindo Salgado
953d27261e
Update pegen to use the latest upstream developments (GH-27586)
2021-08-12 17:37:30 +01:00
Pablo Galindo
d10fef35c6
Fix typing problems reported by mypy in pegen (GH-20297)
2020-05-21 21:39:44 +01:00
Pablo Galindo
ac7a92cc0a
bpo-40334: Avoid collisions between parser variables and grammar variables (GH-19987)
...
This is for the C generator:
- Disallow rule and variable names starting with `_`
- Rename most local variable names generated by the parser to start with `_`
Exceptions:
- Renaming `p` to `_p` will be a separate PR
- There are still some names that might clash, e.g.
- anything starting with `Py`
- C reserved words (`if` etc.)
- Macros like `EXTRA` and `CHECK`
2020-05-09 21:34:50 -07:00
Pablo Galindo
7ba08ff7b4
bpo-40334: use the TOKENS file when checking dangling rules (GH-19849)
2020-05-01 23:14:12 +01:00
Pablo Galindo
b796b3fb48
bpo-40334: Simplify type handling in the PEG c_generator (GH-19818)
2020-05-01 12:32:26 +01:00
Pablo Galindo
4db245ee9d
bpo-40334: refactor and cleanup for the PEG generators (GH-19775)
2020-04-29 10:42:21 +01:00
Pablo Galindo
c5fc156852
bpo-40334: PEP 617 implementation: New PEG parser for CPython (GH-19503)
...
Co-authored-by: Guido van Rossum <guido@python.org>
Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
2020-04-22 23:29:27 +01:00