xmlns:c="http://www.gtk.org/introspection/c/1.0"
xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
<include name="utility" version="1.0"/>
+ <include name="Gio" version="2.0"/>
<include name="GObject" version="2.0"/>
<include name="GLib" version="2.0"/>
- <namespace name="foo" version="1.0" shared-library="foo">
+ <namespace name="foo" version="1.0" shared-library="libfoo.so" c:prefix="foo">
+ <enumeration name="ASingle">
+ <member name="some_single_enum" value="0"/>
+ </enumeration>
+ <enumeration name="AddressType">
+ <member name="invalid" value="0"/>
+ <member name="ipv4" value="1"/>
+ <member name="ipv6" value="2"/>
+ </enumeration>
<record name="BRect" glib:type-name="FooBRect" glib:get-type="foo_brect_get_type">
<field name="x" writable="1">
<type name="double"/>
</return-value>
</method>
</record>
- <class name="Buffer" parent="GObject.Object" glib:type-struct="BufferClass" glib:type-name="FooBuffer" glib:get-type="foo_buffer_get_type">
+ <class name="Buffer" parent="Object" glib:type-struct="BufferClass" glib:type-name="FooBuffer" glib:get-type="foo_buffer_get_type">
<implements name="Interface"/>
<method name="some_method" c:identifier="foo_buffer_some_method">
<return-value transfer-ownership="none">
<field name="parent_iface">
<type name="GObject.TypeInterface"/>
</field>
+ <field name="do_foo">
+ <callback name="do_foo">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="self" transfer-ownership="none">
+ <type name="Interface"/>
+ </parameter>
+ <parameter name="x" transfer-ownership="none">
+ <type name="int"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
</record>
<class name="Object" parent="GObject.Object" glib:type-struct="ObjectClass" glib:type-name="FooObject" glib:get-type="foo_object_get_type">
<implements name="Interface"/>
<type name="int"/>
</return-value>
</function>
+ <function name="get_default" c:identifier="foo_object_get_default">
+ <return-value transfer-ownership="full">
+ <type name="Subobject"/>
+ </return-value>
+ </function>
<method name="external_type" c:identifier="foo_object_external_type">
<return-value transfer-ownership="full">
<type name="utility.Object"/>
<field name="parent_class">
<type name="GObject.ObjectClass"/>
</field>
+ <field name="virtual_method">
+ <callback name="virtual_method">
+ <return-value transfer-ownership="none">
+ <type name="boolean"/>
+ </return-value>
+ <parameters>
+ <parameter name="object" transfer-ownership="none">
+ <type name="Object"/>
+ </parameter>
+ <parameter name="first_param" transfer-ownership="none">
+ <type name="int"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
+ <field name="read_fn">
+ <callback name="read_fn">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="object" transfer-ownership="none">
+ <type name="Object"/>
+ </parameter>
+ <parameter name="offset" transfer-ownership="none">
+ <type name="int"/>
+ </parameter>
+ <parameter name="length" transfer-ownership="none">
+ <type name="int"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
+ <field name="_reserved">
+ <array fixed-size="4">
+ <type name="GObject.Callback"/>
+ </array>
+ </field>
</record>
<constant name="PIE_IS_TASTY" value="3.141590">
<type name="double"/>
<constant name="SUCCESS_INT" value="4408">
<type name="int"/>
</constant>
+ <enumeration name="StackLayer">
+ <member name="desktop" value="0"/>
+ <member name="bottom" value="1"/>
+ <member name="normal" value="2"/>
+ <member name="top" value="4"/>
+ <member name="dock" value="4"/>
+ <member name="fullscreen" value="5"/>
+ <member name="focused_window" value="6"/>
+ <member name="override_redirect" value="7"/>
+ <member name="last" value="8"/>
+ </enumeration>
<record name="Struct">
<field name="priv" writable="1">
<type name="StructPrivate"/>
<field name="parent_iface">
<type name="GObject.TypeInterface"/>
</field>
+ <field name="destroy_event">
+ <callback name="destroy_event">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="self" transfer-ownership="none">
+ <type name="SubInterface"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
+ <field name="do_bar">
+ <callback name="do_bar">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="self" transfer-ownership="none">
+ <type name="SubInterface"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
</record>
<class name="Subobject" parent="Object" glib:type-struct="SubobjectClass" abstract="1" glib:type-name="FooSubobject" glib:get-type="foo_subobject_get_type">
<implements name="Interface"/>
<type name="utility.Struct"/>
</field>
</record>
+ <function name="async_ready_callback" c:identifier="foo_async_ready_callback">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="cancellable" transfer-ownership="none" allow-none="1">
+ <type name="Gio.Cancellable"/>
+ </parameter>
+ <parameter name="callback" transfer-ownership="none" scope="async" closure="2">
+ <type name="Gio.AsyncReadyCallback"/>
+ </parameter>
+ <parameter name="user_data" transfer-ownership="none">
+ <type name="any"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="destroy_notify_callback" c:identifier="foo_destroy_notify_callback">
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="callback" transfer-ownership="none" scope="notified" closure="1" destroy="2">
+ <type name="Callback"/>
+ </parameter>
+ <parameter name="data" transfer-ownership="none">
+ <type name="any"/>
+ </parameter>
+ <parameter name="destroy" transfer-ownership="none" scope="call">
+ <type name="GLib.DestroyNotify"/>
+ </parameter>
+ </parameters>
+ </function>
<function name="enum_type_method" c:identifier="foo_enum_type_method">
<return-value transfer-ownership="none">
<type name="int"/>