{ "info": { "author": "Joel Verhagen", "author_email": "joel.verhagen@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "EBCompiler\n==========\n\nExistential Boolean Compiler\n----------------------------\n\nCompiles simple statements of existence and boolean truth into valid SQL (i.e. for check constraints).\n\nExample\n-------\n\n**Input:**\n\n (!is_dled && file_size!?) || (is_dled && file_size?)\n\n**Output:**\n\n (is_dled IS FALSE AND file_size IS NULL) OR (is_dled IS TRUE AND file_size IS NOT NULL)\n\nSyntax\n------\n\nA name (i.e. variable or column name) can have a variety of unary operators applied to it. A name can only start with a letter but can otherwise contain letters, numbers and underscores.\n\n- no operator is interpreted `IS TRUE`\n- `!` becomes `IS FALSE`\n- `?` becomes `IS NOT NULL`\n- `!?` becomes `IS NULL`\n\nOther than that, you may use logical binary operators (`&&`, `||`) and parenthesis (`(`, `)`).\n\nIf your input doesn't follow these rules, there is no guarantee valid SQL will be generated.\n\nWhy?\n----\n\nBecause I wanted to play around with writing a simple lexer. Also, it allows for writing SQL check constraints more easily.\n\n**Q:** Wait, that's really not that sophisticed is it? \n**A:** Nope. Pretty trivial.\n\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/knapcode/ebcompiler", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "EBCompiler", "package_url": "https://pypi.org/project/EBCompiler/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/EBCompiler/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://bitbucket.org/knapcode/ebcompiler" }, "release_url": "https://pypi.org/project/EBCompiler/0.1.3/", "requires_dist": null, "requires_python": null, "summary": "Compiles simple statements of existence and boolean truth into valid SQL (i.e. for check constraints).", "version": "0.1.3" }, "last_serial": 784175, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "0811721cc4056d80c5bc6584b9de01cc", "sha256": "eda383e2c3e0c945374deec8c8322f46eaad965b0887b2eb71843fd5a987f165" }, "downloads": -1, "filename": "EBCompiler-0.1.1.tar.gz", "has_sig": false, "md5_digest": "0811721cc4056d80c5bc6584b9de01cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3654, "upload_time": "2012-10-19T20:51:36", "url": "https://files.pythonhosted.org/packages/bb/ad/8d13216037ce5ec1f00d023eb2c58907ebd6d2b6098bc0d61e61db4766e9/EBCompiler-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "d7e7db2188aa87105bb43727e6b9d5a4", "sha256": "ecb2f7f994e685e8882e90469c669d3e168a15b11d650200cf16730de13d78e8" }, "downloads": -1, "filename": "EBCompiler-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d7e7db2188aa87105bb43727e6b9d5a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3703, "upload_time": "2012-10-19T22:13:12", "url": "https://files.pythonhosted.org/packages/78/74/3c848425e1b32b327e3541f96fe2cc24b464462195005e4d7049df27178b/EBCompiler-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "aa4bae57228b591ec4b25e19a15c6eaf", "sha256": "0fd2ae249051706cf93a2e76e5cb288a110135f181665207251d101ba666dc2e" }, "downloads": -1, "filename": "EBCompiler-0.1.3.tar.gz", "has_sig": false, "md5_digest": "aa4bae57228b591ec4b25e19a15c6eaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3728, "upload_time": "2012-10-21T00:12:41", "url": "https://files.pythonhosted.org/packages/80/99/48b836cb2e687aec1289c5f8c8a6e671be3631b8b91cedb47390871b1da0/EBCompiler-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aa4bae57228b591ec4b25e19a15c6eaf", "sha256": "0fd2ae249051706cf93a2e76e5cb288a110135f181665207251d101ba666dc2e" }, "downloads": -1, "filename": "EBCompiler-0.1.3.tar.gz", "has_sig": false, "md5_digest": "aa4bae57228b591ec4b25e19a15c6eaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3728, "upload_time": "2012-10-21T00:12:41", "url": "https://files.pythonhosted.org/packages/80/99/48b836cb2e687aec1289c5f8c8a6e671be3631b8b91cedb47390871b1da0/EBCompiler-0.1.3.tar.gz" } ] }