[gobject-introspection] callback without GDestroyNotify


May be a noob question. I am very new to this introspection world and
learning. One of the function in a library which I'm trying to export to
javascript look like this,

 * tweet_object_samplestream:
 * @tweetObject: a #TweetObject
 * @func: (closure userdata) (scope async): a callback function to
invoke for every tweet
 * @userdata: (closure) (allow-none): data to be sent to the callback.
void g_tweet_object_samplestream(GTweetObject *tweetObject,
                                 GTweetObjectStreamFunc func,
                                 gpointer userdata);

Here GTweetObjectStreamFunc is a local typedef,

typedef gboolean (*GTweetObjectStreamFunc)(gchar *string, gpointer

But, g-ir-scanner complaining about this function and puts

tweet-object.h:80: Warning: GTweetObject: g_tweet_object_samplestream:
argument func: Missing (scope) annotation for callback without
GDestroyNotify (valid: call, async)

Whats wrong with my code? If I add 'GDestroyNotify notify' as one of the
parameters to g_tweet_object_samplestream, I'm not getting this error,
but curious to know why g-ir-scanner pushing me to use GDestroyNotify
when I'm not going to use it inside that function.

Mohan R

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