All data classes now support !=, == and str(obj).
This commit is contained in:
		@@ -28,12 +28,25 @@ from . import utils
 | 
			
		||||
from .permissions import Permissions
 | 
			
		||||
from .enums import ChannelType
 | 
			
		||||
from collections import namedtuple
 | 
			
		||||
from .mixins import EqualityComparable
 | 
			
		||||
 | 
			
		||||
Overwrites = namedtuple('Overwrites', 'id allow deny type')
 | 
			
		||||
 | 
			
		||||
class Channel:
 | 
			
		||||
class Channel(EqualityComparable):
 | 
			
		||||
    """Represents a Discord server channel.
 | 
			
		||||
 | 
			
		||||
    Supported Operations:
 | 
			
		||||
 | 
			
		||||
    +-----------+---------------------------------------+
 | 
			
		||||
    | Operation |              Description              |
 | 
			
		||||
    +===========+=======================================+
 | 
			
		||||
    | x == y    | Checks if two channels are equal.     |
 | 
			
		||||
    +-----------+---------------------------------------+
 | 
			
		||||
    | x != y    | Checks if two channels are not equal. |
 | 
			
		||||
    +-----------+---------------------------------------+
 | 
			
		||||
    | str(x)    | Returns the channel's name.           |
 | 
			
		||||
    +-----------+---------------------------------------+
 | 
			
		||||
 | 
			
		||||
    Attributes
 | 
			
		||||
    -----------
 | 
			
		||||
    name : str
 | 
			
		||||
@@ -63,6 +76,9 @@ class Channel:
 | 
			
		||||
        self.update(**kwargs)
 | 
			
		||||
        self.voice_members = []
 | 
			
		||||
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return self.name
 | 
			
		||||
 | 
			
		||||
    def update(self, **kwargs):
 | 
			
		||||
        self.name = kwargs.get('name')
 | 
			
		||||
        self.server = kwargs.get('server')
 | 
			
		||||
@@ -179,9 +195,21 @@ class Channel:
 | 
			
		||||
 | 
			
		||||
        return base
 | 
			
		||||
 | 
			
		||||
class PrivateChannel:
 | 
			
		||||
class PrivateChannel(EqualityComparable):
 | 
			
		||||
    """Represents a Discord private channel.
 | 
			
		||||
 | 
			
		||||
    Supported Operations:
 | 
			
		||||
 | 
			
		||||
    +-----------+-------------------------------------------------+
 | 
			
		||||
    | Operation |                   Description                   |
 | 
			
		||||
    +===========+=================================================+
 | 
			
		||||
    | x == y    | Checks if two channels are equal.               |
 | 
			
		||||
    +-----------+-------------------------------------------------+
 | 
			
		||||
    | x != y    | Checks if two channels are not equal.           |
 | 
			
		||||
    +-----------+-------------------------------------------------+
 | 
			
		||||
    | str(x)    | Returns the string "Direct Message with <User>" |
 | 
			
		||||
    +-----------+-------------------------------------------------+
 | 
			
		||||
 | 
			
		||||
    Attributes
 | 
			
		||||
    ----------
 | 
			
		||||
    user : :class:`User`
 | 
			
		||||
@@ -197,6 +225,9 @@ class PrivateChannel:
 | 
			
		||||
        self.id = id
 | 
			
		||||
        self.is_private = True
 | 
			
		||||
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return 'Direct Message with {0.name}'.format(self.user)
 | 
			
		||||
 | 
			
		||||
    def permissions_for(user):
 | 
			
		||||
        """Handles permission resolution for a :class:`User`.
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user