blob: 5375c43b63c671300efa52d3be0a340c51c68596 [file] [log] [blame]
%module typemap_namespace
/* Secret typedefs */
%{
namespace Foo {
typedef char Str1;
typedef char Str2;
}
%}
namespace Foo {
struct Str1;
struct Str2;
#ifdef SWIGCSHARP
%typemap(ctype) Str1 * = char *;
%typemap(imtype) Str1 * = char *;
%typemap(cstype) Str1 * = char *;
%typemap(csin) Str1 * = char *;
%typemap(csout) Str1 * = char *;
#endif
#ifdef SWIGJAVA
%typemap(jni) Str1 * = char *;
%typemap(jtype) Str1 * = char *;
%typemap(jstype) Str1 * = char *;
%typemap(javain) Str1 * = char *;
%typemap(javaout) Str1 * = char *;
#endif
%typemap(in) Str1 * = char *;
#if !(defined(SWIGCSHARP) || defined(SWIGLUA) || defined(SWIGPHP))
%typemap(freearg) Str1 * = char *;
#endif
%typemap(typecheck) Str1 * = char *;
%apply char * { Str2 * };
}
%inline %{
namespace Foo {
char *test1(Str1 *s) {
return s;
}
char *test2(Str2 *s) {
return s;
}
}
%}