all those *.h files are full of both mpxs_ functions and static XS functions, with functionaity implemented in one or the other seemingly at random. I have no idea how you would choose one format over the other, but if the mpxs_ implementation makes you more comfortable, that's fine - I'll commit that approach tomorrow.


Even though they look random, they aren't. I have tried to document some of these here:
http://perl.apache.org/docs/2.0/devel/core/explained.html#Adding_Wrappers_for_existing_APIs_and_Creating_New_APIs



wow. here I am raking through the code trying to figure it all out and there it is in print.


Admittedly it's incomplete. I wrote that document when I was coping with this puzzle myself. As you are now coping with it, it'd help if you could improve that document.

I believe Doug's idea was to have to write (and maintain) the minimal amount of code. So if you have a simple function where the args and return values can be converted from perl to C and back automatically, you use just that. If you have an optional number of args you use (...) and manipulate the stack. If you have a variable number/type of return args you use XS(). If you read the above section, things might get more clear.

yeah, that actually helps lots. now I know what to do with the others that will come :) thanks stas.


anyway, I made the change and committed it this morning - all tests pass and I can use it in real life just fine.

more stuff to come... :)

--Geoff


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to