Mercurial > public > mercurial-scm > hg
comparison mercurial/revset.py @ 11280:a5eb0bf7e158
revset: add tagged predicate
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 03 Jun 2010 17:39:40 -0500 |
parents | 62ccf4cd6e7f |
children | e581f3acc338 |
comparison
equal
deleted
inserted
replaced
11279:62ccf4cd6e7f | 11280:a5eb0bf7e158 |
---|---|
422 cl = repo.changelog | 422 cl = repo.changelog |
423 o = set([cl.rev(r) for r in repo.changelog.nodesbetween(o, None)[0]]) | 423 o = set([cl.rev(r) for r in repo.changelog.nodesbetween(o, None)[0]]) |
424 print 'out', dest, o | 424 print 'out', dest, o |
425 return [r for r in subset if r in o] | 425 return [r for r in subset if r in o] |
426 | 426 |
427 def tagged(repo, subset, x): | |
428 cl = repo.changelog | |
429 s = set([cl.rev(n) for t, n in repo.tagslist() if t != 'tip']) | |
430 return [r for r in subset if r in s] | |
431 | |
427 symbols = { | 432 symbols = { |
428 "ancestor": ancestor, | 433 "ancestor": ancestor, |
429 "ancestors": ancestors, | 434 "ancestors": ancestors, |
430 "descendants": descendants, | 435 "descendants": descendants, |
431 "follow": follow, | 436 "follow": follow, |
453 "head": head, | 458 "head": head, |
454 "modifies": modifies, | 459 "modifies": modifies, |
455 "adds": adds, | 460 "adds": adds, |
456 "removes": removes, | 461 "removes": removes, |
457 "outgoing": outgoing, | 462 "outgoing": outgoing, |
463 "tagged": tagged, | |
458 } | 464 } |
459 | 465 |
460 methods = { | 466 methods = { |
461 "negate": negate, | 467 "negate": negate, |
462 "range": rangeset, | 468 "range": rangeset, |