[Mono-list] internal calls and advanced bindings in C++

virgile.bello at free.fr virgile.bello at free.fr
Sun Dec 31 08:23:38 EST 2006


In my quest to do bindings between Mono and C++ (compile&runtime generated on
C++ side due to varying implementation of how C++ calls function), I realized
that it would be hard to do it with only internal calls cdecl function that
could only be compile-time generated.
To switch to runtime generation of function dispatching, it would require
metadata such as an integer (index) or pointer to be put on the stack of the
manager to native wrapper.
An example of what I would need would be :

void mono_add_internal_call_with_param( const char *name, gconstpointer method,
void* param1 );
that would call method( void* param1, MonoObject* MonoParam1, MonoObject*
MonoParam2, ... );
First, I'd like to know what you think about such a proposal, would it be
usefull for some of you ?
Where would be the cleanest place to implement it ?
Of course I'm up to work on it as needed.
I think that I will code it anyway, but if it can help someone else, and fit in
the main tree it would be even better.

Thank you,

More information about the Mono-list mailing list