{ "info": { "author": "Cameron Simpson", "author_email": "cs@cskk.id.au", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "A Range is an object resembling a set but optimised for contiguous\nranges of int members.\n\n## Function `overlap(span1, span2)`\n\nReturn a list `[start,end]` denoting the overlap of two spans.\n\nExample:\n\n >>> overlap([1,9], [5,13])\n [5, 9]\n\n## Class `Range`\n\nA collection of ints that collates adjacent ints.\n\nThe interface is as for a `set` with additional methods:\n* `spans()`: return an iterable of `Spans`, with `.start`\n included in each `Span` and `.end` just beyond\n\nAdditionally, the update/remove/etc methods have a secondary\ncalling signature: `(start,end)`, which is the same as passing\nin `Range(start,end)` but much more efficient.\n\n## Class `Span`\n\nMRO: `Span`, `builtins.tuple` \nA namedtuple with `.start` and `.end` attributes.\n\n## Function `spans(items)`\n\nReturn an iterable of `Spans` for all contiguous sequences in\n`items`.\n\nExample:\n\n >>> list(spans([1,2,3,7,8,11,5]))\n [1:4, 7:9, 11:12, 5:6]", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/cameron_simpson/css/commits/all", "keywords": "python2,python3", "license": "", "maintainer": "", "maintainer_email": "", "name": "cs.range", "package_url": "https://pypi.org/project/cs.range/", "platform": "", "project_url": "https://pypi.org/project/cs.range/", "project_urls": { "Homepage": "https://bitbucket.org/cameron_simpson/css/commits/all" }, "release_url": "https://pypi.org/project/cs.range/20190102/", "requires_dist": null, "requires_python": "", "summary": "a Range class implementing compact integer ranges with a set-like API, and associated functions", "version": "20190102" }, "last_serial": 4651849, "releases": { "20150116": [ { "comment_text": "", "digests": { "md5": "a001cc37a453ddd192a20874352e2474", "sha256": "5dbcb3b587a6f793ee59c1bbe35b0331e67e62d6991c4e0d9838773330ba63d9" }, "downloads": -1, "filename": "cs.range-20150116.tar.gz", "has_sig": false, "md5_digest": "a001cc37a453ddd192a20874352e2474", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5226, "upload_time": "2015-01-18T06:02:36", "url": "https://files.pythonhosted.org/packages/e0/a5/081332ed0f9839ecba92ff0935409f4b6a2586d077a013af1acaf2f7a8df/cs.range-20150116.tar.gz" } ], "20160828": [ { "comment_text": "", "digests": { "md5": "3d6789e6a27a2350a7e254da291e0c04", "sha256": "976cca0ed881765eee3026989468de407a7be30ed6f4d89f795e078bb9242589" }, "downloads": -1, "filename": "cs.range-20160828.tar.gz", "has_sig": false, "md5_digest": "3d6789e6a27a2350a7e254da291e0c04", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5698, "upload_time": "2016-08-28T06:10:13", "url": "https://files.pythonhosted.org/packages/5e/82/ab90e5307a18f6eed7baaa056bcf6547569332581251c2730422f7f318e1/cs.range-20160828.tar.gz" } ], "20171231": [ { "comment_text": "", "digests": { "md5": "80d582bfcb54f290166736a0317ed6e9", "sha256": "915224824de47c3721e6f5f2533b754a4bd1631ddd6587e86608ef75a2347b4b" }, "downloads": -1, "filename": "cs.range-20171231.tar.gz", "has_sig": false, "md5_digest": "80d582bfcb54f290166736a0317ed6e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5429, "upload_time": "2017-12-30T23:26:39", "url": "https://files.pythonhosted.org/packages/54/c5/5c63cd1dc2c6afe9be0369f05c9ff0b70b65f7953e9cfca19d01a8e322e7/cs.range-20171231.tar.gz" } ], "20190102": [ { "comment_text": "", "digests": { "md5": "9437c4ac84279be5d948ceabbdc4343c", "sha256": "c72cd7f78aa889a758f8a50984300d5760dca54485561ebb78be0f818aba10d3" }, "downloads": -1, "filename": "cs.range-20190102.tar.gz", "has_sig": false, "md5_digest": "9437c4ac84279be5d948ceabbdc4343c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5948, "upload_time": "2019-01-02T06:23:09", "url": "https://files.pythonhosted.org/packages/53/d7/dd71c9ca82a154ac013691276ac0066982854594df01d8fd87c89afca5cf/cs.range-20190102.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9437c4ac84279be5d948ceabbdc4343c", "sha256": "c72cd7f78aa889a758f8a50984300d5760dca54485561ebb78be0f818aba10d3" }, "downloads": -1, "filename": "cs.range-20190102.tar.gz", "has_sig": false, "md5_digest": "9437c4ac84279be5d948ceabbdc4343c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5948, "upload_time": "2019-01-02T06:23:09", "url": "https://files.pythonhosted.org/packages/53/d7/dd71c9ca82a154ac013691276ac0066982854594df01d8fd87c89afca5cf/cs.range-20190102.tar.gz" } ] }