revset: optimized sort method in lazyset class

We are taking advantage of the smartset classes sort method when it exists and
converting the set to a baseset otherwise.
This commit is contained in:
Lucas Moscovicz 2014-03-06 09:41:47 -08:00
parent f906635299
commit 04e9ab0a9b

View File

@ -2253,8 +2253,8 @@ class lazyset(object):
return l[x]
def sort(self, reverse=False):
# Basic implementation to be changed in future patches.
self._subset = baseset(self._subset)
if not util.safehasattr(self._subset, 'sort'):
self._subset = baseset(self._subset)
self._subset.sort(reverse=reverse)
def reverse(self):