From: Dana Jansens Date: Mon, 13 Jan 2003 08:48:43 +0000 (+0000) Subject: add ustring.i which wraps otk::ustring for to/from python conversions X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=c34f2a5241fba850f3e48a08ebeff3190c6dc9d5;p=chaz%2Fopenbox add ustring.i which wraps otk::ustring for to/from python conversions --- diff --git a/otk/ustring.i b/otk/ustring.i new file mode 100644 index 00000000..45057334 --- /dev/null +++ b/otk/ustring.i @@ -0,0 +1,40 @@ +// SWIG typemaps for otk::ustring + +%{ +#include "ustring.hh" +%} + +namespace otk { + + class ustring; + + /* Overloading check */ + + %typemap(typecheck) ustring = char *; + %typemap(typecheck) const ustring & = char *; + + %typemap(in) ustring { + if (PyString_Check($input)) + $1 = otk::ustring(PyString_AsString($input)); + else + SWIG_exception(SWIG_TypeError, "ustring expected"); + } + + %typemap(in) const ustring & (otk::ustring temp) { + if (PyString_Check($input)) { + temp = otk::ustring(PyString_AsString($input)); + $1 = &temp; + } else { + SWIG_exception(SWIG_TypeError, "ustring expected"); + } + } + + %typemap(out) ustring { + $result = PyString_FromString($1.c_str()); + } + + %typemap(out) const ustring & { + $result = PyString_FromString($1->c_str()); + } + +}