How to find out the API coverage of Perl bindings



Hi,

Is there a way to find which functions are not covered by a specific Perl binding? For the moment I'm mainly concerned of bindings for C libraries that are using Glib/GObject.

I've realized that Champlain.pm (the bindings for libchamplain) is missing coverage for a few methods defined in the public API. For now the best thing that I could find was to use "nm" on the blib .so and on the C library and to compare the results after transforming the output. This method is far from being the best as it can't handle XS function aliases, but it's the best that I can come up. This is a simplication of what I do now:

 nm --defined-only --extern-only blib/arch/auto/Champlain/Champlain.so | grep XS
 nm --defined-only --extern-only /usr/lib/libchamplain-0.3.so | grep -v '_get_type'

The python maintainer of the same library told me that he gets a warning for symbols that are not covered by his bindings. Is there a way to do the same for the Perl bindings?

--
Emmanuel Rodriguez


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]