[PATCH 2 of 3] revset: use spanset.isdescending in multiple simple places
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Thu Sep 18 18:26:25 UTC 2014
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1410935823 25200
# Tue Sep 16 23:37:03 2014 -0700
# Node ID 862bc6d9cdea929b80bf3635f8b66d7b39ebd6ad
# Parent b885794378e462baab1967d19106615d0acf6689
revset: use spanset.isdescending in multiple simple places
We call the method directly instead of duplicating checks.
Benchmarks show no performances harmed in the process.
diff --git a/mercurial/revset.py b/mercurial/revset.py
--- a/mercurial/revset.py
+++ b/mercurial/revset.py
@@ -2745,19 +2745,19 @@ class spanset(_orderedsetmixin):
else:
self._end = len(repo)
self._hiddenrevs = repo.changelog.filteredrevs
def ascending(self):
- if self._start > self._end:
+ if not self.isascending():
self.reverse()
def descending(self):
- if self._start < self._end:
+ if not self.isdescending():
self.reverse()
def __iter__(self):
- if self._start <= self._end:
+ if self.isascending():
iterrange = xrange(self._start, self._end)
else:
iterrange = xrange(self._start, self._end, -1)
if self._hiddenrevs:
@@ -2824,11 +2824,11 @@ class spanset(_orderedsetmixin):
if bool(reverse) != (self._start > self._end):
self.reverse()
def reverse(self):
# Just switch the _start and _end parameters
- if self._start <= self._end:
+ if self.isascending():
self._start, self._end = self._end - 1, self._start - 1
else:
self._start, self._end = self._end + 1, self._start + 1
def set(self):
More information about the Mercurial-devel
mailing list