diff options
| author | Rapptz <[email protected]> | 2018-09-24 22:50:05 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2018-09-24 22:50:05 -0400 |
| commit | 095f0ec2fc48ff353bd3bee21d0055b99fdc3aa9 (patch) | |
| tree | f53b341df1f7ec40482fdf0758dbeda61b457582 /discord/user.py | |
| parent | Change internal representation of roles in Member and Emoji. (diff) | |
| download | discord.py-095f0ec2fc48ff353bd3bee21d0055b99fdc3aa9.tar.xz discord.py-095f0ec2fc48ff353bd3bee21d0055b99fdc3aa9.zip | |
Optimise some member and user related routines.
* Skip user update if possible
* Drop copy.copy in favour of manual copy
Credit to Hornwitser for these findings.
Diffstat (limited to 'discord/user.py')
| -rw-r--r-- | discord/user.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/discord/user.py b/discord/user.py index bce31d69..07a17369 100644 --- a/discord/user.py +++ b/discord/user.py @@ -91,6 +91,19 @@ class BaseUser(_BaseUser): def __hash__(self): return self.id >> 22 + @classmethod + def _copy(cls, user): + self = cls.__new__(cls) # bypass __init__ + + self.name = user.name + self.id = user.id + self.discriminator = user.discriminator + self.avatar = user.avatar + self.bot = user.bot + self._state = user._state + + return self + @property def avatar_url(self): """Returns a friendly URL version of the avatar the user has. |