comparison mercurial/revset.py @ 12715:33820dccbea4

revset: rename tagged() to tag() and allow it to take an optional tag name
author Augie Fackler <durin42@gmail.com>
date Sun, 10 Oct 2010 12:41:36 -0500
parents e797fdf91df4
children c7e619e30ba3
comparison
equal deleted inserted replaced
12714:f5178fbcd197 12715:33820dccbea4
465 repo.ui.popbuffer() 465 repo.ui.popbuffer()
466 cl = repo.changelog 466 cl = repo.changelog
467 o = set([cl.rev(r) for r in repo.changelog.nodesbetween(o, revs)[0]]) 467 o = set([cl.rev(r) for r in repo.changelog.nodesbetween(o, revs)[0]])
468 return [r for r in subset if r in o] 468 return [r for r in subset if r in o]
469 469
470 def tagged(repo, subset, x): 470 def tag(repo, subset, x):
471 getargs(x, 0, 0, _("tagged takes no arguments")) 471 args = getargs(x, 0, 1, _("tag takes one or no arguments"))
472 cl = repo.changelog 472 cl = repo.changelog
473 s = set([cl.rev(n) for t, n in repo.tagslist() if t != 'tip']) 473 if args:
474 tn = getstring(args[0],
475 _('the argument to tag must be a string'))
476 s = set([cl.rev(n) for t, n in repo.tagslist() if t == tn])
477 else:
478 s = set([cl.rev(n) for t, n in repo.tagslist() if t != 'tip'])
474 return [r for r in subset if r in s] 479 return [r for r in subset if r in s]
475 480
476 symbols = { 481 symbols = {
477 "adds": adds, 482 "adds": adds,
478 "all": getall, 483 "all": getall,
503 "present": present, 508 "present": present,
504 "removes": removes, 509 "removes": removes,
505 "reverse": reverse, 510 "reverse": reverse,
506 "roots": roots, 511 "roots": roots,
507 "sort": sort, 512 "sort": sort,
508 "tagged": tagged, 513 "tag": tag,
514 "tagged": tag,
509 "user": author, 515 "user": author,
510 } 516 }
511 517
512 methods = { 518 methods = {
513 "range": rangeset, 519 "range": rangeset,