{ "info": { "author": "thautwarm", "author_email": "twshere@outlook.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython" ], "description": "|Build Status| |PyPI version| |Release Note| |MIT License|\n\nEBNFParser\n==========\n\nParse Many, Any, Every |Doc|\n----------------------------\n\n::\n\n LR ::= LR 'a' 'b' | LR 'c' | 'd';\n\n- `Python Project(Support Python\n 3.6+) `__\n (v 2.0+)\n\n - `Old Version : Misakawa\n v0.x `__\n - `Old Version : Ruikowa\n v1.x `__\n\n--------------\n\nInstall\n-------\n\n- Python\n\n - pip\n\n ``pip installl -U EBNFParser``\n\n - setup\n\n .. code:: shell\n\n git clone https://github.com/thautwarm/EBNFParser\n cd EBNFParser/Python\n python setup.py install\n\nUsage\n-----\n\n- Command Line Tools\n\n - ``ruiko``.\n\n .. code:: shell\n\n ruiko ./ ./\n [--testTk] # print tokenized words or not\n [--test] # generate test script \"test_lang.py\"\n\n Use command ``ruiko`` to generate parser and token files, and then\n you can use ``test_lang.py`` to test your parser.\n\n .. code:: shell\n\n python ./test_lang.py Stmt \" (+ 1 2) \" -o test.json --testTk\n\n- Integrated into your own project\n\n .. code:: python\n\n\n from Ruikowa.ObjectRegex.ASTDef import Ast\n from Ruikowa.ErrorHandler import ErrorHandler\n from Ruikowa.ObjectRegex.MetaInfo import MetaInfo\n from Ruikowa.ObjectRegex.Tokenizer import Tokenizer\n\n from import , token_table\n\n\n import typing as t\n\n def token_func(src_code: str) -> t.Iterable[Tokenizer]:\n return Tokenizer.from_raw_strings(src_code, token_table, ({}, {}))\n\n parser = ErrorHandler(.match, token_func)\n\n def parse(filename: str) -> Ast:\n\n return parser.from_file(filename)\n\n\n print(parse())\n\nNeed more? See `the\ndocuments `__.\n\nExamples\n--------\n\nHere are some examples to refer:\n\nEBNFParser 2.0\n\n- `Rem `__\n The Rem programming language.\n\nOld version(Before EBNFParser 1.1).\n\n- | `DBG-Lang `__\n | A DSL for SQL development in Python areas.\n\n- | `Rem(Based\n EBNFParser1.1) `__\n | A full featured modern language to enhance program readability\n based on CPython.\n\n- | `Lang.Red `__\n | An attempt to making ASDL in CPython(unfinished yet)\n\nWill support F# and Rem.\n\n.. |Build Status| image:: https://travis-ci.org/thautwarm/EBNFParser.svg?branch=boating-new\n :target: https://travis-ci.org/thautwarm/EBNFParser\n.. |PyPI version| image:: https://img.shields.io/pypi/v/EBNFParser.svg\n :target: https://pypi.python.org/pypi/EBNFParser\n.. |Release Note| image:: https://img.shields.io/badge/note-release-orange.svg\n :target: https://github.com/thautwarm/EBNFParser/blob/boating-new/Python/release-note\n.. |MIT License| image:: https://img.shields.io/badge/license-MIT-Green.svg?style=flat\n :target: https://github.com/thautwarm/EBNFParser/blob/boating-new/LICENSE\n.. |Doc| image:: https://img.shields.io/badge/document-2.1.2-yellow.svg?style=flat\n :target: http://ebnfparser.readthedocs.io/en/boating-new\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/thautwarm/EBNFParser", "keywords": "parser", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "EBNFParser", "package_url": "https://pypi.org/project/EBNFParser/", "platform": "any", "project_url": "https://pypi.org/project/EBNFParser/", "project_urls": { "Homepage": "https://github.com/thautwarm/EBNFParser" }, "release_url": "https://pypi.org/project/EBNFParser/2.1.3/", "requires_dist": null, "requires_python": "", "summary": "very powerful and optional parser framework for python", "version": "2.1.3" }, "last_serial": 3737804, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "25b230099b0d9c1107c64bb9cc7ce2e5", "sha256": "719c03efba2bf29455cdca9b2402ba7b56ed3cacd3d13f2c4288f8ce6655e54f" }, "downloads": -1, "filename": "EBNFParser-0.1.tar.gz", "has_sig": false, "md5_digest": "25b230099b0d9c1107c64bb9cc7ce2e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5778, "upload_time": "2017-10-05T18:25:40", "url": "https://files.pythonhosted.org/packages/60/89/19aff50f52421fb79a6500c36d7c0f9026676a44c92f422565543dbf26b3/EBNFParser-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "53d066bd4a025377cdfc73f0dff39310", "sha256": "676ef27ae8474917e8dc58e07fd8b022baccdad9e2554ad8269afd314b4882c0" }, "downloads": -1, "filename": "EBNFParser-0.1.1.tar.gz", "has_sig": false, "md5_digest": "53d066bd4a025377cdfc73f0dff39310", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5779, "upload_time": "2017-10-05T18:32:44", "url": "https://files.pythonhosted.org/packages/17/d9/e0edab13f3b567696548a1e328e4e376ef2229e15093976ed0d8bb76bb97/EBNFParser-0.1.1.tar.gz" } ], "0.1.1.2": [ { "comment_text": "", "digests": { "md5": "f6d6536776d039f0bc98503983ced995", "sha256": "e4762ab89e71991145e2574ba93e6faf08fce881886714d7ee79dc7dc63e2e22" }, "downloads": -1, "filename": "EBNFParser-0.1.1.2.tar.gz", "has_sig": false, "md5_digest": "f6d6536776d039f0bc98503983ced995", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12273, "upload_time": "2017-10-05T19:04:01", "url": "https://files.pythonhosted.org/packages/f5/f5/b4a73d4f21e0a2d548fe33731f0590580cedb755e1f4cad68dd08f27c454/EBNFParser-0.1.1.2.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "a0a1d47216816639f0a7fd2467c79fa4", "sha256": "461fbd15100ac2ded5fedca6af48c752ba910455e73e28b586c3cdc949764a0d" }, "downloads": -1, "filename": "EBNFParser-0.1.2.tar.gz", "has_sig": false, "md5_digest": "a0a1d47216816639f0a7fd2467c79fa4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13335, "upload_time": "2017-10-08T17:35:57", "url": "https://files.pythonhosted.org/packages/3e/bd/ae7f26d17999e772ebdda102fa7bdb2aa2730d03d7218048bee94a0997d5/EBNFParser-0.1.2.tar.gz" } ], "0.1.2.1": [ { "comment_text": "", "digests": { "md5": "6d45ab17b583b0cbe17976777e4fb8be", "sha256": "6697c94502498549a536b9eb7faaedb7e5c312f22301d29a755062f0a57ac189" }, "downloads": -1, "filename": "EBNFParser-0.1.2.1.tar.gz", "has_sig": false, "md5_digest": "6d45ab17b583b0cbe17976777e4fb8be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13285, "upload_time": "2017-10-09T01:15:24", "url": "https://files.pythonhosted.org/packages/47/22/3809139bba11c39dbc296923ba45c23dee4f90eea6625040aa73e2000817/EBNFParser-0.1.2.1.tar.gz" } ], "0.1.2.2": [ { "comment_text": "", "digests": { "md5": "adfa1807579cb6b433c234a72f4d8d03", "sha256": "bea4b04a71b275dcb1270ab817155eccd0ba866236f91d83976dcf6f820ac660" }, "downloads": -1, "filename": "EBNFParser-0.1.2.2.tar.gz", "has_sig": false, "md5_digest": "adfa1807579cb6b433c234a72f4d8d03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15199, "upload_time": "2017-10-09T02:10:10", "url": "https://files.pythonhosted.org/packages/27/66/29e71cf762c2964cf70d9b0d56a0e920307d86ef9d38227aeb557b1993f5/EBNFParser-0.1.2.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "03719048c5f11e5e955597e9a92525ee", "sha256": "641e5a26a42c925a2d0d026eca615a9973aa8289933df3ee1dc444c66347bdde" }, "downloads": -1, "filename": "EBNFParser-0.1.3.tar.gz", "has_sig": false, "md5_digest": "03719048c5f11e5e955597e9a92525ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15100, "upload_time": "2017-10-09T06:33:19", "url": "https://files.pythonhosted.org/packages/bc/44/a4ff690028d46589b0d1dbf99650315df77ef724d06823f41d0c5604c57b/EBNFParser-0.1.3.tar.gz" } ], "0.1.3.1": [ { "comment_text": "", "digests": { "md5": "163e1eaa1c4200113b97981713b513a3", "sha256": "b508c837863dbf054f4e863d64e39fcae6cd21caf4212f1668a84b32a306de85" }, "downloads": -1, "filename": "EBNFParser-0.1.3.1.tar.gz", "has_sig": false, "md5_digest": "163e1eaa1c4200113b97981713b513a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15221, "upload_time": "2017-10-09T07:17:38", "url": "https://files.pythonhosted.org/packages/75/34/00abc4e2be9356c1ff2c4d83d6c62e78e48859162ee1c298f81e2802758b/EBNFParser-0.1.3.1.tar.gz" } ], "0.1.3.4": [ { "comment_text": "", "digests": { "md5": "9fd4204d0f22ce9a47786a43c8545005", "sha256": "7e6c3d999e81c9ebe12f2fa2ba2b49edd2866129344545af889aab1ec6c5f315" }, "downloads": -1, "filename": "EBNFParser-0.1.3.4.tar.gz", "has_sig": false, "md5_digest": "9fd4204d0f22ce9a47786a43c8545005", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15320, "upload_time": "2017-10-12T13:59:15", "url": "https://files.pythonhosted.org/packages/b2/74/3c540addbcdadd1ca0a8c31121e5b34565b3e14ae8dfb8a11879f9f94e61/EBNFParser-0.1.3.4.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "f5ae4f57f21bdb88d8e6f38ac4dc5ad4", "sha256": "0ac87adddda4a7e998ea653b2853cbe36165cd4656c0a01a99ad66fb30fef02a" }, "downloads": -1, "filename": "EBNFParser-0.1.4.tar.gz", "has_sig": false, "md5_digest": "f5ae4f57f21bdb88d8e6f38ac4dc5ad4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14928, "upload_time": "2017-10-12T14:16:53", "url": "https://files.pythonhosted.org/packages/eb/5b/5982178707b3ad0b792ad36f7f5a2887d19cb68ead913794e0821bc75f3f/EBNFParser-0.1.4.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "00979aa24e04370e004728445203b13d", "sha256": "62fa2c8599dcd189b4f6dc3a3c8a36dd6cc40feb66b804cc24b794967c827866" }, "downloads": -1, "filename": "EBNFParser-1.0.tar.gz", "has_sig": false, "md5_digest": "00979aa24e04370e004728445203b13d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26506, "upload_time": "2017-10-23T13:57:47", "url": "https://files.pythonhosted.org/packages/be/8f/20f95952ef50550654dd93e5fa9062a03dc673a7da827af25c4b35611f0e/EBNFParser-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "dd9ccffaa4f860c298497171005ecfe7", "sha256": "72adc7e51da3e4da854cb5963fce83cefe8b4bbbbbc71189201c0d807580ec00" }, "downloads": -1, "filename": "EBNFParser-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "dd9ccffaa4f860c298497171005ecfe7", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21147, "upload_time": "2017-11-10T13:00:53", "url": "https://files.pythonhosted.org/packages/d2/77/26305d750bd4dcdfe8c52776dcb93e282ad79bae463ac4c801c312b91a3a/EBNFParser-1.0.1-py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "9afa90a75ea314a4d2090bcf675c3857", "sha256": "17a911782c3d6eb58ee0208104824d82af19a420e7ef8c9bf563f8d294ad6223" }, "downloads": -1, "filename": "EBNFParser-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "9afa90a75ea314a4d2090bcf675c3857", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21373, "upload_time": "2018-01-01T14:22:11", "url": "https://files.pythonhosted.org/packages/57/50/20eb764377de239e3d1208767c0c735551ddb30e53a53f80fe019ea3e715/EBNFParser-1.0.2-py3-none-any.whl" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "1addbf49583bdb01bde679d9b7c76205", "sha256": "134d691fdb79ab0603889d8b3e858dc73e65c09fe9ebc4cf737e8b94ea0378a6" }, "downloads": -1, "filename": "EBNFParser-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1addbf49583bdb01bde679d9b7c76205", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21176, "upload_time": "2018-03-14T12:52:23", "url": "https://files.pythonhosted.org/packages/0b/c9/4c13e640bf8f09ef4dc2395fda5f308dd6a6b6791a2e3db751cb8d38b1fe/EBNFParser-1.0.3-py3-none-any.whl" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "fdcaf6fd1794c5359dcf68e526abf5d7", "sha256": "93bc18fb2e839707ada83b725add308165907d88f988dd58f9076edc3337e821" }, "downloads": -1, "filename": "EBNFParser-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "fdcaf6fd1794c5359dcf68e526abf5d7", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21168, "upload_time": "2018-03-14T14:50:47", "url": "https://files.pythonhosted.org/packages/59/ae/eb5e143a273713bc239f1c718e61cce35732524a86ceb1ec445e49f41e27/EBNFParser-1.0.4-py3-none-any.whl" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "2f59434143ff61fe856b11dc9a9ac933", "sha256": "ebb0614687919753e7222994b65befca3b8381a9892a61594298c8198087940f" }, "downloads": -1, "filename": "EBNFParser-1.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "2f59434143ff61fe856b11dc9a9ac933", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21205, "upload_time": "2018-03-15T04:50:09", "url": "https://files.pythonhosted.org/packages/b5/42/effba1be1794fa4ace04aee6e25bb0c974b1a3c89ed425e820b8e6a560de/EBNFParser-1.0.5-py3-none-any.whl" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "6bb2fd21893a23cef2792eadb57ca5c9", "sha256": "a7d6bb0dad1388898ea8e05d42a358aa7bc47f03b6af680cf8fb1ce163021231" }, "downloads": -1, "filename": "EBNFParser-1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6bb2fd21893a23cef2792eadb57ca5c9", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 21462, "upload_time": "2018-03-17T06:49:52", "url": "https://files.pythonhosted.org/packages/f6/ee/338470857a18961cf54b0fb65c3be3011ac5c76efdbd623f56a1f4c09ee9/EBNFParser-1.1-py3-none-any.whl" } ], "2.0": [ { "comment_text": "", "digests": { "md5": "346556c4222145b97c962a97bd1a9591", "sha256": "9fa41249d60d77fc3645ba5bc35d81d3695fa14b0113d8d2f0c5c22a446675aa" }, "downloads": -1, "filename": "EBNFParser-2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "346556c4222145b97c962a97bd1a9591", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 25625, "upload_time": "2018-03-19T16:24:45", "url": "https://files.pythonhosted.org/packages/fb/d1/ca3e7d029e0f24e21c99610ed6ed75ebe88391c2751ac6691195e6b54a31/EBNFParser-2.0-py3-none-any.whl" } ], "2.0.9": [ { "comment_text": "", "digests": { "md5": "6d4361bea7eef50713de04cdd6441f1b", "sha256": "c40884c66cc79dc43b7e05070aa2046ec5ee3d55f10c4a02caa3cfdda6824c32" }, "downloads": -1, "filename": "EBNFParser-2.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "6d4361bea7eef50713de04cdd6441f1b", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 26744, "upload_time": "2018-03-20T13:43:42", "url": "https://files.pythonhosted.org/packages/04/fb/024cdd1c6e483b02de206d4f57b42bbd6c56696e28610cc0044a9fb7ab9f/EBNFParser-2.0.9-py3-none-any.whl" } ], "2.0.9.1": [ { "comment_text": "", "digests": { "md5": "208a27e7625d888a085b1a6ffe8eb965", "sha256": "92697ced3b0f798091d85b1e7e463fb037abbddaf1e26ab8c4cd4435e3dbb105" }, "downloads": -1, "filename": "EBNFParser-2.0.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "208a27e7625d888a085b1a6ffe8eb965", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 27483, "upload_time": "2018-03-20T18:44:31", "url": "https://files.pythonhosted.org/packages/77/d5/7b71a6d5ff8b4f0fe2fff0e9ff63246528a48c707ea1341425359e46504e/EBNFParser-2.0.9.1-py3-none-any.whl" } ], "2.1": [ { "comment_text": "", "digests": { "md5": "f168bb9b9a6178cde68083e6a558db7a", "sha256": "4ad728ca40dfd2385f9bfae314881eedea49ffe1ba9bfb238d70cf3c22aab05c" }, "downloads": -1, "filename": "EBNFParser-2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f168bb9b9a6178cde68083e6a558db7a", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 26823, "upload_time": "2018-03-21T05:41:33", "url": "https://files.pythonhosted.org/packages/6f/7d/00486b5ee5193d985918cb64aaeafad1d838dbec56128194c2f3378bbed7/EBNFParser-2.1-py3-none-any.whl" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "08711dc85768f1c6637b339cf6a11488", "sha256": "b1643cb3ff7e3f5867f2959314fb80e042af32b0383764cee18b2215e6654ff1" }, "downloads": -1, "filename": "EBNFParser-2.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "08711dc85768f1c6637b339cf6a11488", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 26927, "upload_time": "2018-03-23T18:52:05", "url": "https://files.pythonhosted.org/packages/af/b4/fcd50f6e54a781bffb3c8fa642037136eccc1f9dd2ebc066584e389e3725/EBNFParser-2.1.1-py3-none-any.whl" } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "e95cd6e8f638f00f186614f3eb6a73f6", "sha256": "5eb66d5afd1f1bdc0c9141d4ea5c1f43072fed56b84fd685122aa9f7c57cd46e" }, "downloads": -1, "filename": "EBNFParser-2.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "e95cd6e8f638f00f186614f3eb6a73f6", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 27019, "upload_time": "2018-04-05T13:01:16", "url": "https://files.pythonhosted.org/packages/58/a0/599a0a23cf3b6d9718c9a5eb394174868907d8a967eea22d18a3c37a0bc5/EBNFParser-2.1.2-py3-none-any.whl" } ], "2.1.3": [ { "comment_text": "", "digests": { "md5": "24a7a3b76261b7ca49269356789619d4", "sha256": "a9c41cbfba10aec2f1f11a529d3e17c0a039f3a272b7cda18ba3d1a0a51491aa" }, "downloads": -1, "filename": "EBNFParser-2.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "24a7a3b76261b7ca49269356789619d4", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 25958, "upload_time": "2018-04-05T14:44:20", "url": "https://files.pythonhosted.org/packages/5a/9b/b874430f35575908b3ea93a85bf59b23939e74bcb97e6e509106cc3e49da/EBNFParser-2.1.3-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "24a7a3b76261b7ca49269356789619d4", "sha256": "a9c41cbfba10aec2f1f11a529d3e17c0a039f3a272b7cda18ba3d1a0a51491aa" }, "downloads": -1, "filename": "EBNFParser-2.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "24a7a3b76261b7ca49269356789619d4", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 25958, "upload_time": "2018-04-05T14:44:20", "url": "https://files.pythonhosted.org/packages/5a/9b/b874430f35575908b3ea93a85bf59b23939e74bcb97e6e509106cc3e49da/EBNFParser-2.1.3-py3-none-any.whl" } ] }