{ "info": { "author": "Damla Altun", "author_email": "initalize.damla@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python :: 3.7" ], "description": "******************\nDataclassInspector\n******************\n\nSee the generated code of dataclasses with reassembling bytecode, formatting static templates and tons of magic.\n\nInspector\n----------\nInspector is a class for inspecting dataclasses. You can initalize it with the dataclass.\n\n.. code-block:: python\n\n >>> from DataclassInspector.inspector import Inspector\n >>> @dataclass\n ... class Item:\n ... name: str\n ... value: int = 34\n ... \n >>> inspected = Inspector(Item)\n\nThen open a file and write `inspected.code` into it (the example output is like below).\n\n.. code-block:: python\n \n from dataclasses import Field, _MISSING_TYPE, _DataclassParams\n\n\n class Item:\n __dataclass_fields__ = {\n \"name\": \"Field(name='name', type=str, default=_MISSING_TYPE, default_factory=_MISSING_TYPE, init=True, repr=True, hash=None, compare=True, metadata={}, _field_type=_FIELD)\",\n \"value\": \"Field(name='value', type=int, default=34, default_factory=_MISSING_TYPE, init=True, repr=True, hash=None, compare=True, metadata={}, _field_type=_FIELD)\",\n }\n __dataclass_params__ = _DataclassParams(\n init=True,\n repr=True,\n eq=True,\n order=False,\n unsafe_hash=False,\n frozen=False,\n )\n name: str\n value: int = 34\n\n def __eq__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) == (other.name, other.value)\n else:\n return NotImplemented\n\n __hash__ = None\n\n def __init__(self, name: str, value: int = 34) -> None:\n self.name = name\n self.value = value\n\n def __repr__(self):\n return (\n self.__class__.__qualname__\n + f\"\"\"(name={(self.name)!r}, value={(self.value)!r})\"\"\"\n )\n \nIt also provides auto-generation of other custom functions;\n\n.. code-block:: python\n\n >>> @dataclass(order=True)\n ... class NewItem(Item):\n ... name: int\n ... value: str\n ... def convert(self):\n ... self.name = str(name)\n ... \n >>> inspected = Inspector(NewItem)\n\nThe output is;\n\n.. code-block:: python\n\n from dataclasses import Field, _MISSING_TYPE, _DataclassParams\n\n class NewItem(Item):\n __dataclass_fields__ = {\n \"name\": \"Field(name='name', type=int, default=_MISSING_TYPE, default_factory=_MISSING_TYPE, init=True, repr=True, hash=None, compare=True, metadata={}, _field_type=_FIELD)\",\n \"value\": \"Field(name='value', type=str, default=34, default_factory=_MISSING_TYPE, init=True, repr=True, hash=None, compare=True, metadata={}, _field_type=_FIELD)\",\n }\n __dataclass_params__ = _DataclassParams(\n init=True,\n repr=True,\n eq=True,\n order=True,\n unsafe_hash=False,\n frozen=False,\n )\n name: int\n value: str\n\n def __eq__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) == (other.name, other.value)\n else:\n return NotImplemented\n\n def __ge__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) >= (other.name, other.value)\n else:\n return NotImplemented\n\n def __gt__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) > (other.name, other.value)\n else:\n return NotImplemented\n\n __hash__ = None\n\n def __init__(self, name: int, value: str = 34) -> None:\n self.name = name\n self.value = value\n\n def __le__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) <= (other.name, other.value)\n else:\n return NotImplemented\n\n def __lt__(self, other):\n if other.__class__ is self.__class__:\n return (self.name, self.value) < (other.name, other.value)\n else:\n return NotImplemented\n\n def __repr__(self):\n return (\n self.__class__.__qualname__\n + f\"\"\"(name={(self.name)!r}, value={(self.value)!r})\"\"\"\n )\n\n def convert(self):\n self.name = str(name)", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/DamlaAltun/DataclassInspector", "keywords": "", "license": "MIT", "maintainer": "Damla Altun", "maintainer_email": "initalize.damla@gmail.com", "name": "DataclassInspector", "package_url": "https://pypi.org/project/DataclassInspector/", "platform": "", "project_url": "https://pypi.org/project/DataclassInspector/", "project_urls": { "Homepage": "https://github.com/DamlaAltun/DataclassInspector" }, "release_url": "https://pypi.org/project/DataclassInspector/1.0.1/", "requires_dist": null, "requires_python": ">=3.7", "summary": "See the generated code of dataclasses with reassembling bytecode, formatting static templates and tons of magic.", "version": "1.0.1" }, "last_serial": 4387407, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "ebcb48672b1d61dd5ffca407afa71d92", "sha256": "e6c2578c45a495d71b6c9f4fc7a94507f8173f942c5abeacbc0c5081dc83ea16" }, "downloads": -1, "filename": "DataclassInspector-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ebcb48672b1d61dd5ffca407afa71d92", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 3486, "upload_time": "2018-10-17T19:08:17", "url": "https://files.pythonhosted.org/packages/e3/ff/9e6463828a76ffe30ed46bf41c51a54eebbb9c18a3bbad1423a1f45fc50c/DataclassInspector-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "d7c7f32c82a4c013e5326ceae3396601", "sha256": "70b3a904709a4af4886103da2a966dab1a43ee33533d57ae1e73a9b4388f4639" }, "downloads": -1, "filename": "DataclassInspector-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d7c7f32c82a4c013e5326ceae3396601", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 3537, "upload_time": "2018-10-17T19:13:40", "url": "https://files.pythonhosted.org/packages/e5/e1/86b6dfcb9dd602a37580cee96a27f40ca1b866dbff87be6d054a14611e02/DataclassInspector-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d7c7f32c82a4c013e5326ceae3396601", "sha256": "70b3a904709a4af4886103da2a966dab1a43ee33533d57ae1e73a9b4388f4639" }, "downloads": -1, "filename": "DataclassInspector-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d7c7f32c82a4c013e5326ceae3396601", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 3537, "upload_time": "2018-10-17T19:13:40", "url": "https://files.pythonhosted.org/packages/e5/e1/86b6dfcb9dd602a37580cee96a27f40ca1b866dbff87be6d054a14611e02/DataclassInspector-1.0.1.tar.gz" } ] }