# -*- coding: utf-8 -*-
from setuptools import setup

packages = \
['stupid']

package_data = \
{'': ['*']}

setup_kwargs = {
    'name': 'stupid',
    'version': '1.1.1',
    'description': 'A stupid workaround when using multiple inheritance and __slots__',
    'long_description': '# stupid\n\nA stupid workaround when using multiple inheritance and `__slots__`\n\n# installation\n\n`pip install stupid`\n\n# example\n\n```\nfrom hashlib import sha512\nfrom stupid import StupidData\n\nclass User(StupidData):\n    name: str\n                       \nclass AccessData(StupidData):\n    access_code: sha512\n\nclass ApiPayload(User, AccessData):\n    pass\n\npayload = ApiPayload("root", sha512()) \npayload = ApiPayload(name="root", access_code=sha512())\n```\n\n`__slots__` are autogenerated and works with multiple inheritance as shown above.\nAs `__slots__` are present assigning new attributes is not allowed.\n\n```\n>>> payload = ApiPayload(name="root", access_code=sha512())\n>>> payload.extra = 1\nTraceback (most recent call last):\n  File "<stdin>", line 1, in <module>\nAttributeError: \'ApiPayload\' object has no attribute \'extra\'\n```\n\nIt\'s also a dataclass.\n\n```\n>>> from dataclasses import is_dataclass\n>>> is_dataclass(ApiPayload)\nTrue\n```\n\nisinstance check also works.\n```\n>>> isinstance(payload, User)\nTrue\n>>> isinstance(payload, AccessData)\nTrue\n```\n\n\nissubclass\n```\n>>> from stupid import StupidData\n>>> class A(StupidData): pass\n>>> class B(A): pass\n>>> class C:pass\n>>>\n>>> issubclass(B, A)\nTrue\n>>> issubclass(B, C)\nFalse\n```\n',
    'author': 'masell',
    'author_email': None,
    'maintainer': None,
    'maintainer_email': None,
    'url': 'https://github.com/masell/stupid',
    'packages': packages,
    'package_data': package_data,
    'python_requires': '>=3.7,<4.0',
}


setup(**setup_kwargs)
