2 <repository version="1.0"
3 xmlns="http://www.gtk.org/introspection/core/1.0"
4 xmlns:c="http://www.gtk.org/introspection/c/1.0"
5 xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
6 <include name="utility" version="1.0"/>
7 <include name="GObject" version="2.0"/>
8 <include name="GLib" version="2.0"/>
9 <namespace name="foo" version="1.0" shared-library="foo">
10 <interface name="Interface" glib:type-name="FooInterface" glib:get-type="foo_interface_get_type"/>
11 <record name="InterfaceIface">
12 <field name="parent_iface" offset="0">
13 <type name="GObject.TypeInterface"/>
16 <class name="Object" parent="GObject.Object" glib:type-name="FooObject" glib:get-type="foo_object_get_type">
17 <implements name="Interface"/>
18 <field name="parent_instance" offset="0">
19 <type name="GObject.Object"/>
21 <constructor name="new" c:identifier="foo_object_new">
23 <type name="GObject.Object"/>
26 <method name="external_type" c:identifier="foo_object_external_type">
28 <type name="GObject.Object"/>
31 <method name="various" c:identifier="foo_object_various">
36 <parameter name="data">
39 <parameter name="some_type">
44 <method name="with_tdef" c:identifier="foo_object_with_tdef">
49 <parameter name="blah">
50 <type name="GLib.SList">
56 <method name="new_cookie" c:identifier="foo_object_new_cookie">
57 <return-value transfer-ownership="full">
61 <parameter name="target">
66 <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
71 <parameter name="time">
76 <method name="get_name" c:identifier="foo_object_get_name">
81 <method name="dup_name" c:identifier="foo_object_dup_name">
82 <return-value transfer-ownership="full">
86 <method name="handle_glyph" c:identifier="foo_object_handle_glyph">
91 <parameter name="glyph">
96 <property name="string" writable="1" construct="1">
99 <glib:signal name="signal" when="LAST">
100 <return-value transfer-ownership="full">
104 <parameter name="object">
105 <type name="GObject.Object"/>
107 <parameter name="p0">
113 <record name="ObjectClass">
114 <field name="parent_class" offset="0">
115 <type name="GObject.ObjectClass"/>
118 <class name="Subobject" parent="Object" abstract="1" glib:type-name="FooSubobject" glib:get-type="foo_subobject_get_type">
119 <implements name="Interface"/>
120 <field name="parent_instance" offset="0">
121 <type name="GObject.Object"/>
123 <constructor name="new" c:identifier="foo_subobject_new">
124 <return-value transfer-ownership="full">
125 <type name="Subobject"/>
129 <record name="SubobjectClass">
130 <field name="parent_class" offset="0">
131 <type name="GObject.ObjectClass"/>
134 <function name="init" c:identifier="foo_init">
139 <enumeration name="EnumType" glib:type-name="FooEnumType" glib:get-type="foo_enum_type_get_type">
140 <member name="alpha" value="0"/>
141 <member name="beta" value="1"/>
142 <member name="delta" value="2"/>
144 <function name="enum_type_method" c:identifier="foo_enum_type_method">
149 <parameter name="foo_enum">
150 <type name="EnumType"/>
154 <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
156 <type name="EnumType"/>
164 <bitfield name="FlagsType" glib:type-name="FooFlagsType" glib:get-type="foo_flags_type_get_type">
165 <member name="first" value="1"/>
166 <member name="second" value="2"/>
167 <member name="third" value="4"/>
169 <enumeration name="EnumNoType">
170 <member name="un" value="1"/>
171 <member name="deux" value="2"/>
172 <member name="trois" value="3"/>
173 <member name="neuf" value="9"/>
175 <enumeration name="EnumFullname">
176 <member name="one" value="1"/>
177 <member name="two" value="2"/>
178 <member name="three" value="3"/>
180 <record name="Boxed" glib:type-name="FooBoxed" glib:get-type="foo_boxed_get_type">
181 <constructor name="new" c:identifier="foo_boxed_new">
182 <return-value transfer-ownership="full">
186 <method name="method" c:identifier="foo_boxed_method">
192 <record name="DBusData" glib:type-name="FooDBusData" glib:get-type="foo_dbus_data_get_type">
193 <method name="method" c:identifier="foo_dbus_data_method">
199 <callback name="Callback">
201 <type name="boolean"/>
204 <parameter name="foo">
205 <type name="GObject.Object"/>
208 <type name="boolean"/>
210 <parameter name="data">
215 <record name="Struct">
216 <field name="priv" writable="1" offset="0">
217 <type name="StructPrivate"/>
219 <field name="member" writable="1" offset="0">
223 <record name="StructPrivate"/>
224 <record name="Rectangle">
225 <field name="x" writable="1" offset="0">
228 <field name="y" writable="1" offset="0">
231 <field name="width" writable="1" offset="0">
234 <field name="height" writable="1" offset="0">
238 <function name="method_external_references" c:identifier="foo_method_external_references">
243 <parameter name="object">
244 <type name="GObject.Object"/>
247 <type name="EnumType"/>
250 <type name="utility.FlagType"/>
253 <type name="utility.Struct"/>
257 <function name="rectangle_add" c:identifier="foo_rectangle_add">
262 <parameter name="r1" transfer-ownership="full" direction="inout">
263 <type name="Rectangle"/>
265 <parameter name="r2">
266 <type name="Rectangle"/>
270 <function name="rectangle_new" c:identifier="foo_rectangle_new">
271 <return-value transfer-ownership="full">
272 <type name="Rectangle"/>
281 <parameter name="width">
284 <parameter name="height">
289 <record name="EventAny">
290 <field name="send_event" writable="1" offset="0">
294 <record name="EventExpose">
295 <field name="send_event" writable="1" offset="0">
298 <field name="count" writable="1" offset="0">
303 <field name="type" writable="1" offset="0">
306 <field name="any" writable="1" offset="0">
307 <type name="EventAny"/>
309 <field name="expose" writable="1" offset="0">
310 <type name="EventExpose"/>
313 <record name="BRect" glib:type-name="FooBRect" glib:get-type="foo_brect_get_type">
314 <field name="x" writable="1" offset="0">
315 <type name="double"/>
317 <field name="y" writable="1" offset="0">
318 <type name="double"/>
320 <constructor name="new" c:identifier="foo_brect_new">
321 <return-value transfer-ownership="full">
326 <type name="double"/>
329 <type name="double"/>
333 <method name="add" c:identifier="foo_brect_add">
338 <parameter name="b2">
344 <union name="BUnion" type-name="FooBUnion" get-type="foo_bunion_get_type">
345 <field name="type" writable="1" offset="0">
348 <field name="v" writable="1" offset="0">
349 <type name="double"/>
351 <field name="rect" writable="1" offset="0">
354 <constructor name="new" c:identifier="foo_bunion_new">
355 <return-value transfer-ownership="full">
356 <type name="BUnion"/>
359 <method name="get_contained_type" c:identifier="foo_bunion_get_contained_type">
366 <field name="foo" writable="1" offset="0">
370 <function name="test_unsigned_qualifier" c:identifier="foo_test_unsigned_qualifier">
375 <parameter name="unsigned_param">
380 <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
385 <parameter name="unsigned_param">
390 <function name="test_string_array" c:identifier="foo_test_string_array">
395 <parameter name="array">
396 <array zero-terminated="1">
402 <function name="test_string_array_with_g" c:identifier="foo_test_string_array_with_g">
407 <parameter name="array">
408 <array zero-terminated="1">
414 <constant name="SUCCESS_INT" value="4408">