[Mono-list] Internal calls

Dan Lewis dihlewis@yahoo.co.uk
Sat, 9 Feb 2002 10:52:49 +0000 (GMT)

Hi everyone,

While looking at what to do with the Windows.cs class, I wrote a little tool to
scan the mono assemblies for internal calls. It takes the methods it finds and
generates two files: icall.h and icall_init.c

The first file contains a C prototype of the ves_icall_ form for every internal
call in the assemblies. A table is used to map types with specific runtime
counterparts: eg arrays, strings, enums, int, void, and reflection types. It
also does a few other things like converting reference parameters into pointers
to pointers, adding the "this" argument for instance methods, etc.

The second file is the icall_map[] binding table.

Since people are likely to be adding internal calls to the core assemblies as
our runtime becomes more complete, I thought this might be useful to ensure
consistency between the assemblies and the runtime. So if you think this is
useful/a bad idea/already implemented give me a mail.


Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts