swig/Examples/test-suite/overload_bool.i
William S Fulton 504c2030bb Change in default behaviour wrapping C++ bool for Python.
Only a Python True or False will now work for C++ bool parameters.
This fixes overloading bool with other types.
2014-03-08 12:04:19 +00:00

19 lines
701 B
OpenEdge ABL

%module overload_bool
%inline %{
const char* overloaded(bool value) { return "bool"; }
const char* overloaded(int value) { return "int"; }
const char* overloaded(const char *value) { return "string"; }
const char* boolfunction(bool value) { return value ? "true" : "false"; }
const char* intfunction(int value) { return "int"; }
// Const references
const char* overloaded_ref(bool const& value) { return "bool"; }
const char* overloaded_ref(int const& value) { return "int"; }
const char* overloaded_ref(const char *value) { return "string"; }
const char* boolfunction_ref(bool const& value) { return value ? "true" : "false"; }
const char* intfunction_ref(int const& value) { return "int"; }
%}