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">
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">
19 <type name="GObject.Object"/>
21 <constructor name="new" c:identifier="foo_object_new">
22 <return-value transfer-ownership="full">
26 <method name="external_type" c:identifier="foo_object_external_type">
27 <return-value transfer-ownership="full">
28 <type name="utility.Object"/>
31 <method name="various" c:identifier="foo_object_various">
32 <return-value transfer-ownership="none">
36 <parameter name="data" transfer-ownership="none">
39 <parameter name="some_type" transfer-ownership="none">
44 <method name="with_tdef" c:identifier="foo_object_with_tdef">
45 <return-value transfer-ownership="none">
49 <parameter name="blah" transfer-ownership="none">
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" transfer-ownership="none">
66 <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
67 <return-value transfer-ownership="none">
71 <parameter name="time" transfer-ownership="none">
76 <method name="get_name" c:identifier="foo_object_get_name">
77 <return-value transfer-ownership="none">
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">
87 <return-value transfer-ownership="none">
91 <parameter name="glyph" transfer-ownership="none">
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" transfer-ownership="none">
105 <type name="GObject.Object"/>
107 <parameter name="p0" transfer-ownership="none">
113 <record name="ObjectClass">
114 <field name="parent_class">
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">
121 <type name="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">
131 <type name="ObjectClass"/>
134 <function name="init" c:identifier="foo_init">
135 <return-value transfer-ownership="none">
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">
145 <return-value transfer-ownership="none">
149 <parameter name="foo_enum" transfer-ownership="none">
150 <type name="EnumType"/>
154 <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
155 <return-value transfer-ownership="full">
156 <type name="EnumType"/>
159 <parameter name="x" transfer-ownership="none">
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">
187 <return-value transfer-ownership="none">
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">
194 <return-value transfer-ownership="none">
199 <callback name="Callback">
200 <return-value transfer-ownership="none">
201 <type name="boolean"/>
204 <parameter name="foo" transfer-ownership="none">
205 <type name="Object"/>
207 <parameter name="b" transfer-ownership="none">
208 <type name="boolean"/>
210 <parameter name="data" transfer-ownership="none">
215 <record name="Struct">
216 <field name="priv" writable="1">
217 <type name="StructPrivate"/>
219 <field name="member" writable="1">
223 <record name="StructPrivate"/>
224 <record name="Rectangle">
225 <field name="x" writable="1">
228 <field name="y" writable="1">
231 <field name="width" writable="1">
234 <field name="height" writable="1">
238 <function name="method_external_references" c:identifier="foo_method_external_references">
239 <return-value transfer-ownership="none">
243 <parameter name="object" transfer-ownership="none">
244 <type name="utility.Object"/>
246 <parameter name="e" transfer-ownership="none">
247 <type name="utility.EnumType"/>
249 <parameter name="f" transfer-ownership="none">
250 <type name="utility.FlagType"/>
252 <parameter name="s" transfer-ownership="none">
253 <type name="utility.Struct"/>
257 <function name="rectangle_add" c:identifier="foo_rectangle_add">
258 <return-value transfer-ownership="none">
262 <parameter name="r1" transfer-ownership="full" direction="inout">
263 <type name="Rectangle"/>
265 <parameter name="r2" transfer-ownership="none">
266 <type name="Rectangle"/>
270 <function name="rectangle_new" c:identifier="foo_rectangle_new">
271 <return-value transfer-ownership="full">
272 <type name="Rectangle"/>
275 <parameter name="x" transfer-ownership="none">
278 <parameter name="y" transfer-ownership="none">
281 <parameter name="width" transfer-ownership="none">
284 <parameter name="height" transfer-ownership="none">
289 <record name="EventAny">
290 <field name="send_event" writable="1">
294 <record name="EventExpose">
295 <field name="send_event" writable="1">
298 <field name="count" writable="1">
303 <field name="type" writable="1">
306 <field name="any" writable="1">
307 <type name="EventAny"/>
309 <field name="expose" writable="1">
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">
315 <type name="double"/>
317 <field name="y" writable="1">
318 <type name="double"/>
320 <constructor name="new" c:identifier="foo_brect_new">
321 <return-value transfer-ownership="full">
325 <parameter name="x" transfer-ownership="none">
326 <type name="double"/>
328 <parameter name="y" transfer-ownership="none">
329 <type name="double"/>
333 <method name="add" c:identifier="foo_brect_add">
334 <return-value transfer-ownership="none">
338 <parameter name="b2" transfer-ownership="none">
344 <union name="BUnion" type-name="FooBUnion" get-type="foo_bunion_get_type">
345 <field name="type" writable="1">
348 <field name="v" writable="1">
349 <type name="double"/>
351 <field name="rect" writable="1">
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">
360 <return-value transfer-ownership="none">
366 <field name="foo" writable="1">
370 <record name="UtilityStruct">
371 <field name="bar" writable="1">
372 <type name="utility.Struct"/>
375 <record name="ThingWithArray">
376 <field name="x" writable="1">
379 <field name="y" writable="1">
382 <field name="lines" writable="1">
383 <array fixed-size="80">
387 <field name="data" writable="1">
391 <function name="test_unsigned_qualifier" c:identifier="foo_test_unsigned_qualifier">
392 <return-value transfer-ownership="none">
396 <parameter name="unsigned_param" transfer-ownership="none">
401 <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
402 <return-value transfer-ownership="none">
406 <parameter name="unsigned_param" transfer-ownership="none">
411 <function name="test_string_array" c:identifier="foo_test_string_array">
412 <return-value transfer-ownership="none">
416 <parameter name="array" transfer-ownership="none">
417 <array zero-terminated="1">
423 <function name="test_string_array_with_g" c:identifier="foo_test_string_array_with_g">
424 <return-value transfer-ownership="none">
428 <parameter name="array" transfer-ownership="none">
429 <array zero-terminated="1">
435 <constant name="SUCCESS_INT" value="4408">