Begin working on the rewrite.

This commit is contained in:
Rapptz
2016-10-09 01:05:07 -04:00
parent 643950abf8
commit 044b0824e6
11 changed files with 318 additions and 239 deletions

View File

@@ -68,11 +68,12 @@ class Emoji(Hashable):
A list of :class:`Role` that is allowed to use this emoji. If roles is empty,
the emoji is unrestricted.
"""
__slots__ = ["require_colons", "managed", "id", "name", "roles", 'server']
__slots__ = ('require_colons', 'managed', 'id', 'name', 'roles', 'server', '_state')
def __init__(self, **kwargs):
self.server = kwargs.pop('server')
self._from_data(kwargs)
def __init__(self, *, server, state, data):
self.server = server
self._state = state
self._from_data(data)
def _from_data(self, emoji):
self.require_colons = emoji.get('require_colons')
@@ -86,9 +87,10 @@ class Emoji(Hashable):
def _iterator(self):
for attr in self.__slots__:
value = getattr(self, attr, None)
if value is not None:
yield (attr, value)
if attr[0] != '_':
value = getattr(self, attr, None)
if value is not None:
yield (attr, value)
def __iter__(self):
return self._iterator()