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()
|
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
|
# Equality comparisons using the underlying dicts
|
||||||
|
|
||||||
def __eq__(self, other):
|
def __eq__(self, other):
|
||||||
|
|
|
@ -78,6 +78,10 @@ Extension modules
|
||||||
Library
|
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
|
- Bastion.py and rexec.py are disabled. These modules are not safe in
|
||||||
Python 2.2. or 2.3.
|
Python 2.2. or 2.3.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue