1763 raise error.ParseError(_("rev expects a number")) |
1763 raise error.ParseError(_("rev expects a number")) |
1764 if l not in repo.changelog and l not in (node.nullrev, node.wdirrev): |
1764 if l not in repo.changelog and l not in (node.nullrev, node.wdirrev): |
1765 return baseset() |
1765 return baseset() |
1766 return subset & baseset([l]) |
1766 return subset & baseset([l]) |
1767 |
1767 |
|
1768 @predicate('_rev(number)', safe=True) |
|
1769 def _rev(repo, subset, x): |
|
1770 # internal version of "rev(x)" that raise error if "x" is invalid |
|
1771 # i18n: "rev" is a keyword |
|
1772 l = getargs(x, 1, 1, _("rev requires one argument")) |
|
1773 try: |
|
1774 # i18n: "rev" is a keyword |
|
1775 l = int(getstring(l[0], _("rev requires a number"))) |
|
1776 except (TypeError, ValueError): |
|
1777 # i18n: "rev" is a keyword |
|
1778 raise error.ParseError(_("rev expects a number")) |
|
1779 repo.changelog.node(l) # check that the rev exists |
|
1780 return subset & baseset([l]) |
|
1781 |
1768 @predicate('revset(set)', safe=True, takeorder=True) |
1782 @predicate('revset(set)', safe=True, takeorder=True) |
1769 def revsetpredicate(repo, subset, x, order): |
1783 def revsetpredicate(repo, subset, x, order): |
1770 """Strictly interpret the content as a revset. |
1784 """Strictly interpret the content as a revset. |
1771 |
1785 |
1772 The content of this special predicate will be strictly interpreted as a |
1786 The content of this special predicate will be strictly interpreted as a |