diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2020-06-10 14:01:05 +0200 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2020-06-10 14:01:05 +0200 |
commit | bfaa68db5e8bc408a137b1db669eabae2b3a85f3 (patch) | |
tree | 69b744c94604509fe410ab4863d52dc76344b48e /tests/girwriter | |
parent | ad7396627702726b2fb67478b76af223ac236157 (diff) | |
download | vala-bfaa68db5e8bc408a137b1db669eabae2b3a85f3.tar.gz |
girwriter: Append symbol-attributes to callback field rather than its type
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1006
Diffstat (limited to 'tests/girwriter')
-rw-r--r-- | tests/girwriter/GirTest-1.0.gir-expected | 264 | ||||
-rw-r--r-- | tests/girwriter/girtest.vala | 10 | ||||
-rw-r--r-- | tests/girwriter/girtest.vapi-expected | 6 |
3 files changed, 280 insertions, 0 deletions
diff --git a/tests/girwriter/GirTest-1.0.gir-expected b/tests/girwriter/GirTest-1.0.gir-expected index 0db2fc636..d244862d0 100644 --- a/tests/girwriter/GirTest-1.0.gir-expected +++ b/tests/girwriter/GirTest-1.0.gir-expected @@ -938,6 +938,84 @@ <type name="none"/> </return-value> </virtual-method> + <method name="method_valist" c:identifier="gir_test_abstract_object_test_method_valist" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </method> + <virtual-method name="method_valist" invoker="method_valist" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </virtual-method> + <method name="skipped_coroutine_method" c:identifier="gir_test_abstract_object_test_skipped_coroutine_method" introspectable="0"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </method> + <method name="skipped_coroutine_method_finish" c:identifier="gir_test_abstract_object_test_skipped_coroutine_method_finish" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </method> + <virtual-method name="skipped_coroutine_method" invoker="skipped_coroutine_method" introspectable="0"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </virtual-method> + <virtual-method name="skipped_coroutine_method_finish" invoker="skipped_coroutine_method_finish" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </virtual-method> </class> <record name="AbstractObjectTestClass" c:type="GirTestAbstractObjectTestClass" glib:is-gtype-struct-for="AbstractObjectTest"> <field name="parent_class" readable="0" private="1"> @@ -1000,6 +1078,60 @@ </parameters> </callback> </field> + <field name="method_valist" introspectable="0"> + <callback name="method_valist" c:type="method_valist"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.AbstractObjectTest" c:type="GirTestAbstractObjectTest*"/> + </parameter> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </callback> + </field> + <field name="skipped_coroutine_method" introspectable="0"> + <callback name="skipped_coroutine_method" c:type="skipped_coroutine_method"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.AbstractObjectTest" c:type="GirTestAbstractObjectTest*"/> + </parameter> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + </field> + <field name="skipped_coroutine_method_finish" introspectable="0"> + <callback name="skipped_coroutine_method_finish" c:type="skipped_coroutine_method_finish"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.AbstractObjectTest" c:type="GirTestAbstractObjectTest*"/> + </parameter> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </callback> + </field> </record> <record name="AbstractObjectTestPrivate" c:type="GirTestAbstractObjectTestPrivate" disguised="1"/> <class name="ImplementionTest" c:type="GirTestImplementionTest" glib:type-name="GirTestImplementionTest" glib:get-type="gir_test_implemention_test_get_type" glib:type-struct="ImplementionTestClass" parent="GObject.Object"> @@ -1332,6 +1464,84 @@ </parameter> </parameters> </virtual-method> + <method name="method_valist" c:identifier="gir_test_interface_test_method_valist" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </method> + <virtual-method name="method_valist" invoker="method_valist" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </virtual-method> + <method name="skipped_coroutine_method" c:identifier="gir_test_interface_test_skipped_coroutine_method" introspectable="0"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </method> + <method name="skipped_coroutine_method_finish" c:identifier="gir_test_interface_test_skipped_coroutine_method_finish" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </method> + <virtual-method name="skipped_coroutine_method" invoker="skipped_coroutine_method" introspectable="0"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </virtual-method> + <virtual-method name="skipped_coroutine_method_finish" invoker="skipped_coroutine_method_finish" introspectable="0"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </virtual-method> <property name="property" writable="1" construct="1"> <type name="gint" c:type="gint"/> </property> @@ -1418,6 +1628,60 @@ </parameters> </callback> </field> + <field name="method_valist" introspectable="0"> + <callback name="method_valist" c:type="method_valist"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.InterfaceTest" c:type="GirTestInterfaceTest*"/> + </parameter> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="vargs" transfer-ownership="none"> + <type name="va_list" c:type="va_list"/> + </parameter> + </parameters> + </callback> + </field> + <field name="skipped_coroutine_method" introspectable="0"> + <callback name="skipped_coroutine_method" c:type="skipped_coroutine_method"> + <return-value transfer-ownership="none"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.InterfaceTest" c:type="GirTestInterfaceTest*"/> + </parameter> + <parameter name="param" transfer-ownership="none"> + <type name="gint" c:type="gint"/> + </parameter> + <parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3" scope="async"> + <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/> + </parameter> + <parameter name="_callback__target" transfer-ownership="none" allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + </field> + <field name="skipped_coroutine_method_finish" introspectable="0"> + <callback name="skipped_coroutine_method_finish" c:type="skipped_coroutine_method_finish"> + <return-value transfer-ownership="full"> + <type name="none"/> + </return-value> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="GirTest.InterfaceTest" c:type="GirTestInterfaceTest*"/> + </parameter> + <parameter name="_res_" transfer-ownership="none"> + <type name="Gio.AsyncResult" c:type="GAsyncResult*"/> + </parameter> + </parameters> + </callback> + </field> <field name="get_property"> <callback name="get_property" c:type="get_property"> <return-value transfer-ownership="none"> diff --git a/tests/girwriter/girtest.vala b/tests/girwriter/girtest.vala index e9b3d2ae1..23daab3d9 100644 --- a/tests/girwriter/girtest.vala +++ b/tests/girwriter/girtest.vala @@ -71,6 +71,11 @@ namespace GirTest { } public virtual async void coroutine_async () { } + public virtual void method_valist (int param, va_list vargs) { + } + [GIR (visible = false)] + public virtual async void skipped_coroutine_method (int param) { + } } [GIR (visible = false)] @@ -268,6 +273,11 @@ namespace GirTest { public abstract void method_int8_out (out int8 param); public abstract void method_throw () throws ErrorTest; + + public abstract void method_valist (int param, va_list vargs); + + [GIR (visible = false)] + public abstract async void skipped_coroutine_method (int param); } public interface PrerequisiteTest : InterfaceTest { diff --git a/tests/girwriter/girtest.vapi-expected b/tests/girwriter/girtest.vapi-expected index f92e00d05..16d5de559 100644 --- a/tests/girwriter/girtest.vapi-expected +++ b/tests/girwriter/girtest.vapi-expected @@ -7,6 +7,9 @@ namespace GirTest { public abstract void method_int8_inout (ref int8 param); public abstract void method_int8_out (out int8 param); public abstract void method_throw () throws GirTest.ErrorTest; + public abstract void method_valist (int param, va_list vargs); + [GIR (visible = false)] + public abstract async void skipped_coroutine_method (int param); } [CCode (cheader_filename = "girtest.h")] [Compact] @@ -110,6 +113,9 @@ namespace GirTest { public interface InterfaceTest : GLib.Object { public virtual async void coroutine_async (); public virtual void int8_in (int8 param); + public virtual void method_valist (int param, va_list vargs); + [GIR (visible = false)] + public virtual async void skipped_coroutine_method (int param); public abstract int property { get; set construct; } } [CCode (cheader_filename = "girtest.h")] |