| %module typemap_self | |
| // This typemap should be ignored for self? | |
| %typemap(in) A* (A* ptr) { | |
| if (SWIG_ConvertPtr($input, (void**) &ptr, $1_descriptor, 0) != -1) { | |
| $1 = ptr; | |
| } else { | |
| $1 = new A(); | |
| } | |
| } | |
| // Simple but unsecure current fix | |
| //%apply SWIGTYPE* {A* self} | |
| %inline %{ | |
| class A; | |
| int foo(A* self) | |
| { | |
| return 0; | |
| } | |
| struct A | |
| { | |
| static int bar(int, A* self) | |
| { | |
| return 1; | |
| } | |
| int val; | |
| int foo(A* self, A* b) | |
| { | |
| return 1; | |
| } | |
| }; | |
| struct B | |
| { | |
| B(A*) | |
| { | |
| } | |
| }; | |
| %} |