diff options
author | Frederic Peters <fpeters@entrouvert.com> | 2008-04-29 12:03:32 +0000 |
---|---|---|
committer | Frederic Peters <fpeters@entrouvert.com> | 2008-04-29 12:03:32 +0000 |
commit | 81cec0d3c4e3a1528c77703d9b009b16beb924c9 (patch) | |
tree | ce579b9b742978cd4ef55056360b6d3408a4b683 | |
parent | a7ad9d99058693b3c500db6e39ecb5afa1b2ca23 (diff) | |
download | lasso-81cec0d3c4e3a1528c77703d9b009b16beb924c9.tar.gz lasso-81cec0d3c4e3a1528c77703d9b009b16beb924c9.tar.xz lasso-81cec0d3c4e3a1528c77703d9b009b16beb924c9.zip |
[project @ fpeters@0d.be-20071029175534-xyhm1jidpe624m3t]
API compatibility with SWIG bindings which didn't have accessors for those
methods and used totally pythonified method name instead, such as
Logout::getNextProviderId; also improved python method naming converter
function to correctly translate ID to Id.
Original author: Frederic Peters <fpeters@0d.be>
Date: 2007-10-29 18:55:34.577000+01:00
-rw-r--r-- | bindings/lang_python.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/bindings/lang_python.py b/bindings/lang_python.py index 9854f2a3..f493b7e8 100644 --- a/bindings/lang_python.py +++ b/bindings/lang_python.py @@ -43,6 +43,7 @@ def format_underscore_as_py(var): def rep(s): return s.group(1)[0].upper() + s.group(1)[1:] var = re.sub(r'_([A-Za-z0-9]+)', rep, var) + var = re.sub(r'([a-z])(ID)([A-Z]|$)', r'\1Id\3', var) # replace standing ID by Id return var class PythonBinding: @@ -252,9 +253,17 @@ import lasso except IndexError: setter = None mname = re.match(r'lasso_.*_get_(\w+)', m.name).group(1) + mname = format_underscore_as_py(mname) print >> fd, ' def get_%s(self):' % mname print >> fd, ' return _lasso.%s(self._cptr)' % m.name[6:] + + if mname[0] == mname[0].lower(): + # API compatibility with SWIG bindings which didn't have + # accessors for those methods and used totally pythonified + # method name instead, such as getNextProviderId + print >> fd, ' get%s%s = get_%s' % ( + mname[0].upper(), mname[1:], mname) if setter: print >> fd, ' def set_%s(self, value):' % mname print >> fd, ' _lasso.%s(self._cptr, value)' % setter.name[6:] |