Redesign asset retrieval in the library.

Most assets now return a new class named `Asset`. This allows for the
assets to be consistently saved via a `save` method instead of special
casing for `Attachment`.

`AppInfo` is no longer a namedtuple it is a fully documented dataclass,
as well as having the state attached to it.

Fixes #1997
This commit is contained in:
NCPlayz
2019-04-06 19:12:50 -04:00
committed by Rapptz
parent dea3ba5eb7
commit be227ebcf0
16 changed files with 332 additions and 155 deletions
+9
View File
@@ -40,6 +40,9 @@ Client
.. autoclass:: AutoShardedClient
:members:
.. autoclass:: AppInfo
:members:
Voice
------
@@ -1918,6 +1921,12 @@ Attachment
.. autoclass:: Attachment()
:members:
Asset
~~~~~
.. autoclass:: Asset()
:members:
Message
~~~~~~~