This is the mail archive of the guile-gtk@sources.redhat.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

guile-gobject/g-wrap status update


Hi!

[BTW: There seem to be two guile-gtk mailing lists ATM - I guess
people should migrate to the one at GNU...]

I'm ATM working at implementing "glueless" wrapping for g-wrap,
i.e. instead of using a dedicated C wrapper for each wrapped function
creating an applicable smob that invokes a general marshaller which in
turn calls the C function via libffi.

This of course means a good amount of modifying/hacking g-wrap (Hi,
Rob!), mostly to spit out all the necessary argument type information,
so it can be used for marshalling. My main idea is to have each type
have a flag that indicates it is "dynamic" (suggestions for better
name welcome), which means that the type can be marshalled at
runtime. Whenever all argument types on a wrapped function are
dynamic, g-wrap will be able to spit out a bunch of conversion
functions (c->scm, scm->c, c-destructor, ...) for each argument type
along with a desciption of the argument types (basically function
pointers to the conversion functions). This information then will be
used by the marshaller. For a start, I plan to make all types that are
generated by (gw:wrap-simple-type) dynamic.

Regards, Andy
-- 
Andreas Rottmann         | Rotty@ICQ      | 118634484@ICQ | a.rottmann@gmx.at
http://www.8ung.at/rotty | GnuPG Key: http://www.8ung.at/rotty/gpg.asc
Fingerprint              | DFB4 4EB4 78A4 5EEE 6219  F228 F92F CFC5 01FD 5B62

Python is executable pseudocode, Perl is executable line-noise.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]