diff options
author | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2012-02-27 11:33:35 +0100 |
---|---|---|
committer | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2012-02-27 11:33:35 +0100 |
commit | 2a9d50b69dd5149c0b26450a6f1fa417c1ae538c (patch) | |
tree | ce0550d3612982de815a98ef15b452d4936e74db /bindings/php5 | |
parent | 8aba7d48404f3345ce65496e50f5cfec1aafb6dc (diff) | |
download | lasso-2a9d50b69dd5149c0b26450a6f1fa417c1ae538c.tar.gz lasso-2a9d50b69dd5149c0b26450a6f1fa417c1ae538c.tar.xz lasso-2a9d50b69dd5149c0b26450a6f1fa417c1ae538c.zip |
[bindings php5] improve generation of php call stubs by using type case helpers, raise exception in unknown case
Diffstat (limited to 'bindings/php5')
-rw-r--r-- | bindings/php5/php_code.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/bindings/php5/php_code.py b/bindings/php5/php_code.py index 0eab9c19..27874108 100644 --- a/bindings/php5/php_code.py +++ b/bindings/php5/php_code.py @@ -312,12 +312,14 @@ function lassoRegisterIdWsf2DstService($prefix, $href) { php_args.append('%s = null' % arg_name) else: php_args.append(arg_name) - if arg_type in ('char*', 'const char*', 'gchar*', 'const gchar*') or \ - arg_type in ['int', 'gint', 'gboolean', 'const gboolean'] or \ - arg_type in self.binding_data.enums: + if is_xml_node(arg) or is_boolean(arg) or is_cstring(arg) or \ + is_int(arg, self.binding_data) or is_glist(arg) or \ + is_hashtable(arg) or is_time_t_pointer(arg): c_args.append(arg_name) + elif is_object(arg): + c_args.append('%s->_cptr' % arg_name) else: - c_args.append('%s._cptr' % arg_name) + raise Exception('Does not handle argument of type: %s' % ((m, arg),)) if is_out(arg): php_args.pop() php_args.append(arg_name) |