Mercurial > hg-stable
changeset 23466:d5b1a452cc32
revset: move 'only' so that functions are sorted alphabetically
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Wed, 03 Dec 2014 22:52:54 +0900 |
parents | 7e6d73f65e7b |
children | c237499a7fba |
files | mercurial/revset.py |
diffstat | 1 files changed, 25 insertions(+), 25 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/revset.py Tue Dec 02 22:42:41 2014 -0500 +++ b/mercurial/revset.py Wed Dec 03 22:52:54 2014 +0900 @@ -384,30 +384,6 @@ kind, pattern, matcher = _substringmatcher(n) return subset.filter(lambda x: matcher(encoding.lower(repo[x].user()))) -def only(repo, subset, x): - """``only(set, [set])`` - Changesets that are ancestors of the first set that are not ancestors - of any other head in the repo. If a second set is specified, the result - is ancestors of the first set that are not ancestors of the second set - (i.e. ::<set1> - ::<set2>). - """ - cl = repo.changelog - # i18n: "only" is a keyword - args = getargs(x, 1, 2, _('only takes one or two arguments')) - include = getset(repo, spanset(repo), args[0]) - if len(args) == 1: - if not include: - return baseset() - - descendants = set(_revdescendants(repo, include, False)) - exclude = [rev for rev in cl.headrevs() - if not rev in descendants and not rev in include] - else: - exclude = getset(repo, spanset(repo), args[1]) - - results = set(cl.findmissingrevs(common=exclude, heads=include)) - return subset & results - def bisect(repo, subset, x): """``bisect(string)`` Changesets marked in the specified bisect status: @@ -1138,6 +1114,30 @@ obsoletes = obsmod.getrevs(repo, 'obsolete') return subset & obsoletes +def only(repo, subset, x): + """``only(set, [set])`` + Changesets that are ancestors of the first set that are not ancestors + of any other head in the repo. If a second set is specified, the result + is ancestors of the first set that are not ancestors of the second set + (i.e. ::<set1> - ::<set2>). + """ + cl = repo.changelog + # i18n: "only" is a keyword + args = getargs(x, 1, 2, _('only takes one or two arguments')) + include = getset(repo, spanset(repo), args[0]) + if len(args) == 1: + if not include: + return baseset() + + descendants = set(_revdescendants(repo, include, False)) + exclude = [rev for rev in cl.headrevs() + if not rev in descendants and not rev in include] + else: + exclude = getset(repo, spanset(repo), args[1]) + + results = set(cl.findmissingrevs(common=exclude, heads=include)) + return subset & results + def origin(repo, subset, x): """``origin([set])`` Changesets that were specified as a source for the grafts, transplants or @@ -1687,7 +1687,6 @@ "ancestors": ancestors, "_firstancestors": _firstancestors, "author": author, - "only": only, "bisect": bisect, "bisected": bisected, "bookmark": bookmark, @@ -1727,6 +1726,7 @@ "min": minrev, "modifies": modifies, "obsolete": obsolete, + "only": only, "origin": origin, "outgoing": outgoing, "p1": p1,