{ "info": { "author": "Ralph Broenink", "author_email": "ralph@ralphbroenink.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "===========\nDestructify\n===========\n.. image:: https://img.shields.io/travis/com/ralphje/destructify.svg\n :target: https://travis-ci.com/ralphje/destructify?branch=master\n\n.. image:: https://img.shields.io/codecov/c/github/ralphje/destructify.svg?style=flat\n :target: http://codecov.io/github/ralphje/destructify?branch=master\n\n.. image:: https://img.shields.io/pypi/v/destructify.svg\n :target: https://pypi.python.org/pypi/destructify\n\n.. image:: https://img.shields.io/readthedocs/destructify.svg\n :target: https://readthedocs.org/projects/destructify/\n\nDestructify is a Pythonic and pure-Python 3 method to express binary data, allowing you to read and write binary\nstructures. You simply specify a structure by creating a class as follows:\n\n.. code-block:: python\n\n class ExampleStructure(destructify.Structure):\n some_number = destructify.IntegerField(default=0x13, length=4, byte_order='little', signed=True)\n length = destructify.IntegerField(length=1)\n data = destructify.FixedLengthField(length='length')\n\nNow you can parse your own binary data:\n\n.. code-block:: python\n\n example = ExampleStructure.from_bytes(b\"\\x01\\x02\\x03\\x04\\x0BHello world\")\n print(example.data) # b'Hello world'\n\nOr write your own data:\n\n.. code-block:: python\n\n example2 = ExampleStructure(data=b'How are you doing?')\n print(bytes(example2)) # b'\\x13\\x00\\x00\\x00\\x12How are you doing?'\n\nDocumentation\n-------------\nDocumentation for Destrucify is available at https://destructify.readthedocs.io/en/latest/\nor in the ``docs/`` directory.\n\nInstallation\n------------\nDestructify is available at the Python Package Index::\n\n pip install destructify\n\nContributing\n------------\nSince Destructify is an open source project, contributions of many forms are welcomed. Examples of possible\ncontributions include:\n\n* Bug patches\n* New features\n* Documentation improvements\n* Bug reports and reviews of pull requests\n\nWe use GitHub to keep track of issues and pull requests. You can always\n`submit an issue `_ when you encounter something out of the ordinary.", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/ralphje/destructify/tarball/v0.2.0", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ralphje/destructify", "keywords": "struct,bytes", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "destructify", "package_url": "https://pypi.org/project/destructify/", "platform": "", "project_url": "https://pypi.org/project/destructify/", "project_urls": { "Download": "https://github.com/ralphje/destructify/tarball/v0.2.0", "Homepage": "https://github.com/ralphje/destructify" }, "release_url": "https://pypi.org/project/destructify/0.2.0/", "requires_dist": null, "requires_python": "", "summary": "A Pythonic way to define, parse and modify binary structures", "version": "0.2.0" }, "last_serial": 4975738, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "f57275c24b47dd0c2d8a75c55ee56df7", "sha256": "535be721ca45e48fd127751d83069b1bd5de224ae059a4b53d3b486b1b86dfa5" }, "downloads": -1, "filename": "destructify-0.0.1.tar.gz", "has_sig": false, "md5_digest": "f57275c24b47dd0c2d8a75c55ee56df7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7446, "upload_time": "2018-04-07T10:48:26", "url": "https://files.pythonhosted.org/packages/5e/84/40cda2235617d338a499e26ebc9f72e9684df00728a14475b869ad1d3464/destructify-0.0.1.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "1223504572ece1281ca06e8c3c664291", "sha256": "e44e59e82c2910467ca64c484860a94e3231adae73ccdf9db0b68fe605d08bda" }, "downloads": -1, "filename": "destructify-0.1.0.tar.gz", "has_sig": false, "md5_digest": "1223504572ece1281ca06e8c3c664291", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13298, "upload_time": "2019-02-17T15:18:01", "url": "https://files.pythonhosted.org/packages/71/5a/743f6282126f7aa85b8c0861fe083f5aa969e528bebd0fe96a8051936105/destructify-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c625aceacef92cfa4c1df45ebea8a371", "sha256": "16d0bbccac91f50c9ff8b4ef2273e618883897ca1bc12756f92a0e808f51cdd4" }, "downloads": -1, "filename": "destructify-0.2.0.tar.gz", "has_sig": false, "md5_digest": "c625aceacef92cfa4c1df45ebea8a371", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26665, "upload_time": "2019-03-23T13:14:57", "url": "https://files.pythonhosted.org/packages/bb/6d/b2b701217c1a43b7c3aba1bc8225abb9a5d3ac723af9a037357305723208/destructify-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c625aceacef92cfa4c1df45ebea8a371", "sha256": "16d0bbccac91f50c9ff8b4ef2273e618883897ca1bc12756f92a0e808f51cdd4" }, "downloads": -1, "filename": "destructify-0.2.0.tar.gz", "has_sig": false, "md5_digest": "c625aceacef92cfa4c1df45ebea8a371", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26665, "upload_time": "2019-03-23T13:14:57", "url": "https://files.pythonhosted.org/packages/bb/6d/b2b701217c1a43b7c3aba1bc8225abb9a5d3ac723af9a037357305723208/destructify-0.2.0.tar.gz" } ] }