{ "info": { "author": "Jon Brandvein", "author_email": "jon.brandvein@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# iAST #\n\n*(Supports Python 3.3 and 3.4)*\n\nThis library provides a way of defining and transforming abstract syntax\ntrees (ASTs) for custom languages. It can be used to help build a compiler\nor other program transformation system.\n\niAST reads your language's abstract syntax from an ASDL grammar, and\nautomatically generates node classes. A standard visitor-style framework\nis provided for traversing, transforming, and pattern matching over trees.\nNodes are hashable, have structural equality, and support optional type\nchecking. (Parsing is not supported and should be handled by an external\nparser generator.)\n\nNode definitions for the ASTs of Python 3.3 and Python 3.4 are provided\nout-of-the-box, along with tools for writing code templates and macros\ntargeting Python code. However, the main framework works on ASTs for\narbitrary languages.\n\n## Examples ##\n\nSee [arith.py](examples/arith.py) for basic usage and visitors/transformers.\nSee [toy.py](examples/toy.py) for a comparison with Python's own ast module\nand the use of type checking. Both examples use abstract grammars from the\ncorresponding ASDL files.\n\n## Installation ##\n\nTo install from pip/PyPI:\n\n```\npython -m pip install iast\n```\n\nTo use a development version:\n\n```\npython -m pip install https://github.com/brandjon/iast/tree/tarball/develop\n```\n\nPython 3.3 and 3.4 are supported. The only dependency is\n[simplestruct](https://github.com/brandjon/simplestruct), which is used to\ndefine the node classes.\n\n## Developers ##\n\nTests can be run with `python setup.py test`, or by installing\n[Tox](http://testrun.org/tox/latest/) and running `python -m tox`\nin the project root. Tox tests both Python 3.3 and 3.4 configurations.\nBuilding a source distribution (`python setup.py sdist`) requires the\nsetuptools extension package\n[setuptools-git](https://github.com/wichert/setuptools-git).\n\n## References ##\n\n[1]: https://github.com/eliben/asdl_parser\n[[1]]: Eli Bendersky's rewrite of the Python ASDL parser, which powers\niAST's generation of nodes from ASDL.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/brandjon/iast", "keywords": null, "license": "MIT License", "maintainer": null, "maintainer_email": null, "name": "iAST", "package_url": "https://pypi.org/project/iAST/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/iAST/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/brandjon/iast" }, "release_url": "https://pypi.org/project/iAST/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "A library for defining and manipulating ASTs", "version": "0.2.1" }, "last_serial": 1370414, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "70acaecc6bf49779e72d86a6f5915b8d", "sha256": "4b358ad211a8a8b194e3a2c6979c892bb7f5cb678dfe87b7773aa038f5fbcb17" }, "downloads": -1, "filename": "iAST-0.2.0.zip", "has_sig": false, "md5_digest": "70acaecc6bf49779e72d86a6f5915b8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46493, "upload_time": "2015-01-03T23:07:41", "url": "https://files.pythonhosted.org/packages/ae/4f/51cd418066e948acdee2ac65cd527f3ff1629b18ede898ace5e505312e7c/iAST-0.2.0.zip" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "db75714233f980c6026226d5b0e05a8c", "sha256": "ad869bb461c30753582500ac1c1e8cd1c113e6a946bd6548ff55c0c58854176c" }, "downloads": -1, "filename": "iAST-0.2.1.zip", "has_sig": false, "md5_digest": "db75714233f980c6026226d5b0e05a8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46569, "upload_time": "2015-01-04T22:04:41", "url": "https://files.pythonhosted.org/packages/61/d2/b0ced4c37d8586c08f0e1b1f5a3c296d0c65b73c1a667555421879a71c8a/iAST-0.2.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "db75714233f980c6026226d5b0e05a8c", "sha256": "ad869bb461c30753582500ac1c1e8cd1c113e6a946bd6548ff55c0c58854176c" }, "downloads": -1, "filename": "iAST-0.2.1.zip", "has_sig": false, "md5_digest": "db75714233f980c6026226d5b0e05a8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46569, "upload_time": "2015-01-04T22:04:41", "url": "https://files.pythonhosted.org/packages/61/d2/b0ced4c37d8586c08f0e1b1f5a3c296d0c65b73c1a667555421879a71c8a/iAST-0.2.1.zip" } ] }