- a command to search for all ffi calls and add a property of the methods with an array of the argument names
- then modify method installation to look first for this property and take the argument names just if it is not found
only difference is that with NB we searched for a pragma, now we have to search for senders of a list of ���ffi methods��� #ffiCall: family and #nbCall: family
to implement this is trivial��� is just I didn���t do it ;)
Esteban
On 24 Jan 2018, at 08:58, Marcus Denker <marcus.denker@inria.fr> wrote:
On 24 Jan 2018, at 01:54, <Vincent.Blondeau@lamresearch.com> <Vincent.Blondeau@lamresearch.com> wrote:
Hi,
I am working to be able to create some standalone apps in Pharo. And for this, I would like to remove of the .sources and .changes. But, by removing them, the args names are reset to arg1, arg2, arg3, ... and the FFI cannot be used anymore.
Does someone (Esteban?) have a solution that I could implement to fix this issue?
Hello,
You can embed the sources of just those methods:
-> iterate over all methods, select the FFI methods
-> call #embeddSourceInTrailer on these methods.
We should add later something to the compiler for this, too. Imagine you have your system without source,decompiling happily. Then you want to edit a method: -> if it was decompiled, just compile and drop source -> if the source comes from the trailer, it should again compile a method with embedded source.I make a note for my TODO.With Pavel we managed to speed up source reading for methods that have embeddSourceInTrailer quite a lot(with ideas for even more), I will start to merge these patches, too. Marcus