mercurial/revset.py
changeset 12716 c7e619e30ba3
parent 12715 33820dccbea4
child 12733 098dfb2b7596
equal deleted inserted replaced
12715:33820dccbea4 12716:c7e619e30ba3
   171         return symbols[a[1]](repo, subset, b)
   171         return symbols[a[1]](repo, subset, b)
   172     raise error.ParseError(_("not a function: %s") % a[1])
   172     raise error.ParseError(_("not a function: %s") % a[1])
   173 
   173 
   174 # functions
   174 # functions
   175 
   175 
       
   176 def node(repo, subset, x):
       
   177     l = getargs(x, 1, 1, _("rev wants one argument"))
       
   178     n = getstring(l[0], _("rev wants a string"))
       
   179     if len(n) == 40:
       
   180         rn = repo[n].rev()
       
   181     else:
       
   182         rn = repo.changelog.rev(repo.changelog._partialmatch(n))
       
   183     return [r for r in subset if r == rn]
       
   184 
       
   185 def rev(repo, subset, x):
       
   186     l = getargs(x, 1, 1, _("rev wants one argument"))
       
   187     try:
       
   188         l = int(getstring(l[0], _("rev wants a number")))
       
   189     except ValueError:
       
   190         raise error.ParseError(_("rev expects a number"))
       
   191     return [r for r in subset if r == l]
       
   192 
   176 def p1(repo, subset, x):
   193 def p1(repo, subset, x):
   177     ps = set()
   194     ps = set()
   178     cl = repo.changelog
   195     cl = repo.changelog
   179     for r in getset(repo, subset, x):
   196     for r in getset(repo, subset, x):
   180         ps.add(cl.parentrevs(r)[0])
   197         ps.add(cl.parentrevs(r)[0])
   499     "limit": limit,
   516     "limit": limit,
   500     "max": maxrev,
   517     "max": maxrev,
   501     "min": minrev,
   518     "min": minrev,
   502     "merge": merge,
   519     "merge": merge,
   503     "modifies": modifies,
   520     "modifies": modifies,
       
   521     "id": node,
   504     "outgoing": outgoing,
   522     "outgoing": outgoing,
   505     "p1": p1,
   523     "p1": p1,
   506     "p2": p2,
   524     "p2": p2,
   507     "parents": parents,
   525     "parents": parents,
   508     "present": present,
   526     "present": present,
   509     "removes": removes,
   527     "removes": removes,
   510     "reverse": reverse,
   528     "reverse": reverse,
       
   529     "rev": rev,
   511     "roots": roots,
   530     "roots": roots,
   512     "sort": sort,
   531     "sort": sort,
   513     "tag": tag,
   532     "tag": tag,
   514     "tagged": tag,
   533     "tagged": tag,
   515     "user": author,
   534     "user": author,