Mercurial > public > mercurial-scm > hg
comparison mercurial/revset.py @ 35673:134ef400cb11
revset: use 'tiprev' when appropriate
This is cleaner than the current 'len(repo) - 1' forms
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Thu, 04 May 2017 02:28:19 +0200 |
parents | 0ebd94ac56d1 |
children | f6ca1e11d8b4 |
comparison
equal
deleted
inserted
replaced
35672:5a6e0eee7781 | 35673:134ef400cb11 |
---|---|
122 return baseset() | 122 return baseset() |
123 return _makerangeset(repo, subset, m.first(), n.last(), order) | 123 return _makerangeset(repo, subset, m.first(), n.last(), order) |
124 | 124 |
125 def rangeall(repo, subset, x, order): | 125 def rangeall(repo, subset, x, order): |
126 assert x is None | 126 assert x is None |
127 return _makerangeset(repo, subset, 0, len(repo) - 1, order) | 127 return _makerangeset(repo, subset, 0, repo.changelog.tiprev(), order) |
128 | 128 |
129 def rangepre(repo, subset, y, order): | 129 def rangepre(repo, subset, y, order): |
130 # ':y' can't be rewritten to '0:y' since '0' may be hidden | 130 # ':y' can't be rewritten to '0:y' since '0' may be hidden |
131 n = getset(repo, fullreposet(repo), y) | 131 n = getset(repo, fullreposet(repo), y) |
132 if not n: | 132 if not n: |
135 | 135 |
136 def rangepost(repo, subset, x, order): | 136 def rangepost(repo, subset, x, order): |
137 m = getset(repo, fullreposet(repo), x) | 137 m = getset(repo, fullreposet(repo), x) |
138 if not m: | 138 if not m: |
139 return baseset() | 139 return baseset() |
140 return _makerangeset(repo, subset, m.first(), len(repo) - 1, order) | 140 return _makerangeset(repo, subset, m.first(), repo.changelog.tiprev(), |
141 order) | |
141 | 142 |
142 def _makerangeset(repo, subset, m, n, order): | 143 def _makerangeset(repo, subset, m, n, order): |
143 if m == n: | 144 if m == n: |
144 r = baseset([m]) | 145 r = baseset([m]) |
145 elif n == node.wdirrev: | 146 elif n == node.wdirrev: |
146 r = spanset(repo, m, len(repo)) + baseset([n]) | 147 r = spanset(repo, m, len(repo)) + baseset([n]) |
147 elif m == node.wdirrev: | 148 elif m == node.wdirrev: |
148 r = baseset([m]) + spanset(repo, len(repo) - 1, n - 1) | 149 r = baseset([m]) + spanset(repo, repo.changelog.tiprev(), n - 1) |
149 elif m < n: | 150 elif m < n: |
150 r = spanset(repo, m, n + 1) | 151 r = spanset(repo, m, n + 1) |
151 else: | 152 else: |
152 r = spanset(repo, m, n - 1) | 153 r = spanset(repo, m, n - 1) |
153 | 154 |