logo       

typemap for overloaded contructor: msg#00104

programming.swig

Subject: typemap for overloaded contructor

Sebastian Haase writes:
> Hi,
> I get
> TypeError: No matching function for overloaded 'new_PriismFile'
>
> I have these constructors:
> PriismFile(float *img3DStack, int nx, int ny, int nz);
> PriismFile(unsigned short *img3DStack, int nx, int ny, int nz);
>
> and these typemaps
> %typemap(python,in) (unsigned short *img3DStack, int nx, int ny, int nz)
> <...>
> %typemap(python,in) (float *img3DStack, int nx, int ny, int nz) <...>
>
> If I comment out any one of the two contructors it recognizes it fine,
> but as soon as I have more than one contructor I get the error.
>

I'm not sure why you are defining typemaps like that. You do realize
that by defining a typemap in the way shown, you are collapsing all of
those arguments down so a single scripting language object. Yes?
In any event, the only way to make overloaded methods work with
typemaps is to write a bunch of typecheck rules that disambiguate
arguments. To see how to do that, look at the perl5.swg file in the
SWIG library.

Cheers,

Dave


_______________________________________________
Swig maillist - Swig@xxxxxxxxxxxxxxx
http://mailman.cs.uchicago.edu/mailman/listinfo/swig



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise