Show More
@@ -1478,6 +1478,22 b' def present(repo, subset, x):' | |||||
1478 | except error.RepoLookupError: |
|
1478 | except error.RepoLookupError: | |
1479 | return baseset() |
|
1479 | return baseset() | |
1480 |
|
1480 | |||
|
1481 | def _notpublic(repo, subset, x): | |||
|
1482 | """``_notpublic()`` | |||
|
1483 | Changeset not in public phase.""" | |||
|
1484 | # i18n: "public" is a keyword | |||
|
1485 | getargs(x, 0, 0, _("_notpublic takes no arguments")) | |||
|
1486 | if repo._phasecache._phasesets: | |||
|
1487 | s = set() | |||
|
1488 | for u in repo._phasecache._phasesets[1:]: | |||
|
1489 | s.update(u) | |||
|
1490 | return subset & s | |||
|
1491 | else: | |||
|
1492 | phase = repo._phasecache.phase | |||
|
1493 | target = phases.public | |||
|
1494 | condition = lambda r: phase(repo, r) != target | |||
|
1495 | return subset.filter(condition, cache=False) | |||
|
1496 | ||||
1481 | def public(repo, subset, x): |
|
1497 | def public(repo, subset, x): | |
1482 | """``public()`` |
|
1498 | """``public()`` | |
1483 | Changeset in public phase.""" |
|
1499 | Changeset in public phase.""" | |
@@ -1984,6 +2000,7 b' symbols = {' | |||||
1984 | "parents": parents, |
|
2000 | "parents": parents, | |
1985 | "present": present, |
|
2001 | "present": present, | |
1986 | "public": public, |
|
2002 | "public": public, | |
|
2003 | "_notpublic": _notpublic, | |||
1987 | "remote": remote, |
|
2004 | "remote": remote, | |
1988 | "removes": removes, |
|
2005 | "removes": removes, | |
1989 | "rev": rev, |
|
2006 | "rev": rev, | |
@@ -2058,6 +2075,7 b' safesymbols = set([' | |||||
2058 | "parents", |
|
2075 | "parents", | |
2059 | "present", |
|
2076 | "present", | |
2060 | "public", |
|
2077 | "public", | |
|
2078 | "_notpublic", | |||
2061 | "remote", |
|
2079 | "remote", | |
2062 | "removes", |
|
2080 | "removes", | |
2063 | "rev", |
|
2081 | "rev", | |
@@ -2149,8 +2167,14 b' def optimize(x, small):' | |||||
2149 | wb, wa = wa, wb |
|
2167 | wb, wa = wa, wb | |
2150 | return max(wa, wb), (op, ta, tb) |
|
2168 | return max(wa, wb), (op, ta, tb) | |
2151 | elif op == 'not': |
|
2169 | elif op == 'not': | |
2152 | o = optimize(x[1], not small) |
|
2170 | # Optimize not public() to _notpublic() because we have a fast version | |
2153 | return o[0], (op, o[1]) |
|
2171 | if x[1] == ('func', ('symbol', 'public'), None): | |
|
2172 | newsym = ('func', ('symbol', '_notpublic'), None) | |||
|
2173 | o = optimize(newsym, not small) | |||
|
2174 | return o[0], o[1] | |||
|
2175 | else: | |||
|
2176 | o = optimize(x[1], not small) | |||
|
2177 | return o[0], (op, o[1]) | |||
2154 | elif op == 'parentpost': |
|
2178 | elif op == 'parentpost': | |
2155 | o = optimize(x[1], small) |
|
2179 | o = optimize(x[1], small) | |
2156 | return o[0], (op, o[1]) |
|
2180 | return o[0], (op, o[1]) |
General Comments 0
You need to be logged in to leave comments.
Login now