{ "info": { "author": "Tomer Filiba", "author_email": "tomerfiliba@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.5", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.0", "Programming Language :: Python :: 3.1", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3" ], "description": "srcgen\n======\n\nSrcgen is a **semantic** code generation framework. Being semantic means that the code generator and the\ngenerated code bear similar structure, as well ; for instance, the body of an ``if`` statement is indented both in\nthe generating and generated code. Here's a short example::\n\n >>> from srcgen.python import PythonModule\n >>>\n >>> m = PythonModule(\"foo\")\n >>> m.import_(\"sys\")\n >>> m.import_(\"os\")\n >>> m.sep()\n >>> m.stmt(\"x = 5\")\n >>> with m.if_(\"x > 8\"):\n ... m.stmt(\"print 'oh no'\")\n ...\n >>> with m.else_():\n ... m.stmt(\"print 'oh yes'\")\n ...\n >>> print m\n import sys\n import os\n \n x = 5\n if x > 8:\n print 'oh no'\n else:\n print 'oh yes'\n\nYou can nest deeper, of course, as well as extract common pieces of code into functions:: \n\n m = PythonModule(\"foo\")\n with m.class_(\"MyClass\"):\n with m.method(\"__init__\", \"\n\n\n\n\nLanguages\n=========\nAt the moment Srcgen supports:\n\n* C\n* Python\n* Cython\n* HTML/XML\n\nMore languages will be added per public demand (you're welcome to join the effort!)", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://srcgen.readthedocs.org/", "keywords": "source,code,generation,programmatic,semantic", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "srcgen", "package_url": "https://pypi.org/project/srcgen/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/srcgen/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://srcgen.readthedocs.org/" }, "release_url": "https://pypi.org/project/srcgen/1.1.0/", "requires_dist": null, "requires_python": null, "summary": "srcgen: The semantic source code generation framework", "version": "1.1.0" }, "last_serial": 817270, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "0f9e12d831216faa96296fce1982450d", "sha256": "38ab0170b25762bd0d7bf93ab87cf4e80686bdab4050d3929b387b520e281981" }, "downloads": -1, "filename": "srcgen-1.0.0.tar.gz", "has_sig": false, "md5_digest": "0f9e12d831216faa96296fce1982450d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9371, "upload_time": "2013-05-27T12:56:08", "url": "https://files.pythonhosted.org/packages/2c/32/98245a76bce7c5d63458159d76b01a4573f994c825c4585bf305145c747d/srcgen-1.0.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "b5538bdf0d2e1b45ad28b10801f1fdf8", "sha256": "9e94232984355c44fdb9d99223bcaa0dde7f4dc73dd841898e9a5c2d6ec3c404" }, "downloads": -1, "filename": "srcgen-1.0.0.win32.exe", "has_sig": false, "md5_digest": "b5538bdf0d2e1b45ad28b10801f1fdf8", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 207221, "upload_time": "2013-05-27T12:56:12", "url": "https://files.pythonhosted.org/packages/15/17/6357411d63dcd0d0003cc5e2bb202f4c036718b969e94fc62ea0f692514e/srcgen-1.0.0.win32.exe" }, { "comment_text": "", "digests": { "md5": "b02104b44c60ef211cb0628cc9de6434", "sha256": "e3e374aa80dfda297c22617f881b65eedc5ba682e7afce79bc6408f313b7be62" }, "downloads": -1, "filename": "srcgen-1.0.0.zip", "has_sig": false, "md5_digest": "b02104b44c60ef211cb0628cc9de6434", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12727, "upload_time": "2013-05-27T12:56:04", "url": "https://files.pythonhosted.org/packages/b0/ac/5a172292c5b328d97b2e3dc036f93dd1de91c802deaa0d45cb3e5e8e58bb/srcgen-1.0.0.zip" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "470596d12f7d297e3687b1adaa35d08e", "sha256": "bccf614dbcbbd735e15cf189bee519a3219350a955b10ca2f2e5383d6a33918c" }, "downloads": -1, "filename": "srcgen-1.1.0.tar.gz", "has_sig": false, "md5_digest": "470596d12f7d297e3687b1adaa35d08e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10272, "upload_time": "2013-07-17T11:50:30", "url": "https://files.pythonhosted.org/packages/da/6e/c17bee1caeeaf32bb6ee0f148de1f379b50a165e5314bbf8a7e26c2c9b41/srcgen-1.1.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "57f31eac77ec774a78b7868c51684c60", "sha256": "1d7fd88058145fd0f0fd4fd4e53f0537ec28d142dd4b132d6531f39c1923ada7" }, "downloads": -1, "filename": "srcgen-1.1.0.win32.exe", "has_sig": false, "md5_digest": "57f31eac77ec774a78b7868c51684c60", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 208682, "upload_time": "2013-07-17T11:50:46", "url": "https://files.pythonhosted.org/packages/68/b5/e4d565e57d2ae4616939fd8582907959acb6472e81d814b4f43fc9bb330c/srcgen-1.1.0.win32.exe" }, { "comment_text": "", "digests": { "md5": "61319f331033282643e76458acf2f708", "sha256": "a4137c1b5c63df186c08774a08549c7658dea43e50457c32869c5de03e91b688" }, "downloads": -1, "filename": "srcgen-1.1.0.zip", "has_sig": false, "md5_digest": "61319f331033282643e76458acf2f708", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14197, "upload_time": "2013-07-17T11:50:18", "url": "https://files.pythonhosted.org/packages/c1/6d/cbb58f9c01b7b01b6a5745a433120efbe8a9cb111dc3db3be898477d419d/srcgen-1.1.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "470596d12f7d297e3687b1adaa35d08e", "sha256": "bccf614dbcbbd735e15cf189bee519a3219350a955b10ca2f2e5383d6a33918c" }, "downloads": -1, "filename": "srcgen-1.1.0.tar.gz", "has_sig": false, "md5_digest": "470596d12f7d297e3687b1adaa35d08e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10272, "upload_time": "2013-07-17T11:50:30", "url": "https://files.pythonhosted.org/packages/da/6e/c17bee1caeeaf32bb6ee0f148de1f379b50a165e5314bbf8a7e26c2c9b41/srcgen-1.1.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "57f31eac77ec774a78b7868c51684c60", "sha256": "1d7fd88058145fd0f0fd4fd4e53f0537ec28d142dd4b132d6531f39c1923ada7" }, "downloads": -1, "filename": "srcgen-1.1.0.win32.exe", "has_sig": false, "md5_digest": "57f31eac77ec774a78b7868c51684c60", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 208682, "upload_time": "2013-07-17T11:50:46", "url": "https://files.pythonhosted.org/packages/68/b5/e4d565e57d2ae4616939fd8582907959acb6472e81d814b4f43fc9bb330c/srcgen-1.1.0.win32.exe" }, { "comment_text": "", "digests": { "md5": "61319f331033282643e76458acf2f708", "sha256": "a4137c1b5c63df186c08774a08549c7658dea43e50457c32869c5de03e91b688" }, "downloads": -1, "filename": "srcgen-1.1.0.zip", "has_sig": false, "md5_digest": "61319f331033282643e76458acf2f708", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14197, "upload_time": "2013-07-17T11:50:18", "url": "https://files.pythonhosted.org/packages/c1/6d/cbb58f9c01b7b01b6a5745a433120efbe8a9cb111dc3db3be898477d419d/srcgen-1.1.0.zip" } ] }