diff options
author | Xavier Fernandez <xavier.fernandez@polyconseil.fr> | 2017-03-21 16:23:09 +0100 |
---|---|---|
committer | Xavier Fernandez <xavier.fernandez@polyconseil.fr> | 2017-03-21 16:23:09 +0100 |
commit | 57d47e0d69217c2fa5aec3a072a4972823669db3 (patch) | |
tree | 8123c464b6ddfad007388dca12cb1f9387a5457d /babel | |
parent | 6f0d13b61002893e3ed862b03b2df60733e320b9 (diff) | |
download | babel-57d47e0d69217c2fa5aec3a072a4972823669db3.tar.gz |
Simplify Message.__cmp__
Diffstat (limited to 'babel')
-rw-r--r-- | babel/messages/catalog.py | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/babel/messages/catalog.py b/babel/messages/catalog.py index 018094c..193b72b 100644 --- a/babel/messages/catalog.py +++ b/babel/messages/catalog.py @@ -116,21 +116,13 @@ class Message(object): return '<%s %r (flags: %r)>' % (type(self).__name__, self.id, list(self.flags)) - def __cmp__(self, obj): + def __cmp__(self, other): """Compare Messages, taking into account plural ids""" - def values_to_compare(): - if isinstance(obj, Message): - plural = self.pluralizable - obj_plural = obj.pluralizable - if plural and obj_plural: - return self.id[0], obj.id[0] - elif plural: - return self.id[0], obj.id - elif obj_plural: - return self.id, obj.id[0] - return self.id, obj.id - this, other = values_to_compare() - return cmp(this, other) + def values_to_compare(obj): + if isinstance(obj, Message) and obj.pluralizable: + return obj.id[0] + return obj.id + return cmp(values_to_compare(self), values_to_compare(other)) def __gt__(self, other): return self.__cmp__(other) > 0 |