Bug 559705 – Missing association between static methods and classes
[gnome.gobject-introspection] / tests / scanner / foo-1.0-expected.tgir
1 <?xml version="1.0"?>
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"/>
14       </field>
15     </record>
16     <interface name="SubInterface" glib:type-name="FooSubInterface" glib:get-type="foo_sub_interface_get_type">
17       <prerequisite name="Interface"/>
18       <method name="do_bar" c:identifier="foo_sub_interface_do_bar">
19         <return-value transfer-ownership="none">
20           <type name="none"/>
21         </return-value>
22       </method>
23     </interface>
24     <record name="SubInterfaceIface">
25       <field name="parent_iface">
26         <type name="GObject.TypeInterface"/>
27       </field>
28     </record>
29     <class name="Object" parent="GObject.Object" glib:type-name="FooObject" glib:get-type="foo_object_get_type">
30       <implements name="Interface"/>
31       <field name="parent_instance">
32         <type name="GObject.Object"/>
33       </field>
34       <constructor name="new" c:identifier="foo_object_new">
35         <return-value transfer-ownership="full">
36           <type name="Object"/>
37         </return-value>
38       </constructor>
39       <function name="static_meth" c:identifier="foo_object_static_meth">
40         <return-value transfer-ownership="none">
41           <type name="int"/>
42         </return-value>
43       </function>
44       <method name="external_type" c:identifier="foo_object_external_type">
45         <return-value transfer-ownership="full">
46           <type name="utility.Object"/>
47         </return-value>
48       </method>
49       <method name="various" c:identifier="foo_object_various">
50         <return-value transfer-ownership="none">
51           <type name="none"/>
52         </return-value>
53         <parameters>
54           <parameter name="data" transfer-ownership="none">
55             <type name="any"/>
56           </parameter>
57           <parameter name="some_type" transfer-ownership="none">
58             <type name="GType"/>
59           </parameter>
60         </parameters>
61       </method>
62       <method name="with_tdef" c:identifier="foo_object_with_tdef">
63         <return-value transfer-ownership="none">
64           <type name="none"/>
65         </return-value>
66         <parameters>
67           <parameter name="blah" transfer-ownership="none">
68             <type name="GLib.SList">
69               <type name="any"/>
70             </type>
71           </parameter>
72         </parameters>
73       </method>
74       <method name="new_cookie" c:identifier="foo_object_new_cookie">
75         <return-value transfer-ownership="full">
76           <type name="any"/>
77         </return-value>
78         <parameters>
79           <parameter name="target" transfer-ownership="none">
80             <type name="utf8"/>
81           </parameter>
82         </parameters>
83       </method>
84       <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
85         <return-value transfer-ownership="none">
86           <type name="none"/>
87         </return-value>
88         <parameters>
89           <parameter name="time" transfer-ownership="none">
90             <type name="time_t"/>
91           </parameter>
92         </parameters>
93       </method>
94       <method name="get_name" c:identifier="foo_object_get_name">
95         <return-value transfer-ownership="none">
96           <type name="utf8"/>
97         </return-value>
98       </method>
99       <method name="dup_name" c:identifier="foo_object_dup_name">
100         <return-value transfer-ownership="full">
101           <type name="utf8"/>
102         </return-value>
103       </method>
104       <method name="handle_glyph" c:identifier="foo_object_handle_glyph">
105         <return-value transfer-ownership="none">
106           <type name="none"/>
107         </return-value>
108         <parameters>
109           <parameter name="glyph" transfer-ownership="none">
110             <type name="uint32"/>
111           </parameter>
112         </parameters>
113       </method>
114       <property name="string" writable="1" construct="1">
115         <type name="utf8"/>
116       </property>
117       <glib:signal name="signal" when="LAST">
118         <return-value transfer-ownership="full">
119           <type name="utf8"/>
120         </return-value>
121         <parameters>
122           <parameter name="object" transfer-ownership="none">
123             <type name="GObject.Object"/>
124           </parameter>
125           <parameter name="p0" transfer-ownership="none">
126             <type name="any"/>
127           </parameter>
128         </parameters>
129       </glib:signal>
130     </class>
131     <record name="ObjectClass">
132       <field name="parent_class">
133         <type name="GObject.ObjectClass"/>
134       </field>
135     </record>
136     <class name="Subobject" parent="Object" abstract="1" glib:type-name="FooSubobject" glib:get-type="foo_subobject_get_type">
137       <implements name="Interface"/>
138       <field name="parent_instance">
139         <type name="Object"/>
140       </field>
141       <constructor name="new" c:identifier="foo_subobject_new">
142         <return-value transfer-ownership="full">
143           <type name="Subobject"/>
144         </return-value>
145       </constructor>
146     </class>
147     <record name="SubobjectClass">
148       <field name="parent_class">
149         <type name="ObjectClass"/>
150       </field>
151     </record>
152     <function name="init" c:identifier="foo_init">
153       <return-value transfer-ownership="none">
154         <type name="int"/>
155       </return-value>
156     </function>
157     <enumeration name="EnumType" glib:type-name="FooEnumType" glib:get-type="foo_enum_type_get_type">
158       <member name="alpha" value="0"/>
159       <member name="beta" value="1"/>
160       <member name="delta" value="2"/>
161     </enumeration>
162     <function name="enum_type_method" c:identifier="foo_enum_type_method">
163       <return-value transfer-ownership="none">
164         <type name="int"/>
165       </return-value>
166       <parameters>
167         <parameter name="foo_enum" transfer-ownership="none">
168           <type name="EnumType"/>
169         </parameter>
170       </parameters>
171     </function>
172     <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
173       <return-value transfer-ownership="full">
174         <type name="EnumType"/>
175       </return-value>
176       <parameters>
177         <parameter name="x" transfer-ownership="none">
178           <type name="int"/>
179         </parameter>
180       </parameters>
181     </function>
182     <bitfield name="FlagsType" glib:type-name="FooFlagsType" glib:get-type="foo_flags_type_get_type">
183       <member name="first" value="1"/>
184       <member name="second" value="2"/>
185       <member name="third" value="4"/>
186     </bitfield>
187     <enumeration name="EnumNoType">
188       <member name="un" value="1"/>
189       <member name="deux" value="2"/>
190       <member name="trois" value="3"/>
191       <member name="neuf" value="9"/>
192     </enumeration>
193     <enumeration name="EnumFullname">
194       <member name="one" value="1"/>
195       <member name="two" value="2"/>
196       <member name="three" value="3"/>
197     </enumeration>
198     <record name="Boxed" glib:type-name="FooBoxed" glib:get-type="foo_boxed_get_type">
199       <constructor name="new" c:identifier="foo_boxed_new">
200         <return-value transfer-ownership="full">
201           <type name="Boxed"/>
202         </return-value>
203       </constructor>
204       <method name="method" c:identifier="foo_boxed_method">
205         <return-value transfer-ownership="none">
206           <type name="none"/>
207         </return-value>
208       </method>
209     </record>
210     <record name="DBusData" glib:type-name="FooDBusData" glib:get-type="foo_dbus_data_get_type">
211       <method name="method" c:identifier="foo_dbus_data_method">
212         <return-value transfer-ownership="none">
213           <type name="none"/>
214         </return-value>
215       </method>
216     </record>
217     <callback name="Callback">
218       <return-value transfer-ownership="none">
219         <type name="boolean"/>
220       </return-value>
221       <parameters>
222         <parameter name="foo" transfer-ownership="none">
223           <type name="Object"/>
224         </parameter>
225         <parameter name="b" transfer-ownership="none">
226           <type name="boolean"/>
227         </parameter>
228         <parameter name="data" transfer-ownership="none">
229           <type name="any"/>
230         </parameter>
231       </parameters>
232     </callback>
233     <record name="Struct">
234       <field name="priv" writable="1">
235         <type name="StructPrivate"/>
236       </field>
237       <field name="member" writable="1">
238         <type name="int"/>
239       </field>
240     </record>
241     <record name="StructPrivate"/>
242     <record name="Rectangle">
243       <field name="x" writable="1">
244         <type name="int"/>
245       </field>
246       <field name="y" writable="1">
247         <type name="int"/>
248       </field>
249       <field name="width" writable="1">
250         <type name="int"/>
251       </field>
252       <field name="height" writable="1">
253         <type name="int"/>
254       </field>
255     </record>
256     <function name="method_external_references" c:identifier="foo_method_external_references">
257       <return-value transfer-ownership="none">
258         <type name="none"/>
259       </return-value>
260       <parameters>
261         <parameter name="object" transfer-ownership="none">
262           <type name="utility.Object"/>
263         </parameter>
264         <parameter name="e" transfer-ownership="none">
265           <type name="utility.EnumType"/>
266         </parameter>
267         <parameter name="f" transfer-ownership="none">
268           <type name="utility.FlagType"/>
269         </parameter>
270         <parameter name="s" transfer-ownership="none">
271           <type name="utility.Struct"/>
272         </parameter>
273       </parameters>
274     </function>
275     <function name="rectangle_add" c:identifier="foo_rectangle_add">
276       <return-value transfer-ownership="none">
277         <type name="none"/>
278       </return-value>
279       <parameters>
280         <parameter name="r1" transfer-ownership="full" direction="inout">
281           <type name="Rectangle"/>
282         </parameter>
283         <parameter name="r2" transfer-ownership="none">
284           <type name="Rectangle"/>
285         </parameter>
286       </parameters>
287     </function>
288     <function name="rectangle_new" c:identifier="foo_rectangle_new">
289       <return-value transfer-ownership="full">
290         <type name="Rectangle"/>
291       </return-value>
292       <parameters>
293         <parameter name="x" transfer-ownership="none">
294           <type name="int"/>
295         </parameter>
296         <parameter name="y" transfer-ownership="none">
297           <type name="int"/>
298         </parameter>
299         <parameter name="width" transfer-ownership="none">
300           <type name="int"/>
301         </parameter>
302         <parameter name="height" transfer-ownership="none">
303           <type name="int"/>
304         </parameter>
305       </parameters>
306     </function>
307     <record name="EventAny">
308       <field name="send_event" writable="1">
309         <type name="int8"/>
310       </field>
311     </record>
312     <record name="EventExpose">
313       <field name="send_event" writable="1">
314         <type name="int8"/>
315       </field>
316       <field name="count" writable="1">
317         <type name="int"/>
318       </field>
319     </record>
320     <union name="Event">
321       <field name="type" writable="1">
322         <type name="int"/>
323       </field>
324       <field name="any" writable="1">
325         <type name="EventAny"/>
326       </field>
327       <field name="expose" writable="1">
328         <type name="EventExpose"/>
329       </field>
330     </union>
331     <record name="BRect" glib:type-name="FooBRect" glib:get-type="foo_brect_get_type">
332       <field name="x" writable="1">
333         <type name="double"/>
334       </field>
335       <field name="y" writable="1">
336         <type name="double"/>
337       </field>
338       <constructor name="new" c:identifier="foo_brect_new">
339         <return-value transfer-ownership="full">
340           <type name="BRect"/>
341         </return-value>
342         <parameters>
343           <parameter name="x" transfer-ownership="none">
344             <type name="double"/>
345           </parameter>
346           <parameter name="y" transfer-ownership="none">
347             <type name="double"/>
348           </parameter>
349         </parameters>
350       </constructor>
351       <method name="add" c:identifier="foo_brect_add">
352         <return-value transfer-ownership="none">
353           <type name="none"/>
354         </return-value>
355         <parameters>
356           <parameter name="b2" transfer-ownership="none">
357             <type name="BRect"/>
358           </parameter>
359         </parameters>
360       </method>
361     </record>
362     <union name="BUnion" type-name="FooBUnion" get-type="foo_bunion_get_type">
363       <field name="type" writable="1">
364         <type name="int"/>
365       </field>
366       <field name="v" writable="1">
367         <type name="double"/>
368       </field>
369       <field name="rect" writable="1">
370         <type name="BRect"/>
371       </field>
372       <constructor name="new" c:identifier="foo_bunion_new">
373         <return-value transfer-ownership="full">
374           <type name="BUnion"/>
375         </return-value>
376       </constructor>
377       <method name="get_contained_type" c:identifier="foo_bunion_get_contained_type">
378         <return-value transfer-ownership="none">
379           <type name="int"/>
380         </return-value>
381       </method>
382     </union>
383     <union name="Union">
384       <field name="foo" writable="1">
385         <type name="int"/>
386       </field>
387     </union>
388     <record name="UtilityStruct">
389       <field name="bar" writable="1">
390         <type name="utility.Struct"/>
391       </field>
392     </record>
393     <record name="ThingWithArray">
394       <field name="x" writable="1">
395         <type name="int"/>
396       </field>
397       <field name="y" writable="1">
398         <type name="int"/>
399       </field>
400       <field name="lines" writable="1">
401         <array fixed-size="80">
402           <type name="int8"/>
403         </array>
404       </field>
405       <field name="data" writable="1">
406         <type name="any"/>
407       </field>
408     </record>
409     <function name="test_unsigned_qualifier" c:identifier="foo_test_unsigned_qualifier">
410       <return-value transfer-ownership="none">
411         <type name="none"/>
412       </return-value>
413       <parameters>
414         <parameter name="unsigned_param" transfer-ownership="none">
415           <type name="uint"/>
416         </parameter>
417       </parameters>
418     </function>
419     <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
420       <return-value transfer-ownership="none">
421         <type name="none"/>
422       </return-value>
423       <parameters>
424         <parameter name="unsigned_param" transfer-ownership="none">
425           <type name="uint"/>
426         </parameter>
427       </parameters>
428     </function>
429     <function name="test_string_array" c:identifier="foo_test_string_array">
430       <return-value transfer-ownership="none">
431         <type name="none"/>
432       </return-value>
433       <parameters>
434         <parameter name="array" transfer-ownership="none">
435           <array zero-terminated="1">
436             <type name="utf8"/>
437           </array>
438         </parameter>
439       </parameters>
440     </function>
441     <function name="test_string_array_with_g" c:identifier="foo_test_string_array_with_g">
442       <return-value transfer-ownership="none">
443         <type name="none"/>
444       </return-value>
445       <parameters>
446         <parameter name="array" transfer-ownership="none">
447           <array zero-terminated="1">
448             <type name="utf8"/>
449           </array>
450         </parameter>
451       </parameters>
452     </function>
453     <constant name="SUCCESS_INT" value="4408">
454       <type name="int"/>
455     </constant>
456   </namespace>
457 </repository>