/* ----------------------------------------------------------------------------- * cplusplus.i * * SWIG typemaps for C++ * ----------------------------------------------------------------------------- */ %typemap(guile,out) string, std::string { $result = gh_str02scm(const_cast($1.c_str())); } %typemap(guile,in) string, std::string { $1 = SWIG_scm2str($input); } %typemap(guile,out) complex, complex, std::complex { $result = scm_make_rectangular( gh_double2scm ($1.real ()), gh_double2scm ($1.imag ()) ); } %typemap(guile,in) complex, complex, std::complex { $1 = std::complex( gh_scm2double (scm_real_part ($input)), gh_scm2double (scm_imag_part ($input)) ); }