Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/revset.py @ 28426:3d39ac06af9a
revset: add inspection data to limit() and last() functions
We are likely to be interested in how these functions calculate a result set.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Tue, 16 Feb 2016 21:43:51 +0900 |
parents | 02d7faaf455c |
children | 969a4615c4c4 |
comparison
equal
deleted
inserted
replaced
28425:02d7faaf455c | 28426:3d39ac06af9a |
---|---|
1286 y = next(it, None) | 1286 y = next(it, None) |
1287 if y is None: | 1287 if y is None: |
1288 break | 1288 break |
1289 elif y in subset: | 1289 elif y in subset: |
1290 result.append(y) | 1290 result.append(y) |
1291 return baseset(result) | 1291 return baseset(result, datarepr=('<limit n=%d, offset=%d, %r, %r>', |
1292 lim, ofs, subset, os)) | |
1292 | 1293 |
1293 @predicate('last(set, [n])', safe=True) | 1294 @predicate('last(set, [n])', safe=True) |
1294 def last(repo, subset, x): | 1295 def last(repo, subset, x): |
1295 """Last n members of set, defaulting to 1. | 1296 """Last n members of set, defaulting to 1. |
1296 """ | 1297 """ |
1312 y = next(it, None) | 1313 y = next(it, None) |
1313 if y is None: | 1314 if y is None: |
1314 break | 1315 break |
1315 elif y in subset: | 1316 elif y in subset: |
1316 result.append(y) | 1317 result.append(y) |
1317 return baseset(result) | 1318 return baseset(result, datarepr=('<last n=%d, %r, %r>', lim, subset, os)) |
1318 | 1319 |
1319 @predicate('max(set)', safe=True) | 1320 @predicate('max(set)', safe=True) |
1320 def maxrev(repo, subset, x): | 1321 def maxrev(repo, subset, x): |
1321 """Changeset with highest revision number in set. | 1322 """Changeset with highest revision number in set. |
1322 """ | 1323 """ |