# HG changeset patch # User Lucas Moscovicz # Date 1391037796 28800 # Node ID 4f1aed2c7a7e045245d97b43e2dc79d876ccb6f4 # Parent ad2f1512eaa618c7f1edf21a6c563c18e5bee43b revset: added lazyset implementation bookmark revset diff -r ad2f1512eaa6 -r 4f1aed2c7a7e mercurial/revset.py --- a/mercurial/revset.py Mon Feb 03 16:02:48 2014 -0800 +++ b/mercurial/revset.py Wed Jan 29 15:23:16 2014 -0800 @@ -391,7 +391,7 @@ if not bmrev: raise util.Abort(_("bookmark '%s' does not exist") % bm) bmrev = repo[bmrev].rev() - return baseset([r for r in subset if r == bmrev]) + return lazyset(subset, lambda r: r == bmrev) else: matchrevs = set() for name, bmrev in repo._bookmarks.iteritems(): @@ -407,7 +407,7 @@ bms = set([repo[r].rev() for r in repo._bookmarks.values()]) - return baseset([r for r in subset if r in bms]) + return lazyset(subset, lambda r: r in bms) def branch(repo, subset, x): """``branch(string or set)``