Allow optional arguments to be set from Python with None, e.g: ifc_person.set_argument(0, None)

This commit is contained in:
Thomas Krijnen
2013-07-20 13:51:06 -07:00
parent e5abdb7de8
commit 10657416ea
4 changed files with 15 additions and 2 deletions
+7 -2
View File
@@ -37,7 +37,7 @@
%rename("get_argument_type") getArgumentType;
%rename("get_argument_name") getArgumentName;
%rename("get_argument_index") getArgumentIndex;
%rename("set_argument") setArgument;
%rename("_set_argument") setArgument;
%rename("__repr__") toString;
%rename("Entity") IfcUntypedEntity;
@@ -144,11 +144,16 @@
$self->AddEntity(e);
}
void write(const std::string& fn) {
std::ofstream f(fn.c_str());
std::ofstream f(fn);
f << (*$self);
}
}
%extend Ifc::IfcUntypedEntity {
%pythoncode %{
set_argument = lambda self,x,y: self._set_argument(x) if y is None else self._set_argument(x,y)
%}
}
namespace std {
%template(Ints) vector<int>;