9
glib:type-name="TestFoo"
10
glib:get-type="test_foo_get_type"
11
glib:type-struct="FooClass">
13
<type name="GLib.Object" c:type="GObject"/>
15
<method name="function" c:identifier="test_function">
16
<return-value transfer-ownership="none">
20
<instance-parameter name="self" transfer-ownership="none">
21
<type name="Test.Foo" c:type="TestFoo*"/>
23
<parameter name="callback" transfer-ownership="none" allow-none="1" closure="1" scope="notified" destroy="2">
24
<type name="GLib.Func" c:type="GFunc"/>
26
<parameter name="callback_target" transfer-ownership="none" allow-none="1" closure="0">
27
<type name="gpointer" c:type="void*"/>
29
<parameter name="callback_target_destroy_notify" transfer-ownership="none" scope="call" destroy="0">
30
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
35
<record name="FooClass"
37
glib:is-gtype-struct-for="Foo">
39
<function name="function" c:identifier="test_function">
40
<return-value transfer-ownership="none">
44
<parameter name="callback" transfer-ownership="none" allow-none="1" closure="1" scope="notified" destroy="2">
45
<type name="GLib.Func" c:type="GFunc"/>
47
<parameter name="callback_target" transfer-ownership="none" allow-none="1" closure="0">
48
<type name="gpointer" c:type="void*"/>
50
<parameter name="callback_target_destroy_notify" transfer-ownership="none" scope="call" destroy="0">
51
<type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
58
[CCode (cheader_filename = "test.h", type_id = "test_foo_get_type ()")]
59
public class Foo : GLib.Object {
60
[CCode (has_construct_function = false)]
62
[CCode (cname = "test_function")]
63
public void function (owned GLib.Func? callback);
65
[CCode (cheader_filename = "test.h")]
66
public static void function (owned GLib.Func? callback);