[PATCH 4 of 6 V2] revset: add helper function to get functions used in a revset parse tree
Alexander Plavin
alexander at plav.in
Fri Aug 16 15:03:28 CDT 2013
# HG changeset patch
# User Alexander Plavin <alexander at plav.in>
# Date 1375824091 -14400
# Wed Aug 07 01:21:31 2013 +0400
# Node ID 916a7171b59f371732758ab473c4bf5467631a13
# Parent 3a09bc2bf256789aa7a4d5c50dedf9fb50886873
revset: add helper function to get functions used in a revset parse tree
diff -r 3a09bc2bf256 -r 916a7171b59f mercurial/revset.py
--- a/mercurial/revset.py Fri Aug 16 15:01:22 2013 +0400
+++ b/mercurial/revset.py Wed Aug 07 01:21:31 2013 +0400
@@ -1978,5 +1978,16 @@
else:
return 0
+def funcsused(tree):
+ if not isinstance(tree, tuple) or tree[0] in ('string', 'symbol'):
+ return set()
+ else:
+ funcs = set()
+ for s in tree[1:]:
+ funcs |= funcsused(s)
+ if tree[0] == 'func':
+ funcs.add(tree[1][1])
+ return funcs
+
# tell hggettext to extract docstrings from these functions:
i18nfunctions = symbols.values()
More information about the Mercurial-devel
mailing list