comparison mercurial/revset.py @ 22536:8040a44aab1c

revset: use `subset &` in `origin` This takes advantage of the `fullreposet` smartness. revset #0: origin(tip) 0) wall 0.005353 comb 0.000000 user 0.000000 sys 0.000000 (best of 354) 1) wall 0.003080 comb 0.000000 user 0.000000 sys 0.000000 (best of 446)
author Pierre-Yves David <pierre-yves.david@fb.com>
date Wed, 17 Sep 2014 19:52:34 -0700
parents 44f471102f3a
children bbf4f3dfd700
comparison
equal deleted inserted replaced
22535:44f471102f3a 22536:8040a44aab1c
1165 return src 1165 return src
1166 src = prev 1166 src = prev
1167 1167
1168 o = set([_firstsrc(r) for r in args]) 1168 o = set([_firstsrc(r) for r in args])
1169 o -= set([None]) 1169 o -= set([None])
1170 return subset.filter(o.__contains__) 1170 return subset & o
1171 1171
1172 def outgoing(repo, subset, x): 1172 def outgoing(repo, subset, x):
1173 """``outgoing([path])`` 1173 """``outgoing([path])``
1174 Changesets not found in the specified destination repository, or the 1174 Changesets not found in the specified destination repository, or the
1175 default push location. 1175 default push location.