astutils


Nameastutils JSON
Version 0.0.6 PyPI version JSON
download
home_pagehttps://github.com/johnyf/astutils
SummaryUtilities for abstract syntax trees and parsing with PLY.
upload_time2024-04-15 17:25:19
maintainerNone
docs_urlNone
authorIoannis Filippidis
requires_python>=3.10
licenseBSD
keywords lexing parsing syntax tree abstract syntax tree ast ply lex yacc
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![Build Status][build_img]][ci]


About
=====

Bare essentials for building abstract syntax trees (AST) and Python
`lex`-`yacc` ([PLY](https://github.com/dabeaz/ply)) parsers.
The package includes:

- two classes for tree nodes: `Terminal`, `Operator`
- a `Lexer` and `Parser` class, and a helper function to erase and
  rewrite the table files.

The examples under `examples/` demonstrate how to use these classes to create
a richer AST, a parser, and different backends that use the same parser.

These classes provide the boilerplate for parsing with PLY, and are based on
code that was developed in [`tulip`](
    https://github.com/tulip-control/tulip-control)
and [`promela`](https://github.com/johnyf/promela).


License
=======
[BSD-3](https://opensource.org/licenses/BSD-3-Clause), see file `LICENSE`.


[build_img]: https://github.com/johnyf/astutils/actions/workflows/main.yml/badge.svg?branch=main
[ci]: https://github.com/johnyf/astutils/actions

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/johnyf/astutils",
    "name": "astutils",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "lexing, parsing, syntax tree, abstract syntax tree, AST, PLY, lex, yacc",
    "author": "Ioannis Filippidis",
    "author_email": "jfilippidis@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/88/d9/86e4053d44baa2b648596a443e2bcf5b8e1d30a9669b14bfacc5307fbc2f/astutils-0.0.6.tar.gz",
    "platform": null,
    "description": "[![Build Status][build_img]][ci]\n\n\nAbout\n=====\n\nBare essentials for building abstract syntax trees (AST) and Python\n`lex`-`yacc` ([PLY](https://github.com/dabeaz/ply)) parsers.\nThe package includes:\n\n- two classes for tree nodes: `Terminal`, `Operator`\n- a `Lexer` and `Parser` class, and a helper function to erase and\n  rewrite the table files.\n\nThe examples under `examples/` demonstrate how to use these classes to create\na richer AST, a parser, and different backends that use the same parser.\n\nThese classes provide the boilerplate for parsing with PLY, and are based on\ncode that was developed in [`tulip`](\n    https://github.com/tulip-control/tulip-control)\nand [`promela`](https://github.com/johnyf/promela).\n\n\nLicense\n=======\n[BSD-3](https://opensource.org/licenses/BSD-3-Clause), see file `LICENSE`.\n\n\n[build_img]: https://github.com/johnyf/astutils/actions/workflows/main.yml/badge.svg?branch=main\n[ci]: https://github.com/johnyf/astutils/actions\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "Utilities for abstract syntax trees and parsing with PLY.",
    "version": "0.0.6",
    "project_urls": {
        "Homepage": "https://github.com/johnyf/astutils"
    },
    "split_keywords": [
        "lexing",
        " parsing",
        " syntax tree",
        " abstract syntax tree",
        " ast",
        " ply",
        " lex",
        " yacc"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "88d986e4053d44baa2b648596a443e2bcf5b8e1d30a9669b14bfacc5307fbc2f",
                "md5": "7ed4f168d974a51de1063ebcbef3622c",
                "sha256": "e9a6f31b243ecfc3c7c84dd2f145cf5de83e475b650d2a6b781cfa713ad15427"
            },
            "downloads": -1,
            "filename": "astutils-0.0.6.tar.gz",
            "has_sig": false,
            "md5_digest": "7ed4f168d974a51de1063ebcbef3622c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 9333,
            "upload_time": "2024-04-15T17:25:19",
            "upload_time_iso_8601": "2024-04-15T17:25:19.294912Z",
            "url": "https://files.pythonhosted.org/packages/88/d9/86e4053d44baa2b648596a443e2bcf5b8e1d30a9669b14bfacc5307fbc2f/astutils-0.0.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-15 17:25:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "johnyf",
    "github_project": "astutils",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "astutils"
}
        
Elapsed time: 0.26284s