summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2008-05-26 16:41:36 +0000
committerFrederic Peters <fpeters@entrouvert.com>2008-05-26 16:41:36 +0000
commit2c426974492cda0185bb102281d5f7de44776dc4 (patch)
tree5f8f2e5c7ac83b902dd73eabcd1ec8237b41d0f4
parenta68236666fb6cdaf560c1df9b739f41fa4359aab (diff)
downloadlasso-2c426974492cda0185bb102281d5f7de44776dc4.tar.gz
lasso-2c426974492cda0185bb102281d5f7de44776dc4.tar.xz
lasso-2c426974492cda0185bb102281d5f7de44776dc4.zip
respect optional args and default values for integer args
-rw-r--r--bindings/lang_python.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/bindings/lang_python.py b/bindings/lang_python.py
index 079eaa46..58b39708 100644
--- a/bindings/lang_python.py
+++ b/bindings/lang_python.py
@@ -793,9 +793,16 @@ register_constants(PyObject *d)
parse_tuple_args.append('&%s' % arg_name)
print >> fd, ' %s %s = NULL;' % (arg[0], arg[1])
elif arg_type in ['int', 'gint', 'gboolean', 'const gboolean'] + self.binding_data.enums:
+ if arg_options.get('optional'):
+ if not '|' in parse_tuple_format:
+ parse_tuple_format.append('|')
parse_tuple_format.append('i')
parse_tuple_args.append('&%s' % arg_name)
- print >> fd, ' %s %s;' % (arg[0], arg[1])
+ if arg_options.get('default'):
+ defval = arg_options.get('default')[2:]
+ print >> fd, ' %s %s = %s;' % (arg[0], arg[1], defval)
+ else:
+ print >> fd, ' %s %s;' % (arg[0], arg[1])
elif arg_type in ('GList*', 'xmlNode*'):
parse_tuple_format.append('O')
parse_tuple_args.append('&cvt_%s' % arg_name)