A copy of the ASDL parser used in CPython 3.5.
Project description
A copy of the ASDL parser used in CPython 3.5, cleaned a bit and packaged here.
Installation
$ pip install asdl
Usage
from asdl import ASDLParser, parse
syntax = """
module Lambda {
term =
Lambda(name x, term body) |
Apply(term function, term argument) |
Variable(name x)
}
"""
print(ASDLParser().parse(syntax))
print(asdl.parse("./test/Python.asdl"))
Output:
Module(Lambda, [Type(term, Sum([Constructor(Lambda, [Field(name, x), Field(term, body)]), Constructor(Apply, [Field(term, function), Field(term, argument)]), Constructor(Variable, [Field(name, x)])]))])
Module(Python, [Type(mod, Sum([Constructor(Module, [Field(stmt, body, seq=True)]), Constructor(Interactive, [Field(stmt, body, seq=True)]), Constructor(Expression, [Field(expr, body)]), Constructor(Suite, [Field(stmt, body, seq=True)])])), Type(stmt, Sum([Constructor(FunctionDef, [Field(identifier, name), Field(arguments, args), Field(stmt, body, seq=True), Field(expr, decorator_list, seq=True), Field(expr, returns, opt=True)]), …
License
Same as CPython: Python Software Foundation License (LICENSE file included here).
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file asdl-0.1.5.tar.gz
.
File metadata
- Download URL: asdl-0.1.5.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33fb0cd20fd08210fb98995b306bf098e4d17fc0b5e59f754c517c4cb0245d9d |
|
MD5 | 2c2fa3ba78ddfaa9e46c942f0a462d03 |
|
BLAKE2b-256 | 765dc8db2502e56ba60ccab83f60d19dffa418dd0a289dfd6e00a402864ef2b3 |
File details
Details for the file asdl-0.1.5-py2-none-any.whl
.
File metadata
- Download URL: asdl-0.1.5-py2-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 852b3821907183ac10ad1b977006c3438f621c52b3790ea3c3ba6c742a2a62f4 |
|
MD5 | 4dc5f515bcb308f6306c5ba79eb8789e |
|
BLAKE2b-256 | 1387130fa7c32a710955c8713858ac207eb33139554a2f4b9856f641f8a61f54 |