aboutsummaryrefslogtreecommitdiffstats
path: root/version_detect/hg_keywords.py
diff options
context:
space:
mode:
authorUnknown <tolsen@limebits.com>2008-06-26 17:39:31 -0400
committerUnknown <tolsen@limebits.com>2008-06-26 17:39:31 -0400
commit4e4774cf86a68b8ecf842cd8e15bfd531e6efb84 (patch)
treede41457602f16bff0e2ac39296a7ace37831fbb4 /version_detect/hg_keywords.py
parent26ab5d2b33f58435acab0fdbeddf59d9d41dd382 (diff)
downloadurllib2_kerberos-4e4774cf86a68b8ecf842cd8e15bfd531e6efb84.tar.gz
put version detection files into new version_detect package
Diffstat (limited to 'version_detect/hg_keywords.py')
-rw-r--r--version_detect/hg_keywords.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/version_detect/hg_keywords.py b/version_detect/hg_keywords.py
new file mode 100644
index 0000000..edc9bae
--- /dev/null
+++ b/version_detect/hg_keywords.py
@@ -0,0 +1,21 @@
+import re
+
+keyword_rx = re.compile('^\$(\w+)\:\s+(\S*)\s*\$$')
+
+# returns tuple (key, value)
+# returns None if kwstring is not a keyword expansion
+def extract_keyvalue(kwstring):
+ mo = keyword_rx.match(kwstring)
+ if mo is None: return None
+
+ try:
+ return mo.group(1,2)
+ except IndexError:
+ return None
+
+
+
+def keywords(*kwstrings):
+ keyvalues = [extract_keyvalue(kws) for kws in kwstrings]
+ compacted_keyvalues = [kv for kv in keyvalues if kv is not None]
+ return dict(compacted_keyvalues)