Explicitly raise an exception in __cmp__ -- this clarifies that cmp()
is not supported on sets. (Unfortunately, sorting a list of sets may still return random results because it uses < exclusively, but for sets that inly implements a partial ordering. Oh well.)
This commit is contained in:
parent
8bb90a59a6
commit
50e92235e7
|
@ -102,6 +102,11 @@ class BaseSet(object):
|
|||
"""
|
||||
return self._data.iterkeys()
|
||||
|
||||
# Three-way comparison is not supported
|
||||
|
||||
def __cmp__(self, other):
|
||||
raise TypeError, "can't compare sets using cmp()"
|
||||
|
||||
# Equality comparisons using the underlying dicts
|
||||
|
||||
def __eq__(self, other):
|
||||
|
|
|
@ -78,6 +78,10 @@ Extension modules
|
|||
Library
|
||||
-------
|
||||
|
||||
- The sets module now raises TypeError in __cmp__, to clarify that
|
||||
sets are not intended to be three-way-compared; the comparison
|
||||
operators are overloaded as subset/superset tests.
|
||||
|
||||
- Bastion.py and rexec.py are disabled. These modules are not safe in
|
||||
Python 2.2. or 2.3.
|
||||
|
||||
|
|
Loading…
Reference in New Issue