61c61,62
< def __init__(self, name, cxx_name=None, args=None):
---
> def __init__(self, name, cxx_name=None, args=None,
> return_value_policy=None):
64a66
> self.return_value_policy = return_value_policy
74a77,80
> arguments = [ '"${{self.name}}"', '&${cname}::${{self.cxx_name}}' ]
> if self.return_value_policy:
> arguments.append('pybind11::return_value_policy::'
> '${{self.return_value_policy}}')
84,88c90,91
< code('.def("${{self.name}}", &${cname}::${{self.name}}, ')
< code(' ' + \
< ', '.join([ get_arg_decl(a) for a in self.args ]) + ')')
< else:
< code('.def("${{self.name}}", &${cname}::${{self.cxx_name}})')
---
> arguments.extend(list([ get_arg_decl(a) for a in self.args ]))
> code('.def(' + ', '.join(arguments) + ')')