From 2a9d50b69dd5149c0b26450a6f1fa417c1ae538c Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Mon, 27 Feb 2012 11:33:35 +0100 Subject: [PATCH] [bindings php5] improve generation of php call stubs by using type case helpers, raise exception in unknown case --- bindings/php5/php_code.py | 10 ++++++---- 1 file 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)