diff --git a/erpcgen/src/templates/py_client.template b/erpcgen/src/templates/py_client.template index a9bdfd5ee..d9ad1ed36 100644 --- a/erpcgen/src/templates/py_client.template +++ b/erpcgen/src/templates/py_client.template @@ -54,14 +54,14 @@ class {$iface.name}Client(interface.I{$iface.name}): codec.write_null_flag(True) else: codec.write_null_flag(False) - {$encodeValue(p.type, p.name, "codec", " ", 0)} + {% if p.direction == 'inout' %}{$encodeValue(p.type, p.name & ".value", "codec", " ", 0)}{% else %}{$encodeValue(p.type, p.name, "codec", " ", 0)}{% endif %} {% else -- isNullable %} if {$p.name} is None: raise ValueError("{$p.name} is None") {% if p.type.type == 'union' %} - {$p.name}._write(codec, {$p.discriminator}) + {% if p.direction == 'inout' %}{$p.name}.value._write(codec, {$p.discriminator}){% else %}{$p.name}._write(codec, {$p.discriminator}){% endif %} {% else%} - {$encodeValue(p.type, p.name, "codec", " ", 0)} + {% if p.direction == 'inout' %}{$encodeValue(p.type, p.name & ".value", "codec", " ", 0)}{% else %}{$encodeValue(p.type, p.name, "codec", " ", 0)}{% endif %} {% endif -- isUnion %} {% endif -- isNullable %} {% endfor -- inParams %}