Skip to content

Commit d023e6b

Browse files
author
Jonathan Piron
committed
Implement __eq__ and __hash__ methods
To ease lists and sets manipulations.
1 parent 31bca2f commit d023e6b

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

gitlab/base.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,16 @@ def __repr__(self):
9696
else:
9797
return '<%s>' % self.__class__.__name__
9898

99+
def __eq__(self, other):
100+
if self.get_id() and other.get_id():
101+
return self.get_id() == other.get_id()
102+
return super().__eq__(self, other)
103+
104+
def __hash__(self):
105+
if not self.get_id():
106+
return super().__hash__()
107+
return hash(self.get_id())
108+
99109
def _create_managers(self):
100110
managers = getattr(self, '_managers', None)
101111
if managers is None:

0 commit comments

Comments
 (0)