More correct handling of default values
This commit is contained in:
1 parent
1c1aa0f22a
commit
810a286f8f
1 file changed
+3
-3
@@ -1416,7 +1416,7 @@ class CppClassParameter(CppClassParameterBase):
|
||||
else:
|
||||
implicit_conversion_sources = self.cpp_class.get_all_implicit_conversions()
|
||||
if not implicit_conversion_sources:
|
||||
if self.default_value:
|
||||
if self.default_value is not None:
|
||||
self.py_name = wrapper.declarations.declare_variable(
|
||||
self.cpp_class.pystruct+'*', self.name, 'NULL')
|
||||
wrapper.parse_params.add_parameter(
|
||||
@@ -1514,7 +1514,7 @@ class CppClassRefParameter(CppClassParameterBase):
|
||||
else:
|
||||
implicit_conversion_sources = self.cpp_class.get_all_implicit_conversions()
|
||||
if not (implicit_conversion_sources and self.is_const):
|
||||
if self.default_value:
|
||||
if self.default_value is not None:
|
||||
self.py_name = wrapper.declarations.declare_variable(
|
||||
self.cpp_class.pystruct+'*', self.name, 'NULL')
|
||||
wrapper.parse_params.add_parameter(
|
||||
@@ -1530,7 +1530,7 @@ class CppClassRefParameter(CppClassParameterBase):
|
||||
wrapper.call_params.append(
|
||||
'*((%s *) %s)->obj' % (self.cpp_class.pystruct, self.py_name))
|
||||
else:
|
||||
if self.default_value:
|
||||
if self.default_value is not None:
|
||||
warnings.warn("with implicit conversions, default value "
|
||||
"in C++ class reference parameters is ignored.")
|
||||
self.py_name = wrapper.declarations.declare_variable(
|
||||
|
||||
Reference in new issue
Block a user