This is the mail archive of the
guile-gtk@sources.redhat.com
mailing list for the Guile project.
guile-gobject/g-wrap status update
- From: Andreas Rottmann <a dot rottmann at gmx dot at>
- To: guile-gtk at sources dot redhat dot com, guile-gtk-general at gnu dot org
- Cc: Rob Browning <rlb at defaultvalue dot org>
- Date: Mon, 06 Oct 2003 17:13:54 +0200
- Subject: 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.