Everything: add a boxed property to TestObj
[gnome.gobject-introspection] / gir / Everything-1.0-expected.gir
1 <?xml version="1.0"?>
2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations.  -->
5 <repository version="1.0"
6             xmlns="http://www.gtk.org/introspection/core/1.0"
7             xmlns:c="http://www.gtk.org/introspection/c/1.0"
8             xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9   <include name="GLib" version="2.0"/>
10   <include name="GObject" version="2.0"/>
11   <package name="gobject-2.0"/>
12   <namespace name="Everything"
13              version="1.0"
14              shared-library="libgirepository-everything-1.0.so.1"
15              c:prefix="Everything">
16     <record name="TestBoxed"
17             c:type="TestBoxed"
18             glib:type-name="TestBoxed"
19             glib:get-type="test_boxed_get_type">
20       <field name="some_int8" writable="1">
21         <type name="int8" c:type="gint8"/>
22       </field>
23       <field name="nested_a" writable="1">
24         <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA"/>
25       </field>
26       <field name="priv" writable="1">
27         <type name="TestBoxedPrivate" c:type="TestBoxedPrivate*"/>
28       </field>
29       <constructor name="new" c:identifier="test_boxed_new">
30         <return-value transfer-ownership="full">
31           <type name="TestBoxed" c:type="TestBoxed*"/>
32         </return-value>
33       </constructor>
34       <method name="copy" c:identifier="test_boxed_copy">
35         <return-value transfer-ownership="full">
36           <type name="TestBoxed" c:type="TestBoxed*"/>
37         </return-value>
38       </method>
39       <method name="equals" c:identifier="test_boxed_equals">
40         <return-value transfer-ownership="none">
41           <type name="boolean" c:type="gboolean"/>
42         </return-value>
43         <parameters>
44           <parameter name="other" transfer-ownership="none">
45             <type name="TestBoxed" c:type="TestBoxed*"/>
46           </parameter>
47         </parameters>
48       </method>
49     </record>
50     <record name="TestBoxedPrivate" c:type="TestBoxedPrivate">
51     </record>
52     <callback name="TestCallback" c:type="TestCallback">
53       <return-value transfer-ownership="none">
54         <type name="int" c:type="int"/>
55       </return-value>
56     </callback>
57     <callback name="TestCallbackUserData" c:type="TestCallbackUserData">
58       <return-value transfer-ownership="none">
59         <type name="int" c:type="int"/>
60       </return-value>
61       <parameters>
62         <parameter name="user_data" transfer-ownership="none" closure="0">
63           <type name="any" c:type="gpointer"/>
64         </parameter>
65       </parameters>
66     </callback>
67     <enumeration name="TestEnum"
68                  glib:type-name="TestEnum"
69                  glib:get-type="test_enum_get_type"
70                  c:type="TestEnum">
71       <member name="value1"
72               value="0"
73               c:identifier="TEST_VALUE1"
74               glib:nick="value1"/>
75       <member name="value2"
76               value="1"
77               c:identifier="TEST_VALUE2"
78               glib:nick="value2"/>
79       <member name="value3"
80               value="42"
81               c:identifier="TEST_VALUE3"
82               glib:nick="value3"/>
83     </enumeration>
84     <bitfield name="TestFlags"
85               glib:type-name="TestFlags"
86               glib:get-type="test_flags_get_type"
87               c:type="TestFlags">
88       <member name="flag1"
89               value="1"
90               c:identifier="TEST_FLAG1"
91               glib:nick="flag1"/>
92       <member name="flag2"
93               value="2"
94               c:identifier="TEST_FLAG2"
95               glib:nick="flag2"/>
96       <member name="flag2"
97               value="4"
98               c:identifier="TEST_FLAG3"
99               glib:nick="flag2"/>
100     </bitfield>
101     <interface name="TestInterface"
102                c:type="EverythingTestInterface"
103                glib:type-name="EverythingTestInterface"
104                glib:get-type="test_interface_get_type"
105                glib:type-struct="TestInterfaceIface">
106     </interface>
107     <record name="TestInterfaceIface"
108             c:type="TestInterfaceIface"
109             glib:is-gtype-struct-for="TestInterface">
110       <field name="base_iface">
111         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
112       </field>
113     </record>
114     <class name="TestObj"
115            c:type="TestObj"
116            parent="GObject.Object"
117            glib:type-name="TestObj"
118            glib:get-type="test_obj_get_type"
119            glib:type-struct="TestObjClass">
120       <constructor name="new_from_file"
121                    c:identifier="test_obj_new_from_file"
122                    throws="1">
123         <return-value transfer-ownership="full">
124           <type name="TestObj" c:type="TestObj*"/>
125         </return-value>
126         <parameters>
127           <parameter name="x" transfer-ownership="none">
128             <type name="utf8" c:type="char*"/>
129           </parameter>
130         </parameters>
131       </constructor>
132       <function name="static_method" c:identifier="test_obj_static_method">
133         <return-value transfer-ownership="none">
134           <type name="double" c:type="double"/>
135         </return-value>
136         <parameters>
137           <parameter name="x" transfer-ownership="none">
138             <type name="int" c:type="int"/>
139           </parameter>
140         </parameters>
141       </function>
142       <virtual-method name="matrix" invoker="do_matrix">
143         <return-value transfer-ownership="none">
144           <type name="int" c:type="int"/>
145         </return-value>
146         <parameters>
147           <parameter name="somestr" transfer-ownership="none">
148             <type name="utf8" c:type="char*"/>
149           </parameter>
150         </parameters>
151       </virtual-method>
152       <method name="set_bare" c:identifier="test_obj_set_bare">
153         <return-value transfer-ownership="none">
154           <type name="none" c:type="void"/>
155         </return-value>
156         <parameters>
157           <parameter name="bare" transfer-ownership="none" allow-none="1">
158             <type name="GObject.Object" c:type="GObject*"/>
159           </parameter>
160         </parameters>
161       </method>
162       <method name="do_matrix"
163               c:identifier="test_obj_do_matrix"
164               doc="This method is virtual.  Notably its name differs from the virtual
165 slot name, which makes it useful for testing bindings handle this
166 case.">
167         <return-value transfer-ownership="none">
168           <type name="int" c:type="int"/>
169         </return-value>
170         <parameters>
171           <parameter name="somestr" transfer-ownership="none">
172             <type name="utf8" c:type="char*"/>
173           </parameter>
174         </parameters>
175       </method>
176       <property name="bare" writable="1">
177         <type name="GObject.Object" c:type="GObject"/>
178       </property>
179       <property name="boxed" writable="1">
180         <type name="TestBoxed" c:type="TestBoxed"/>
181       </property>
182       <field name="parent_instance">
183         <type name="GObject.Object" c:type="GObject"/>
184       </field>
185       <field name="bare">
186         <type name="GObject.Object" c:type="GObject*"/>
187       </field>
188       <field name="boxed">
189         <type name="TestBoxed" c:type="TestBoxed*"/>
190       </field>
191       <glib:signal name="test">
192         <return-value transfer-ownership="full">
193           <type name="none" c:type="void"/>
194         </return-value>
195       </glib:signal>
196       <glib:signal name="test-with-static-scope-arg">
197         <return-value transfer-ownership="full">
198           <type name="none" c:type="void"/>
199         </return-value>
200         <parameters>
201           <parameter name="object" transfer-ownership="none">
202             <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA"/>
203           </parameter>
204         </parameters>
205       </glib:signal>
206     </class>
207     <record name="TestObjClass"
208             c:type="TestObjClass"
209             glib:is-gtype-struct-for="TestObj">
210       <field name="parent_class">
211         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
212       </field>
213       <callback name="matrix" c:type="matrix">
214         <return-value transfer-ownership="none">
215           <type name="int" c:type="int"/>
216         </return-value>
217         <parameters>
218           <parameter name="obj" transfer-ownership="none">
219             <type name="TestObj" c:type="TestObj*"/>
220           </parameter>
221           <parameter name="somestr" transfer-ownership="none">
222             <type name="utf8" c:type="char*"/>
223           </parameter>
224         </parameters>
225       </callback>
226       <field name="test_signal">
227         <type name="uint" c:type="guint"/>
228       </field>
229       <field name="test_signal_with_static_scope_arg">
230         <type name="uint" c:type="guint"/>
231       </field>
232     </record>
233     <record name="TestSimpleBoxedA"
234             c:type="TestSimpleBoxedA"
235             glib:type-name="TestSimpleBoxedA"
236             glib:get-type="test_simple_boxed_a_get_type">
237       <field name="some_int" writable="1">
238         <type name="int" c:type="gint"/>
239       </field>
240       <field name="some_int8" writable="1">
241         <type name="int8" c:type="gint8"/>
242       </field>
243       <field name="some_double" writable="1">
244         <type name="double" c:type="gdouble"/>
245       </field>
246       <field name="some_enum" writable="1">
247         <type name="TestEnum" c:type="TestEnum"/>
248       </field>
249       <method name="copy" c:identifier="test_simple_boxed_a_copy">
250         <return-value transfer-ownership="full">
251           <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA*"/>
252         </return-value>
253       </method>
254       <method name="equals" c:identifier="test_simple_boxed_a_equals">
255         <return-value transfer-ownership="none">
256           <type name="boolean" c:type="gboolean"/>
257         </return-value>
258         <parameters>
259           <parameter name="other_a" transfer-ownership="none">
260             <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA*"/>
261           </parameter>
262         </parameters>
263       </method>
264     </record>
265     <record name="TestSimpleBoxedB"
266             c:type="TestSimpleBoxedB"
267             glib:type-name="TestSimpleBoxedB"
268             glib:get-type="test_simple_boxed_b_get_type">
269       <field name="some_int8" writable="1">
270         <type name="int8" c:type="gint8"/>
271       </field>
272       <field name="nested_a" writable="1">
273         <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA"/>
274       </field>
275       <method name="copy" c:identifier="test_simple_boxed_b_copy">
276         <return-value transfer-ownership="full">
277           <type name="TestSimpleBoxedB" c:type="TestSimpleBoxedB*"/>
278         </return-value>
279       </method>
280     </record>
281     <record name="TestStructA" c:type="TestStructA">
282       <field name="some_int" writable="1">
283         <type name="int" c:type="gint"/>
284       </field>
285       <field name="some_int8" writable="1">
286         <type name="int8" c:type="gint8"/>
287       </field>
288       <field name="some_double" writable="1">
289         <type name="double" c:type="gdouble"/>
290       </field>
291       <field name="some_enum" writable="1">
292         <type name="TestEnum" c:type="TestEnum"/>
293       </field>
294       <method name="clone"
295               c:identifier="test_struct_a_clone"
296               doc="Make a copy of a TestStructA">
297         <return-value transfer-ownership="none">
298           <type name="none" c:type="void"/>
299         </return-value>
300         <parameters>
301           <parameter name="a_out" transfer-ownership="none">
302             <type name="TestStructA" c:type="TestStructA*"/>
303           </parameter>
304         </parameters>
305       </method>
306     </record>
307     <record name="TestStructB" c:type="TestStructB">
308       <field name="some_int8" writable="1">
309         <type name="int8" c:type="gint8"/>
310       </field>
311       <field name="nested_a" writable="1">
312         <type name="TestStructA" c:type="TestStructA"/>
313       </field>
314       <method name="clone"
315               c:identifier="test_struct_b_clone"
316               doc="Make a copy of a TestStructB">
317         <return-value transfer-ownership="none">
318           <type name="none" c:type="void"/>
319         </return-value>
320         <parameters>
321           <parameter name="b_out" transfer-ownership="none">
322             <type name="TestStructB" c:type="TestStructB*"/>
323           </parameter>
324         </parameters>
325       </method>
326     </record>
327     <record name="TestStructC" c:type="_TestStructC">
328       <field name="another_int" writable="1">
329         <type name="int" c:type="gint"/>
330       </field>
331       <field name="obj" writable="1">
332         <type name="GObject.Object" c:type="GObject*"/>
333       </field>
334     </record>
335     <class name="TestWi8021x"
336            c:type="TestWi8021x"
337            parent="GObject.Object"
338            glib:type-name="TestWi8021x"
339            glib:get-type="test_wi_802_1x_get_type"
340            glib:type-struct="TestWi8021xClass">
341       <constructor name="new" c:identifier="test_wi_802_1x_new">
342         <return-value transfer-ownership="full">
343           <type name="TestWi8021x" c:type="TestWi8021x*"/>
344         </return-value>
345       </constructor>
346       <function name="static_method"
347                 c:identifier="test_wi_802_1x_static_method">
348         <return-value transfer-ownership="none">
349           <type name="int" c:type="int"/>
350         </return-value>
351         <parameters>
352           <parameter name="x" transfer-ownership="none">
353             <type name="int" c:type="int"/>
354           </parameter>
355         </parameters>
356       </function>
357       <method name="get_testbool" c:identifier="test_wi_802_1x_get_testbool">
358         <return-value transfer-ownership="none">
359           <type name="boolean" c:type="gboolean"/>
360         </return-value>
361       </method>
362       <method name="set_testbool" c:identifier="test_wi_802_1x_set_testbool">
363         <return-value transfer-ownership="none">
364           <type name="none" c:type="void"/>
365         </return-value>
366         <parameters>
367           <parameter name="v" transfer-ownership="none">
368             <type name="boolean" c:type="gboolean"/>
369           </parameter>
370         </parameters>
371       </method>
372       <property name="testbool" writable="1">
373         <type name="boolean" c:type="gboolean"/>
374       </property>
375       <field name="parent_instance">
376         <type name="GObject.Object" c:type="GObject"/>
377       </field>
378       <field name="testbool">
379         <type name="boolean" c:type="gboolean"/>
380       </field>
381     </class>
382     <record name="TestWi8021xClass"
383             c:type="TestWi8021xClass"
384             glib:is-gtype-struct-for="TestWi8021x">
385       <field name="parent_class">
386         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
387       </field>
388     </record>
389     <function name="test_array_gint16_in" c:identifier="test_array_gint16_in">
390       <return-value transfer-ownership="none">
391         <type name="int" c:type="int"/>
392       </return-value>
393       <parameters>
394         <parameter name="n_ints" transfer-ownership="none">
395           <type name="int" c:type="int"/>
396         </parameter>
397         <parameter name="ints" transfer-ownership="none" doc="List of ints">
398           <array length="0" c:type="gint16*">
399             <type name="int16"/>
400           </array>
401         </parameter>
402       </parameters>
403     </function>
404     <function name="test_array_gint32_in" c:identifier="test_array_gint32_in">
405       <return-value transfer-ownership="none">
406         <type name="int32" c:type="gint32"/>
407       </return-value>
408       <parameters>
409         <parameter name="n_ints" transfer-ownership="none">
410           <type name="int" c:type="int"/>
411         </parameter>
412         <parameter name="ints" transfer-ownership="none" doc="List of ints">
413           <array length="0" c:type="gint32*">
414             <type name="int32"/>
415           </array>
416         </parameter>
417       </parameters>
418     </function>
419     <function name="test_array_gint64_in" c:identifier="test_array_gint64_in">
420       <return-value transfer-ownership="none">
421         <type name="int64" c:type="gint64"/>
422       </return-value>
423       <parameters>
424         <parameter name="n_ints" transfer-ownership="none">
425           <type name="int" c:type="int"/>
426         </parameter>
427         <parameter name="ints" transfer-ownership="none" doc="List of ints">
428           <array length="0" c:type="gint64*">
429             <type name="int64"/>
430           </array>
431         </parameter>
432       </parameters>
433     </function>
434     <function name="test_array_gint8_in" c:identifier="test_array_gint8_in">
435       <return-value transfer-ownership="none">
436         <type name="int" c:type="int"/>
437       </return-value>
438       <parameters>
439         <parameter name="n_ints" transfer-ownership="none">
440           <type name="int" c:type="int"/>
441         </parameter>
442         <parameter name="ints" transfer-ownership="none" doc="List of ints">
443           <array length="0" c:type="gint8*">
444             <type name="int8"/>
445           </array>
446         </parameter>
447       </parameters>
448     </function>
449     <function name="test_array_gtype_in" c:identifier="test_array_gtype_in">
450       <return-value transfer-ownership="full">
451         <type name="utf8" c:type="char*"/>
452       </return-value>
453       <parameters>
454         <parameter name="n_types" transfer-ownership="none">
455           <type name="int" c:type="int"/>
456         </parameter>
457         <parameter name="types" transfer-ownership="none" doc="List of types">
458           <array length="0" c:type="GType*">
459             <type name="GType"/>
460           </array>
461         </parameter>
462       </parameters>
463     </function>
464     <function name="test_array_int_full_out"
465               c:identifier="test_array_int_full_out">
466       <return-value transfer-ownership="full" doc="a new array of integers.">
467         <array length="0" c:type="int*">
468           <type name="int"/>
469         </array>
470       </return-value>
471       <parameters>
472         <parameter name="len" direction="out" transfer-ownership="full">
473           <type name="int" c:type="int*"/>
474         </parameter>
475       </parameters>
476     </function>
477     <function name="test_array_int_in" c:identifier="test_array_int_in">
478       <return-value transfer-ownership="none">
479         <type name="int" c:type="int"/>
480       </return-value>
481       <parameters>
482         <parameter name="n_ints" transfer-ownership="none">
483           <type name="int" c:type="int"/>
484         </parameter>
485         <parameter name="ints" transfer-ownership="none" doc="List of ints">
486           <array length="0" c:type="int*">
487             <type name="int"/>
488           </array>
489         </parameter>
490       </parameters>
491     </function>
492     <function name="test_array_int_in_take"
493               c:identifier="test_array_int_in_take">
494       <return-value transfer-ownership="none">
495         <type name="int" c:type="int"/>
496       </return-value>
497       <parameters>
498         <parameter name="n_ints" transfer-ownership="none">
499           <type name="int" c:type="int"/>
500         </parameter>
501         <parameter name="ints" transfer-ownership="full" doc="List of ints">
502           <array length="0" c:type="int*">
503             <type name="int"/>
504           </array>
505         </parameter>
506       </parameters>
507     </function>
508     <function name="test_array_int_none_out"
509               c:identifier="test_array_int_none_out">
510       <return-value transfer-ownership="none"
511                     doc="a static array of integers.">
512         <array length="0" c:type="int*">
513           <type name="int"/>
514         </array>
515       </return-value>
516       <parameters>
517         <parameter name="len" direction="out" transfer-ownership="full">
518           <type name="int" c:type="int*"/>
519         </parameter>
520       </parameters>
521     </function>
522     <function name="test_boolean" c:identifier="test_boolean">
523       <return-value transfer-ownership="none">
524         <type name="boolean" c:type="gboolean"/>
525       </return-value>
526       <parameters>
527         <parameter name="in" transfer-ownership="none">
528           <type name="boolean" c:type="gboolean"/>
529         </parameter>
530       </parameters>
531     </function>
532     <function name="test_callback" c:identifier="test_callback">
533       <return-value transfer-ownership="none">
534         <type name="int" c:type="int"/>
535       </return-value>
536       <parameters>
537         <parameter name="callback" transfer-ownership="none" scope="call">
538           <type name="TestCallback" c:type="TestCallback"/>
539         </parameter>
540       </parameters>
541     </function>
542     <function name="test_callback_destroy_notify"
543               c:identifier="test_callback_destroy_notify"
544               doc="Notified - callback persists until a DestroyNotify delegate
545 is invoked.">
546       <return-value transfer-ownership="none">
547         <type name="int" c:type="int"/>
548       </return-value>
549       <parameters>
550         <parameter name="callback"
551                    transfer-ownership="none"
552                    scope="notified"
553                    closure="1"
554                    destroy="2">
555           <type name="TestCallbackUserData" c:type="TestCallbackUserData"/>
556         </parameter>
557         <parameter name="user_data" transfer-ownership="none">
558           <type name="any" c:type="gpointer"/>
559         </parameter>
560         <parameter name="notify" transfer-ownership="none">
561           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
562         </parameter>
563       </parameters>
564     </function>
565     <function name="test_callback_infinite"
566               c:identifier="test_callback_infinite"
567               doc="Infinite - callback persists forever.">
568       <return-value transfer-ownership="none">
569         <type name="int" c:type="int"/>
570       </return-value>
571       <parameters>
572         <parameter name="callback"
573                    transfer-ownership="none"
574                    scope="infinite"
575                    closure="1">
576           <type name="TestCallbackUserData" c:type="TestCallbackUserData"/>
577         </parameter>
578         <parameter name="user_data" transfer-ownership="none">
579           <type name="any" c:type="gpointer"/>
580         </parameter>
581       </parameters>
582     </function>
583     <function name="test_callback_thaw_notifications"
584               c:identifier="test_callback_thaw_notifications"
585               doc="Invokes all callbacks installed by #test_callback_destroy_notify(),
586 adding up their return values, and removes them, invoking the
587 corresponding destroy notfications.">
588       <return-value transfer-ownership="none">
589         <type name="int" c:type="int"/>
590       </return-value>
591     </function>
592     <function name="test_callback_user_data"
593               c:identifier="test_callback_user_data"
594               doc="Call - callback parameter persists for the duration of the method
595 call and can be released on return.">
596       <return-value transfer-ownership="none">
597         <type name="int" c:type="int"/>
598       </return-value>
599       <parameters>
600         <parameter name="callback"
601                    transfer-ownership="none"
602                    scope="call"
603                    closure="1">
604           <type name="TestCallbackUserData" c:type="TestCallbackUserData"/>
605         </parameter>
606         <parameter name="user_data" transfer-ownership="none">
607           <type name="any" c:type="gpointer"/>
608         </parameter>
609       </parameters>
610     </function>
611     <function name="test_closure" c:identifier="test_closure">
612       <return-value transfer-ownership="none">
613         <type name="int" c:type="int"/>
614       </return-value>
615       <parameters>
616         <parameter name="closure" transfer-ownership="none">
617           <type name="GObject.Closure" c:type="GClosure*"/>
618         </parameter>
619       </parameters>
620     </function>
621     <function name="test_closure_one_arg" c:identifier="test_closure_one_arg">
622       <return-value transfer-ownership="none">
623         <type name="int" c:type="int"/>
624       </return-value>
625       <parameters>
626         <parameter name="closure" transfer-ownership="none">
627           <type name="GObject.Closure" c:type="GClosure*"/>
628         </parameter>
629         <parameter name="arg" transfer-ownership="none">
630           <type name="int" c:type="int"/>
631         </parameter>
632       </parameters>
633     </function>
634     <function name="test_double" c:identifier="test_double">
635       <return-value transfer-ownership="none">
636         <type name="double" c:type="gdouble"/>
637       </return-value>
638       <parameters>
639         <parameter name="in" transfer-ownership="none">
640           <type name="double" c:type="gdouble"/>
641         </parameter>
642       </parameters>
643     </function>
644     <function name="test_enum_param" c:identifier="test_enum_param">
645       <return-value transfer-ownership="none">
646         <type name="utf8" c:type="gchar*"/>
647       </return-value>
648       <parameters>
649         <parameter name="e" transfer-ownership="none">
650           <type name="TestEnum" c:type="TestEnum"/>
651         </parameter>
652       </parameters>
653     </function>
654     <function name="test_filename_return" c:identifier="test_filename_return">
655       <return-value transfer-ownership="full" doc="list of strings">
656         <type name="GLib.SList" c:type="GSList*">
657           <type name="filename"/>
658         </type>
659       </return-value>
660     </function>
661     <function name="test_float" c:identifier="test_float">
662       <return-value transfer-ownership="none">
663         <type name="float" c:type="gfloat"/>
664       </return-value>
665       <parameters>
666         <parameter name="in" transfer-ownership="none">
667           <type name="float" c:type="gfloat"/>
668         </parameter>
669       </parameters>
670     </function>
671     <function name="test_ghash_container_in"
672               c:identifier="test_ghash_container_in">
673       <return-value transfer-ownership="none">
674         <type name="none" c:type="void"/>
675       </return-value>
676       <parameters>
677         <parameter name="in" transfer-ownership="container">
678           <type name="GLib.HashTable" c:type="GHashTable*">
679             <type name="utf8"/>
680             <type name="utf8"/>
681           </type>
682         </parameter>
683       </parameters>
684     </function>
685     <function name="test_ghash_container_return"
686               c:identifier="test_ghash_container_return">
687       <return-value transfer-ownership="container">
688         <type name="GLib.HashTable" c:type="GHashTable*">
689           <type name="utf8"/>
690           <type name="utf8"/>
691         </type>
692       </return-value>
693     </function>
694     <function name="test_ghash_everything_in"
695               c:identifier="test_ghash_everything_in">
696       <return-value transfer-ownership="none">
697         <type name="none" c:type="void"/>
698       </return-value>
699       <parameters>
700         <parameter name="in" transfer-ownership="full">
701           <type name="GLib.HashTable" c:type="GHashTable*">
702             <type name="utf8"/>
703             <type name="utf8"/>
704           </type>
705         </parameter>
706       </parameters>
707     </function>
708     <function name="test_ghash_everything_return"
709               c:identifier="test_ghash_everything_return">
710       <return-value transfer-ownership="full">
711         <type name="GLib.HashTable" c:type="GHashTable*">
712           <type name="utf8"/>
713           <type name="utf8"/>
714         </type>
715       </return-value>
716     </function>
717     <function name="test_ghash_free" c:identifier="test_ghash_free">
718       <return-value transfer-ownership="none">
719         <type name="none" c:type="void"/>
720       </return-value>
721       <parameters>
722         <parameter name="in" transfer-ownership="full">
723           <type name="GLib.HashTable" c:type="GHashTable*">
724             <type name="utf8"/>
725             <type name="utf8"/>
726           </type>
727         </parameter>
728       </parameters>
729     </function>
730     <function name="test_ghash_nested_everything_return"
731               c:identifier="test_ghash_nested_everything_return"
732               doc="Specify nested parameterized types directly with the (type ) annotation.">
733       <return-value transfer-ownership="full">
734         <type name="GLib.HashTable" c:type="GHashTable*">
735           <type name="utf8"/>
736           <type name="GLib.HashTable">
737             <type name="utf8"/>
738             <type name="utf8"/>
739           </type>
740         </type>
741       </return-value>
742     </function>
743     <function name="test_ghash_nested_everything_return2"
744               c:identifier="test_ghash_nested_everything_return2"
745               doc="element-type annotation.">
746       <return-value transfer-ownership="full">
747         <type name="GLib.HashTable" c:type="GHashTable*">
748           <type name="utf8"/>
749           <type name="GLib.HashTable">
750             <type name="utf8"/>
751             <type name="utf8"/>
752           </type>
753         </type>
754       </return-value>
755     </function>
756     <function name="test_ghash_nothing_in"
757               c:identifier="test_ghash_nothing_in">
758       <return-value transfer-ownership="none">
759         <type name="none" c:type="void"/>
760       </return-value>
761       <parameters>
762         <parameter name="in" transfer-ownership="none">
763           <type name="GLib.HashTable" c:type="GHashTable*">
764             <type name="utf8"/>
765             <type name="utf8"/>
766           </type>
767         </parameter>
768       </parameters>
769     </function>
770     <function name="test_ghash_nothing_in2"
771               c:identifier="test_ghash_nothing_in2">
772       <return-value transfer-ownership="none">
773         <type name="none" c:type="void"/>
774       </return-value>
775       <parameters>
776         <parameter name="in" transfer-ownership="none">
777           <type name="GLib.HashTable" c:type="GHashTable*">
778             <type name="utf8"/>
779             <type name="utf8"/>
780           </type>
781         </parameter>
782       </parameters>
783     </function>
784     <function name="test_ghash_nothing_return"
785               c:identifier="test_ghash_nothing_return">
786       <return-value transfer-ownership="none">
787         <type name="GLib.HashTable" c:type="GHashTable*">
788           <type name="utf8"/>
789           <type name="utf8"/>
790         </type>
791       </return-value>
792     </function>
793     <function name="test_ghash_nothing_return2"
794               c:identifier="test_ghash_nothing_return2">
795       <return-value transfer-ownership="none">
796         <type name="GLib.HashTable" c:type="GHashTable*">
797           <type name="utf8"/>
798           <type name="utf8"/>
799         </type>
800       </return-value>
801     </function>
802     <function name="test_ghash_null_in" c:identifier="test_ghash_null_in">
803       <return-value transfer-ownership="none">
804         <type name="none" c:type="void"/>
805       </return-value>
806       <parameters>
807         <parameter name="in" transfer-ownership="none" allow-none="1">
808           <type name="GLib.HashTable" c:type="GHashTable*">
809             <type name="utf8"/>
810             <type name="utf8"/>
811           </type>
812         </parameter>
813       </parameters>
814     </function>
815     <function name="test_ghash_null_return"
816               c:identifier="test_ghash_null_return">
817       <return-value transfer-ownership="none">
818         <type name="GLib.HashTable" c:type="GHashTable*">
819           <type name="utf8"/>
820           <type name="utf8"/>
821         </type>
822       </return-value>
823     </function>
824     <function name="test_glist_container_in"
825               c:identifier="test_glist_container_in">
826       <return-value transfer-ownership="none">
827         <type name="none" c:type="void"/>
828       </return-value>
829       <parameters>
830         <parameter name="in" transfer-ownership="container">
831           <type name="GLib.List" c:type="GList*">
832             <type name="utf8"/>
833           </type>
834         </parameter>
835       </parameters>
836     </function>
837     <function name="test_glist_container_return"
838               c:identifier="test_glist_container_return">
839       <return-value transfer-ownership="container">
840         <type name="GLib.List" c:type="GList*">
841           <type name="utf8"/>
842         </type>
843       </return-value>
844     </function>
845     <function name="test_glist_everything_in"
846               c:identifier="test_glist_everything_in">
847       <return-value transfer-ownership="none">
848         <type name="none" c:type="void"/>
849       </return-value>
850       <parameters>
851         <parameter name="in" transfer-ownership="full">
852           <type name="GLib.List" c:type="GList*">
853             <type name="utf8"/>
854           </type>
855         </parameter>
856       </parameters>
857     </function>
858     <function name="test_glist_everything_return"
859               c:identifier="test_glist_everything_return">
860       <return-value transfer-ownership="full">
861         <type name="GLib.List" c:type="GList*">
862           <type name="utf8"/>
863         </type>
864       </return-value>
865     </function>
866     <function name="test_glist_free" c:identifier="test_glist_free">
867       <return-value transfer-ownership="none">
868         <type name="none" c:type="void"/>
869       </return-value>
870       <parameters>
871         <parameter name="in" transfer-ownership="full">
872           <type name="GLib.List" c:type="GList*">
873             <type name="utf8"/>
874           </type>
875         </parameter>
876       </parameters>
877     </function>
878     <function name="test_glist_nothing_in"
879               c:identifier="test_glist_nothing_in">
880       <return-value transfer-ownership="none">
881         <type name="none" c:type="void"/>
882       </return-value>
883       <parameters>
884         <parameter name="in" transfer-ownership="none">
885           <type name="GLib.List" c:type="GList*">
886             <type name="utf8"/>
887           </type>
888         </parameter>
889       </parameters>
890     </function>
891     <function name="test_glist_nothing_in2"
892               c:identifier="test_glist_nothing_in2">
893       <return-value transfer-ownership="none">
894         <type name="none" c:type="void"/>
895       </return-value>
896       <parameters>
897         <parameter name="in" transfer-ownership="none">
898           <type name="GLib.List" c:type="GList*">
899             <type name="utf8"/>
900           </type>
901         </parameter>
902       </parameters>
903     </function>
904     <function name="test_glist_nothing_return"
905               c:identifier="test_glist_nothing_return">
906       <return-value transfer-ownership="none">
907         <type name="GLib.List" c:type="GList*">
908           <type name="utf8"/>
909         </type>
910       </return-value>
911     </function>
912     <function name="test_glist_nothing_return2"
913               c:identifier="test_glist_nothing_return2">
914       <return-value transfer-ownership="none">
915         <type name="GLib.List" c:type="GList*">
916           <type name="utf8"/>
917         </type>
918       </return-value>
919     </function>
920     <function name="test_gslist_container_in"
921               c:identifier="test_gslist_container_in">
922       <return-value transfer-ownership="none">
923         <type name="none" c:type="void"/>
924       </return-value>
925       <parameters>
926         <parameter name="in" transfer-ownership="container">
927           <type name="GLib.SList" c:type="GSList*">
928             <type name="utf8"/>
929           </type>
930         </parameter>
931       </parameters>
932     </function>
933     <function name="test_gslist_container_return"
934               c:identifier="test_gslist_container_return">
935       <return-value transfer-ownership="container">
936         <type name="GLib.SList" c:type="GSList*">
937           <type name="utf8"/>
938         </type>
939       </return-value>
940     </function>
941     <function name="test_gslist_everything_in"
942               c:identifier="test_gslist_everything_in">
943       <return-value transfer-ownership="none">
944         <type name="none" c:type="void"/>
945       </return-value>
946       <parameters>
947         <parameter name="in" transfer-ownership="full">
948           <type name="GLib.SList" c:type="GSList*">
949             <type name="utf8"/>
950           </type>
951         </parameter>
952       </parameters>
953     </function>
954     <function name="test_gslist_everything_return"
955               c:identifier="test_gslist_everything_return">
956       <return-value transfer-ownership="full">
957         <type name="GLib.SList" c:type="GSList*">
958           <type name="utf8"/>
959         </type>
960       </return-value>
961     </function>
962     <function name="test_gslist_free" c:identifier="test_gslist_free">
963       <return-value transfer-ownership="none">
964         <type name="none" c:type="void"/>
965       </return-value>
966       <parameters>
967         <parameter name="in" transfer-ownership="full">
968           <type name="GLib.SList" c:type="GSList*">
969             <type name="utf8"/>
970           </type>
971         </parameter>
972       </parameters>
973     </function>
974     <function name="test_gslist_nothing_in"
975               c:identifier="test_gslist_nothing_in">
976       <return-value transfer-ownership="none">
977         <type name="none" c:type="void"/>
978       </return-value>
979       <parameters>
980         <parameter name="in" transfer-ownership="none">
981           <type name="GLib.SList" c:type="GSList*">
982             <type name="utf8"/>
983           </type>
984         </parameter>
985       </parameters>
986     </function>
987     <function name="test_gslist_nothing_in2"
988               c:identifier="test_gslist_nothing_in2">
989       <return-value transfer-ownership="none">
990         <type name="none" c:type="void"/>
991       </return-value>
992       <parameters>
993         <parameter name="in" transfer-ownership="none">
994           <type name="GLib.SList" c:type="GSList*">
995             <type name="utf8"/>
996           </type>
997         </parameter>
998       </parameters>
999     </function>
1000     <function name="test_gslist_nothing_return"
1001               c:identifier="test_gslist_nothing_return">
1002       <return-value transfer-ownership="none">
1003         <type name="GLib.SList" c:type="GSList*">
1004           <type name="utf8"/>
1005         </type>
1006       </return-value>
1007     </function>
1008     <function name="test_gslist_nothing_return2"
1009               c:identifier="test_gslist_nothing_return2">
1010       <return-value transfer-ownership="none">
1011         <type name="GLib.SList" c:type="GSList*">
1012           <type name="utf8"/>
1013         </type>
1014       </return-value>
1015     </function>
1016     <function name="test_gtype" c:identifier="test_gtype">
1017       <return-value transfer-ownership="none">
1018         <type name="GType" c:type="GType"/>
1019       </return-value>
1020       <parameters>
1021         <parameter name="in" transfer-ownership="none">
1022           <type name="GType" c:type="GType"/>
1023         </parameter>
1024       </parameters>
1025     </function>
1026     <function name="test_int" c:identifier="test_int">
1027       <return-value transfer-ownership="none">
1028         <type name="int" c:type="gint"/>
1029       </return-value>
1030       <parameters>
1031         <parameter name="in" transfer-ownership="none">
1032           <type name="int" c:type="gint"/>
1033         </parameter>
1034       </parameters>
1035     </function>
1036     <function name="test_int16" c:identifier="test_int16">
1037       <return-value transfer-ownership="none">
1038         <type name="int16" c:type="gint16"/>
1039       </return-value>
1040       <parameters>
1041         <parameter name="in" transfer-ownership="none">
1042           <type name="int16" c:type="gint16"/>
1043         </parameter>
1044       </parameters>
1045     </function>
1046     <function name="test_int32" c:identifier="test_int32">
1047       <return-value transfer-ownership="none">
1048         <type name="int32" c:type="gint32"/>
1049       </return-value>
1050       <parameters>
1051         <parameter name="in" transfer-ownership="none">
1052           <type name="int32" c:type="gint32"/>
1053         </parameter>
1054       </parameters>
1055     </function>
1056     <function name="test_int64" c:identifier="test_int64">
1057       <return-value transfer-ownership="none">
1058         <type name="int64" c:type="gint64"/>
1059       </return-value>
1060       <parameters>
1061         <parameter name="in" transfer-ownership="none">
1062           <type name="int64" c:type="gint64"/>
1063         </parameter>
1064       </parameters>
1065     </function>
1066     <function name="test_int8" c:identifier="test_int8">
1067       <return-value transfer-ownership="none">
1068         <type name="int8" c:type="gint8"/>
1069       </return-value>
1070       <parameters>
1071         <parameter name="in" transfer-ownership="none">
1072           <type name="int8" c:type="gint8"/>
1073         </parameter>
1074       </parameters>
1075     </function>
1076     <function name="test_int_value_arg" c:identifier="test_int_value_arg">
1077       <return-value transfer-ownership="none">
1078         <type name="int" c:type="int"/>
1079       </return-value>
1080       <parameters>
1081         <parameter name="v" transfer-ownership="none">
1082           <type name="GObject.Value" c:type="GValue*"/>
1083         </parameter>
1084       </parameters>
1085     </function>
1086     <function name="test_long" c:identifier="test_long">
1087       <return-value transfer-ownership="none">
1088         <type name="long" c:type="glong"/>
1089       </return-value>
1090       <parameters>
1091         <parameter name="in" transfer-ownership="none">
1092           <type name="long" c:type="glong"/>
1093         </parameter>
1094       </parameters>
1095     </function>
1096     <function name="test_simple_boxed_a_const_return"
1097               c:identifier="test_simple_boxed_a_const_return">
1098       <return-value transfer-ownership="none">
1099         <type name="TestSimpleBoxedA" c:type="TestSimpleBoxedA*"/>
1100       </return-value>
1101     </function>
1102     <function name="test_size" c:identifier="test_size">
1103       <return-value transfer-ownership="none">
1104         <type name="size_t" c:type="gsize"/>
1105       </return-value>
1106       <parameters>
1107         <parameter name="in" transfer-ownership="none">
1108           <type name="size_t" c:type="gsize"/>
1109         </parameter>
1110       </parameters>
1111     </function>
1112     <function name="test_ssize" c:identifier="test_ssize">
1113       <return-value transfer-ownership="none">
1114         <type name="ssize_t" c:type="gssize"/>
1115       </return-value>
1116       <parameters>
1117         <parameter name="in" transfer-ownership="none">
1118           <type name="ssize_t" c:type="gssize"/>
1119         </parameter>
1120       </parameters>
1121     </function>
1122     <function name="test_strv_in" c:identifier="test_strv_in">
1123       <return-value transfer-ownership="none">
1124         <type name="boolean" c:type="gboolean"/>
1125       </return-value>
1126       <parameters>
1127         <parameter name="arr" transfer-ownership="none">
1128           <array c:type="char**">
1129             <type name="utf8"/>
1130           </array>
1131         </parameter>
1132       </parameters>
1133     </function>
1134     <function name="test_strv_in_container"
1135               c:identifier="test_strv_in_container">
1136       <return-value transfer-ownership="none">
1137         <type name="boolean" c:type="gboolean"/>
1138       </return-value>
1139       <parameters>
1140         <parameter name="arr" transfer-ownership="container">
1141           <array c:type="char**">
1142             <type name="utf8"/>
1143           </array>
1144         </parameter>
1145       </parameters>
1146     </function>
1147     <function name="test_strv_out"
1148               c:identifier="test_strv_out"
1149               doc="No annotations here.  We want the default to Do The Right Thing.">
1150       <return-value transfer-ownership="full">
1151         <array c:type="char**">
1152           <type name="utf8"/>
1153         </array>
1154       </return-value>
1155     </function>
1156     <function name="test_strv_out_c"
1157               c:identifier="test_strv_out_c"
1158               doc="No annotations here.  We want the default to Do The Right Thing.">
1159       <return-value transfer-ownership="full">
1160         <array c:type="char**">
1161           <type name="utf8"/>
1162         </array>
1163       </return-value>
1164     </function>
1165     <function name="test_strv_out_container"
1166               c:identifier="test_strv_out_container">
1167       <return-value transfer-ownership="container">
1168         <array c:type="char**">
1169           <type name="utf8"/>
1170         </array>
1171       </return-value>
1172     </function>
1173     <function name="test_strv_outarg" c:identifier="test_strv_outarg">
1174       <return-value transfer-ownership="none">
1175         <type name="none" c:type="void"/>
1176       </return-value>
1177       <parameters>
1178         <parameter name="retp" direction="out" transfer-ownership="container">
1179           <array c:type="char***">
1180             <type name="utf8"/>
1181           </array>
1182         </parameter>
1183       </parameters>
1184     </function>
1185     <function name="test_timet" c:identifier="test_timet">
1186       <return-value transfer-ownership="none">
1187         <type name="time_t" c:type="time_t"/>
1188       </return-value>
1189       <parameters>
1190         <parameter name="in" transfer-ownership="none">
1191           <type name="time_t" c:type="time_t"/>
1192         </parameter>
1193       </parameters>
1194     </function>
1195     <function name="test_uint" c:identifier="test_uint">
1196       <return-value transfer-ownership="none">
1197         <type name="uint" c:type="guint"/>
1198       </return-value>
1199       <parameters>
1200         <parameter name="in" transfer-ownership="none">
1201           <type name="uint" c:type="guint"/>
1202         </parameter>
1203       </parameters>
1204     </function>
1205     <function name="test_uint16" c:identifier="test_uint16">
1206       <return-value transfer-ownership="none">
1207         <type name="uint16" c:type="guint16"/>
1208       </return-value>
1209       <parameters>
1210         <parameter name="in" transfer-ownership="none">
1211           <type name="uint16" c:type="guint16"/>
1212         </parameter>
1213       </parameters>
1214     </function>
1215     <function name="test_uint32" c:identifier="test_uint32">
1216       <return-value transfer-ownership="none">
1217         <type name="uint32" c:type="guint32"/>
1218       </return-value>
1219       <parameters>
1220         <parameter name="in" transfer-ownership="none">
1221           <type name="uint32" c:type="guint32"/>
1222         </parameter>
1223       </parameters>
1224     </function>
1225     <function name="test_uint64" c:identifier="test_uint64">
1226       <return-value transfer-ownership="none">
1227         <type name="uint64" c:type="guint64"/>
1228       </return-value>
1229       <parameters>
1230         <parameter name="in" transfer-ownership="none">
1231           <type name="uint64" c:type="guint64"/>
1232         </parameter>
1233       </parameters>
1234     </function>
1235     <function name="test_uint8" c:identifier="test_uint8">
1236       <return-value transfer-ownership="none">
1237         <type name="uint8" c:type="guint8"/>
1238       </return-value>
1239       <parameters>
1240         <parameter name="in" transfer-ownership="none">
1241           <type name="uint8" c:type="guint8"/>
1242         </parameter>
1243       </parameters>
1244     </function>
1245     <function name="test_ulong" c:identifier="test_ulong">
1246       <return-value transfer-ownership="none">
1247         <type name="ulong" c:type="gulong"/>
1248       </return-value>
1249       <parameters>
1250         <parameter name="in" transfer-ownership="none">
1251           <type name="ulong" c:type="gulong"/>
1252         </parameter>
1253       </parameters>
1254     </function>
1255     <function name="test_utf8_const_in" c:identifier="test_utf8_const_in">
1256       <return-value transfer-ownership="none">
1257         <type name="none" c:type="void"/>
1258       </return-value>
1259       <parameters>
1260         <parameter name="in" transfer-ownership="none">
1261           <type name="utf8" c:type="char*"/>
1262         </parameter>
1263       </parameters>
1264     </function>
1265     <function name="test_utf8_const_return"
1266               c:identifier="test_utf8_const_return">
1267       <return-value transfer-ownership="none">
1268         <type name="utf8" c:type="char*"/>
1269       </return-value>
1270     </function>
1271     <function name="test_utf8_inout" c:identifier="test_utf8_inout">
1272       <return-value transfer-ownership="none">
1273         <type name="none" c:type="void"/>
1274       </return-value>
1275       <parameters>
1276         <parameter name="inout" direction="inout" transfer-ownership="full">
1277           <type name="utf8" c:type="char**"/>
1278         </parameter>
1279       </parameters>
1280     </function>
1281     <function name="test_utf8_nonconst_in"
1282               c:identifier="test_utf8_nonconst_in">
1283       <return-value transfer-ownership="none">
1284         <type name="none" c:type="void"/>
1285       </return-value>
1286       <parameters>
1287         <parameter name="in" transfer-ownership="full">
1288           <type name="utf8" c:type="char*"/>
1289         </parameter>
1290       </parameters>
1291     </function>
1292     <function name="test_utf8_nonconst_return"
1293               c:identifier="test_utf8_nonconst_return">
1294       <return-value transfer-ownership="full">
1295         <type name="utf8" c:type="char*"/>
1296       </return-value>
1297     </function>
1298     <function name="test_utf8_out" c:identifier="test_utf8_out">
1299       <return-value transfer-ownership="none">
1300         <type name="none" c:type="void"/>
1301       </return-value>
1302       <parameters>
1303         <parameter name="out" direction="out" transfer-ownership="full">
1304           <type name="utf8" c:type="char**"/>
1305         </parameter>
1306       </parameters>
1307     </function>
1308     <function name="test_value_return" c:identifier="test_value_return">
1309       <return-value transfer-ownership="none"
1310                     doc="the int wrapped in a GValue.">
1311         <type name="GObject.Value" c:type="GValue*"/>
1312       </return-value>
1313       <parameters>
1314         <parameter name="i" transfer-ownership="none">
1315           <type name="int" c:type="int"/>
1316         </parameter>
1317       </parameters>
1318     </function>
1319   </namespace>
1320 </repository>