4 releases (2 breaking)
0.4.0 | Aug 6, 2024 |
---|---|
0.3.1 | Apr 6, 2024 |
0.3.0 | Aug 29, 2023 |
0.2.0 | Jan 11, 2023 |
#29 in Programming languages
80,084 downloads per month
Used in 42 crates
(10 directly)
425KB
12K
SLoC
Python AST node definitions and utilities.
AST nodes are very similary defined like Python AST. But a few exceptions exist due to parser optimization. They can be transformed to matching Python-styled AST in reasonable cost.
[PythonArguments] is replaced by [Arguments]. The new [Arguments] type representation uses a new type [ArgWithDefault] to represent arguments with default values. See each type documentation for more details.
A few top-level sum types are renamed to human friendly names.
[CmpOp] refers cmpop
[UnaryOp] refers unaryop
[BoolOp] refers boolop
[WithItem] refers withitem
[ExceptHandler] refers excepthandler
RustPython parser as a library
This project is forked from RustPython project. The parser is one of the core part of RustPython and Ruff project.
We try to keep these crates as a well-packaged library for more potential users.
Projects
- RustPython is a Python interpreter
- Ruff is an extremely fast Python linter
- Pylyzer is a static code analyzer / language server for Python
- Baembal is a Python package to accelerate
ast.parse
Dependencies
~8.5MB
~157K SLoC