aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/pyme/util.py
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2016-06-08 16:58:57 +0000
committerJustus Winter <[email protected]>2016-07-08 16:05:12 +0000
commitd6408ce471c294c3e6f901d183b87d521b9bcc56 (patch)
tree79abbe30ca1a90a4460c696cdee6976890f486a9 /lang/python/pyme/util.py
parentpython: Port more tests. (diff)
downloadgpgme-d6408ce471c294c3e6f901d183b87d521b9bcc56.tar.gz
gpgme-d6408ce471c294c3e6f901d183b87d521b9bcc56.zip
python: idiomatic interface prototypejustus/idiomatic-py-0
Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to 'lang/python/pyme/util.py')
-rw-r--r--lang/python/pyme/util.py23
1 files changed, 14 insertions, 9 deletions
diff --git a/lang/python/pyme/util.py b/lang/python/pyme/util.py
index 5527a1a2..bbd28fe7 100644
--- a/lang/python/pyme/util.py
+++ b/lang/python/pyme/util.py
@@ -1,3 +1,4 @@
+# Copyright (C) 2016 g10 Code GmbH
# Copyright (C) 2004,2008 Igor Belyi <[email protected]>
# Copyright (C) 2002 John Goerzen <[email protected]>
#
@@ -17,12 +18,16 @@
from . import pygpgme
-def process_constants(starttext, dict):
- """Called by the constant libraries to load up the appropriate constants
- from the C library."""
- index = len(starttext)
- for identifier in dir(pygpgme):
- if not identifier.startswith(starttext):
- continue
- name = identifier[index:]
- dict[name] = getattr(pygpgme, identifier)
+def process_constants(prefix, scope):
+ """Called by the constant modules to load up the constants from the C
+ library starting with PREFIX. Matching constants will be inserted
+ into SCOPE with PREFIX stripped from the names. Returns the names
+ of inserted constants.
+
+ """
+ index = len(prefix)
+ constants = {identifier[index:]: getattr(pygpgme, identifier)
+ for identifier in dir(pygpgme)
+ if identifier.startswith(prefix)}
+ scope.update(constants)
+ return list(constants.keys())