mirror of https://github.com/python/cpython
Conceptually, roots is a set. Also searching it as a set is a tiny bit faster (#3338)
This commit is contained in:
parent
75b961869a
commit
15ce0bee97
|
@ -193,7 +193,7 @@ _convert = {
|
|||
def total_ordering(cls):
|
||||
"""Class decorator that fills in missing ordering methods"""
|
||||
# Find user-defined comparisons (not those inherited from object).
|
||||
roots = [op for op in _convert if getattr(cls, op, None) is not getattr(object, op, None)]
|
||||
roots = {op for op in _convert if getattr(cls, op, None) is not getattr(object, op, None)}
|
||||
if not roots:
|
||||
raise ValueError('must define at least one ordering operation: < > <= >=')
|
||||
root = max(roots) # prefer __lt__ to __le__ to __gt__ to __ge__
|
||||
|
|
Loading…
Reference in New Issue