diff options
author | Unknown <tolsen@limebits.com> | 2008-06-26 17:39:31 -0400 |
---|---|---|
committer | Matěj Cepl <mcepl@cepl.eu> | 2023-04-29 18:18:26 +0200 |
commit | 81ba8e0b47f2b03e09151e8186d8a9470b4bd5c8 (patch) | |
tree | 95d72863c26b012fff1649d94fe905aa1a1603ab /version_detect/hg_keywords.py | |
parent | b6173d98d46241e44a2756f63073cbd3d4d6544e (diff) | |
download | urllib2_kerberos-81ba8e0b47f2b03e09151e8186d8a9470b4bd5c8.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.py | 21 |
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) |