comparison mercurial/smartset.py @ 38783:e7aa113b14f7

global: use pycompat.xrange() On Python 3, our module importer automatically rewrites xrange() to pycompat.xrange(). We want to move away from the custom importer on Python 3. This commit converts all instances of xrange() to use pycompat.xrange(). Differential Revision: https://phab.mercurial-scm.org/D4032
author Gregory Szorc <gregory.szorc@gmail.com>
date Wed, 01 Aug 2018 13:00:45 -0700
parents a3130208db1c
children 6309128ff61f
comparison
equal deleted inserted replaced
38782:7eba8f83129b 38783:e7aa113b14f7
150 def _slice(self, start, stop): 150 def _slice(self, start, stop):
151 # sub classes may override this. start and stop must not be negative, 151 # sub classes may override this. start and stop must not be negative,
152 # but start > stop is allowed, which should be an empty set. 152 # but start > stop is allowed, which should be an empty set.
153 ys = [] 153 ys = []
154 it = iter(self) 154 it = iter(self)
155 for x in xrange(start): 155 for x in pycompat.xrange(start):
156 y = next(it, None) 156 y = next(it, None)
157 if y is None: 157 if y is None:
158 break 158 break
159 for x in xrange(stop - start): 159 for x in pycompat.xrange(stop - start):
160 y = next(it, None) 160 y = next(it, None)
161 if y is None: 161 if y is None:
162 break 162 break
163 ys.append(y) 163 ys.append(y)
164 return baseset(ys, datarepr=('slice=%d:%d %r', start, stop, self)) 164 return baseset(ys, datarepr=('slice=%d:%d %r', start, stop, self))
1003 return self.fastasc() 1003 return self.fastasc()
1004 else: 1004 else:
1005 return self.fastdesc() 1005 return self.fastdesc()
1006 1006
1007 def fastasc(self): 1007 def fastasc(self):
1008 iterrange = xrange(self._start, self._end) 1008 iterrange = pycompat.xrange(self._start, self._end)
1009 if self._hiddenrevs: 1009 if self._hiddenrevs:
1010 return self._iterfilter(iterrange) 1010 return self._iterfilter(iterrange)
1011 return iter(iterrange) 1011 return iter(iterrange)
1012 1012
1013 def fastdesc(self): 1013 def fastdesc(self):
1014 iterrange = xrange(self._end - 1, self._start - 1, -1) 1014 iterrange = pycompat.xrange(self._end - 1, self._start - 1, -1)
1015 if self._hiddenrevs: 1015 if self._hiddenrevs:
1016 return self._iterfilter(iterrange) 1016 return self._iterfilter(iterrange)
1017 return iter(iterrange) 1017 return iter(iterrange)
1018 1018
1019 def __contains__(self, rev): 1019 def __contains__(self, rev):