Name | openzeppelin-solidity-grammar-parser JSON |
Version |
0.0.3
JSON |
| download |
home_page | |
Summary | Solidity ANTLR4 grammar Python parser |
upload_time | 2024-02-05 12:12:14 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.10 |
license | |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
[](https://github.com/OpenZeppelin/sgp/actions/workflows/lint-and-test.yml) [](https://github.com/OpenZeppelin/sgp/actions/workflows/antlr4-test.yml)
# Solidity Grammar Parser
**SGP** - is a `Python` package that allows to build an [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) for a given [Solidity](https://solidity.readthedocs.io/) source code.
## Kudos
- The original grammar [Solidity.g4](./Solidity.g4) was developed and maintained by [solidity-parser-antlr](https://github.com/solidity-parser/antlr).
- The node types system and AST visitor are based on [solidity-parser-parser](https://github.com/solidity-parser/parser).
## Build
Run [build.sh](./build.sh) that does the following:
- checks if `Python` is installed and downloads it if not
- including `pip`
- including `antlr4-python3-runtime` package
- checks if `Java` is installed and downloads it if not
- including `jre`
- including `jdk`
- checks if `antlr4.jar` is downloaded and downloads it if not
- runs the ANTLR jar file and compiles the [Solidity.g4](./Solidity.g4) file.
The output result can be found in the [./out](./out) directory
## Tests
Run:
- `python -m coverage run -m unittest discover -v && python -m coverage report` for the `Python` tests
- [run-tests.sh](./test/test_parsing/run-tests.sh) to execute `antlr4` parse testing
## License
[MIT](./LICENSE)
Raw data
{
"_id": null,
"home_page": "",
"name": "openzeppelin-solidity-grammar-parser",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "",
"keywords": "",
"author": "",
"author_email": "Georgii Plotnikov <accembler@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d0/0a/cfdaf9552dc65f9e5fb45cdc61dc4f42780d22091384ecb8d1b5be101d23/openzeppelin-solidity-grammar-parser-0.0.3.tar.gz",
"platform": null,
"description": "[](https://github.com/OpenZeppelin/sgp/actions/workflows/lint-and-test.yml) [](https://github.com/OpenZeppelin/sgp/actions/workflows/antlr4-test.yml)\n\n# Solidity Grammar Parser\n\n**SGP** - is a `Python` package that allows to build an [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) for a given [Solidity](https://solidity.readthedocs.io/) source code.\n\n## Kudos\n\n- The original grammar [Solidity.g4](./Solidity.g4) was developed and maintained by [solidity-parser-antlr](https://github.com/solidity-parser/antlr).\n- The node types system and AST visitor are based on [solidity-parser-parser](https://github.com/solidity-parser/parser).\n\n## Build\n\nRun [build.sh](./build.sh) that does the following:\n- checks if `Python` is installed and downloads it if not\n - including `pip`\n - including `antlr4-python3-runtime` package\n- checks if `Java` is installed and downloads it if not\n - including `jre`\n - including `jdk`\n- checks if `antlr4.jar` is downloaded and downloads it if not\n- runs the ANTLR jar file and compiles the [Solidity.g4](./Solidity.g4) file.\n\nThe output result can be found in the [./out](./out) directory\n\n## Tests\n\nRun:\n- `python -m coverage run -m unittest discover -v && python -m coverage report` for the `Python` tests\n- [run-tests.sh](./test/test_parsing/run-tests.sh) to execute `antlr4` parse testing\n\n## License\n\n[MIT](./LICENSE)\n",
"bugtrack_url": null,
"license": "",
"summary": "Solidity ANTLR4 grammar Python parser",
"version": "0.0.3",
"project_urls": {
"Bug Tracker": "https://github.com/OpenZeppelin/sgp/issues",
"Homepage": "https://github.com/OpenZeppelin/sgp"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "96685cbf129df5820963e6edc607085a272deba87d90091a542788270bbc15a2",
"md5": "a56aac3c6b19c99b7e1b8c470fda1d2b",
"sha256": "5f5a4e73a2e3e074b972c862b40dc2587645f5bcc8e80f25d629c794bfdc4530"
},
"downloads": -1,
"filename": "openzeppelin_solidity_grammar_parser-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a56aac3c6b19c99b7e1b8c470fda1d2b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 70346,
"upload_time": "2024-02-05T12:12:10",
"upload_time_iso_8601": "2024-02-05T12:12:10.066916Z",
"url": "https://files.pythonhosted.org/packages/96/68/5cbf129df5820963e6edc607085a272deba87d90091a542788270bbc15a2/openzeppelin_solidity_grammar_parser-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d00acfdaf9552dc65f9e5fb45cdc61dc4f42780d22091384ecb8d1b5be101d23",
"md5": "ba1ac396f997b8799146dc08e6004a34",
"sha256": "1db2d507ea5f884d506e76514fcdfca51b87463b9c64e842b7a83cd49d801f87"
},
"downloads": -1,
"filename": "openzeppelin-solidity-grammar-parser-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "ba1ac396f997b8799146dc08e6004a34",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 67620,
"upload_time": "2024-02-05T12:12:14",
"upload_time_iso_8601": "2024-02-05T12:12:14.013619Z",
"url": "https://files.pythonhosted.org/packages/d0/0a/cfdaf9552dc65f9e5fb45cdc61dc4f42780d22091384ecb8d1b5be101d23/openzeppelin-solidity-grammar-parser-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-05 12:12:14",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OpenZeppelin",
"github_project": "sgp",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "openzeppelin-solidity-grammar-parser"
}