[Vala] Introspecting and typedefs



Hello again!

I have been working on improving the libseed bindings [0] and one of the
things I came across is that in the seed.h file, types are defined like
this:

typedef gpointer SeedString;
typedef gpointer SeedValue;
typedef gpointer SeedObject;
typedef gpointer SeedClass;
typedef gpointer SeedException;

typedef gpointer SeedContext;
typedef gpointer SeedGlobalContext;
typedef gpointer SeedContextGroup;

I don't see any particular problem with this, except when marking a
function parameter as "out".

The line in my metadata file looks like this:

seed_value_to_boolean.exception is_out="1" nullable="1"
transfer_ownership="1"

but if I try and use the function, I run into this message:

main.vala:17: warning: passing argument 3 of ‘seed_simple_evaluate’ from
incompatible pointer type
/usr/include/seed/seed.h:85: note: expected ‘void **’ but argument is of
type ‘void ***’

which I think comes from typedef'ing all the classes to gpointer.

Any thoughts would be welcome!

Sam


--------

[0] http://gitorious.org/seed-vapi




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